From 2464548977f4720bc8fceeb5d999c1a3852c2d10 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期四, 21 四月 2022 19:38:30 +0800
Subject: [PATCH] 签到与任务

---
 app/src/main/java/com/yeshi/makemoney/app/dao/user/UserExtraInfoDao.java |   63 ++++++++++++++++++++++++-------
 1 files changed, 49 insertions(+), 14 deletions(-)

diff --git a/app/src/main/java/com/yeshi/makemoney/app/dao/user/UserExtraInfoDao.java b/app/src/main/java/com/yeshi/makemoney/app/dao/user/UserExtraInfoDao.java
index ff589a9..76633bf 100644
--- a/app/src/main/java/com/yeshi/makemoney/app/dao/user/UserExtraInfoDao.java
+++ b/app/src/main/java/com/yeshi/makemoney/app/dao/user/UserExtraInfoDao.java
@@ -1,39 +1,74 @@
 package com.yeshi.makemoney.app.dao.user;
 
+import com.yeshi.makemoney.app.entity.user.UserExtraInfo;
+import org.springframework.data.domain.Sort;
 import org.springframework.data.mongodb.core.query.Criteria;
 import org.springframework.data.mongodb.core.query.Query;
 import org.springframework.data.mongodb.core.query.Update;
-import org.springframework.data.domain.Sort;
 import org.springframework.stereotype.Repository;
-
-import java.util.List;
-import com.yeshi.makemoney.app.entity.user.UserExtraInfo;
-import java.util.Date;
 import org.yeshi.utils.mongo.MongodbBaseDao;
-import java.lang.String;
-import java.lang.Integer;
+
 import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
 
 
 @Repository
-public class UserExtraInfoDao extends MongodbBaseDao<UserExtraInfo>{
+public class UserExtraInfoDao extends MongodbBaseDao<UserExtraInfo> {
 
-  public void updateSelective(UserExtraInfo bean) {
+    public void updateSelective(UserExtraInfo bean) {
         Query query = new Query();
-        Update update=new Update();
+        Update update = new Update();
         query.addCriteria(Criteria.where("id").is(bean.getId()));
-        if(bean.getInviteCode() != null) {
+        if (bean.getInviteCode() != null) {
             update.set("inviteCode", bean.getInviteCode());
         }
-        if(bean.getUnReadMsgCount() != null) {
+        if (bean.getUnReadMsgCount() != null) {
             update.set("unReadMsgCount", bean.getUnReadMsgCount());
         }
-        if(bean.getCreateTime() != null) {
+        if (bean.getCreateTime() != null) {
             update.set("createTime", bean.getCreateTime());
         }
         update.set("updateTime", new Date());
         update(query, update);
-  }
+    }
+
+
+    public List<UserExtraInfo> list(DaoQuery daoQuery) {
+        Query query = getQuery(daoQuery);
+        if (daoQuery.sortList != null && daoQuery.sortList.size() > 0) {
+            query.with(Sort.by(daoQuery.sortList));
+        }
+        query.skip(daoQuery.start);
+        query.limit(daoQuery.count);
+        return findList(query);
+    }
+
+    public long count(DaoQuery daoQuery) {
+        Query query = getQuery(daoQuery);
+        return count(query);
+    }
+
+    private Query getQuery(DaoQuery daoQuery) {
+        List<Criteria> andList = new ArrayList<>();
+        if (daoQuery.inviteCode != null) {
+            andList.add(Criteria.where("inviteCode").is(daoQuery.inviteCode));
+        }
+        Query query = new Query();
+        Criteria[] ands = new Criteria[andList.size()];
+        andList.toArray(ands);
+        if (ands.length > 0) {
+            query.addCriteria(new Criteria().andOperator(ands));
+        }
+        return query;
+    }
+
+    public static class DaoQuery {
+        public String inviteCode;
+        public int start;
+        public int count;
+        public List<Sort.Order> sortList;
+    }
 
 
 }

--
Gitblit v1.8.0