From b3da9f82b7740d39742fef1a81a56c22fe1c8b9c Mon Sep 17 00:00:00 2001
From: yujian <yujian@163.com>
Date: 星期一, 08 六月 2020 17:27:02 +0800
Subject: [PATCH] 券后价调整

---
 fanli/src/main/java/com/yeshi/fanli/dao/user/cloud/UserCloudSendRecordDao.java |   57 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 57 insertions(+), 0 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 3b1a4fc..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,7 +1,9 @@
 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;
@@ -10,6 +12,7 @@
 
 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> {
@@ -47,4 +50,58 @@
 		
 		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