From 271ae63c20fcbe28d29c47f1881138ff6551a2a1 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期三, 10 六月 2020 19:26:26 +0800 Subject: [PATCH] 唯品会订单bug修复,APP端佣金比例展示错误bug修复 --- fanli/src/main/java/com/yeshi/fanli/dao/user/cloud/UserCloudSendRecordDao.java | 81 +++++++++++++++++++++++++++++++++++++++- 1 files changed, 79 insertions(+), 2 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/dao/user/cloud/UserCloudSendRecordDao.java b/fanli/src/main/java/com/yeshi/fanli/dao/user/cloud/UserCloudSendRecordDao.java index 0de5f4e..a0bbd4e 100644 --- a/fanli/src/main/java/com/yeshi/fanli/dao/user/cloud/UserCloudSendRecordDao.java +++ b/fanli/src/main/java/com/yeshi/fanli/dao/user/cloud/UserCloudSendRecordDao.java @@ -1,13 +1,18 @@ package com.yeshi.fanli.dao.user.cloud; +import java.util.ArrayList; +import java.util.Date; import java.util.List; +import java.util.regex.Pattern; +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.stereotype.Repository; import com.yeshi.fanli.dao.MongodbBaseDao; import com.yeshi.fanli.entity.bus.user.cloud.UserCloudSendRecord; +import com.yeshi.fanli.util.StringUtil; @Repository public class UserCloudSendRecordDao extends MongodbBaseDao<UserCloudSendRecord> { @@ -19,12 +24,84 @@ * @param sendOrigin * @return */ - public List<UserCloudSendRecord> listByUidAndSendId(Long uid, String sendId, String sendOrigin){ + public List<UserCloudSendRecord> listByUidAndSendId(Long uid, String sendId){ Query query = new Query(); query.addCriteria(Criteria.where("uid").is(uid)); query.addCriteria(Criteria.where("sendId").is(sendId)); - query.addCriteria(Criteria.where("sendOrigin").is(sendOrigin)); + query.addCriteria(Criteria.where("sendOrigin").is(UserCloudSendRecord.ORIGIN_EVALUATE)); return findList(query); } + + /** + * 鏌ヨ宸插彂閫乮d + * @param uid + * @param sendId + * @param sendOrigin + * @return + */ + public List<UserCloudSendRecord> getLastByUid(Long uid, Date lastTime){ + Query query = new Query(); + query.addCriteria(Criteria.where("uid").is(uid)); + query.addCriteria(Criteria.where("sendWay").is(UserCloudSendRecord.SEND_WAY_AUTO)); + query.addCriteria(Criteria.where("sendOrigin").is(UserCloudSendRecord.ORIGIN_EVALUATE)); + query.addCriteria(Criteria.where("sendTime").gt(lastTime)); + query.with(new Sort(Sort.Direction.ASC,"sendTime")); + + return findList(query); + } + + + /** + * 鏌ヨ + * @param start + * @param count + * @param key + * @param sendOrigin + * @return + */ + public List<UserCloudSendRecord> query(int start, int count, String key, Integer sendOrigin){ + List<Criteria> list = new ArrayList<Criteria>(); + if (sendOrigin != null) + list.add(Criteria.where("sendOrigin").is(sendOrigin)); + + if (!StringUtil.isNullOrEmpty(key)) { + list.add(new Criteria().orOperator( Criteria.where("uid") + .regex(Pattern.compile("^.*" + key + ".*$", + Pattern.CASE_INSENSITIVE)))); + } + + Query query = new Query(); + if (list.size() > 0) { + Criteria[] cas = new Criteria[list.size()]; + for (int i = 0; i < list.size(); i++) + cas[i] = list.get(i); + query.addCriteria(new Criteria().andOperator(cas)); + } + query.with(new Sort(Sort.Direction.DESC,"sendTime")); + query.skip(start).limit(count); + return findList(query); + } + + + public long count(String key, Integer sendOrigin){ + List<Criteria> list = new ArrayList<Criteria>(); + if (sendOrigin != null) + list.add(Criteria.where("sendOrigin").is(sendOrigin)); + + if (!StringUtil.isNullOrEmpty(key)) { + list.add(new Criteria().orOperator( Criteria.where("uid") + .regex(Pattern.compile("^.*" + key + ".*$", + Pattern.CASE_INSENSITIVE)))); + } + + Query query = new Query(); + if (list.size() > 0) { + Criteria[] cas = new Criteria[list.size()]; + for (int i = 0; i < list.size(); i++) + cas[i] = list.get(i); + query.addCriteria(new Criteria().andOperator(cas)); + } + return count(query); + } } -- Gitblit v1.8.0