From bd885c7015446c6c0495d3299ef64068a4c9b30e Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期三, 16 十月 2024 15:00:34 +0800 Subject: [PATCH] CMQ改造为rabbitmq --- service-push/src/main/java/com/ks/push/dao/BPushTaskDao.java | 72 +++++++++++++++++++++++++++++++----- 1 files changed, 62 insertions(+), 10 deletions(-) diff --git a/service-push/src/main/java/com/ks/push/dao/BPushTaskDao.java b/service-push/src/main/java/com/ks/push/dao/BPushTaskDao.java index 10b63f7..fdb5591 100644 --- a/service-push/src/main/java/com/ks/push/dao/BPushTaskDao.java +++ b/service-push/src/main/java/com/ks/push/dao/BPushTaskDao.java @@ -2,39 +2,91 @@ import com.ks.push.pojo.DO.BPushTask; import com.ks.lib.common.dao.MongodbBaseDao; +import com.ks.push.pojo.Query.BPushTaskQuery; +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.stereotype.Repository; +import java.util.ArrayList; import java.util.Date; +import java.util.List; @Repository -public class BPushTaskDao extends MongodbBaseDao<BPushTask>{ +public class BPushTaskDao extends MongodbBaseDao<BPushTask> { - public void updateSelective(BPushTask bean) { + public void updateSelective(BPushTask bean) { Query query = new Query(); - Update update=new Update(); + Update update = new Update(); query.addCriteria(Criteria.where("id").is(bean.getId())); - if(bean.getAppCode() != null) { + if (bean.getAppCode() != null) { update.set("appCode", bean.getAppCode()); } - if(bean.getState() != null) { + if (bean.getState() != null) { update.set("state", bean.getState()); } - if(bean.getStateDesc() != null) { + if (bean.getStateDesc() != null) { update.set("stateDesc", bean.getStateDesc()); } - if(bean.getFilter() != null) { + if (bean.getFilter() != null) { update.set("filter", bean.getFilter()); } - if(bean.getMessage() != null) { + if (bean.getMessage() != null) { update.set("message", bean.getMessage()); } - if(bean.getCreateTime() != null) { + if (bean.getCreateTime() != null) { update.set("createTime", bean.getCreateTime()); } update.set("updateTime", new Date()); update(query, update); - } + } + + private Query getQuery(BPushTaskQuery daoQuery) { + List<Criteria> andList = new ArrayList<>(); + if (daoQuery.state != null) { + andList.add(Criteria.where("state").is(daoQuery.state)); + } + + if (daoQuery.appCode != null) { + andList.add(Criteria.where("appCode").is(daoQuery.appCode)); + } + + if (daoQuery.messageTitle != null) { + andList.add(Criteria.where("message.title").regex(daoQuery.messageTitle)); + } + + if (daoQuery.minStartPushTime != null) { + andList.add(Criteria.where("filter.startPushTime").gte(daoQuery.minStartPushTime)); + } + + if (daoQuery.maxStartPushTime != null) { + andList.add(Criteria.where("filter.startPushTime").lt(daoQuery.maxStartPushTime)); + } + + + Query query = new Query(); + if (andList.size() > 0) { + Criteria[] ands = new Criteria[andList.size()]; + andList.toArray(ands); + query.addCriteria(new Criteria().andOperator(ands)); + } + return query; + } + + + public List<BPushTask> list(BPushTaskQuery daoQuery, int start, int count) { + Query query = getQuery(daoQuery); + query.skip(start); + query.limit(count); + if (daoQuery.sortList != null) { + query.with(Sort.by(daoQuery.sortList)); + } + return findList(query); + } + + public long count(BPushTaskQuery daoQuery) { + Query query = getQuery(daoQuery); + return count(query); + } } -- Gitblit v1.8.0