From 1faf3ab0ba6c17eee48e68e8d0077ea61f45d75d Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期二, 12 五月 2020 20:19:36 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/div' into div

---
 fanli/src/main/java/com/yeshi/fanli/controller/client/v1/UserInfoController.java             |   15 +
 /dev/null                                                                                    |   32 ----
 fanli/src/main/java/com/yeshi/fanli/dao/user/invite/TeamDailyRecordDao.java                  |  119 +++++++++++++---
 fanli/src/main/java/com/yeshi/fanli/dao/order/OrderMoneyDailyCountDao.java                   |    2 
 fanli/src/main/java/com/yeshi/fanli/service/impl/user/invite/TeamDailyRecordServiceImpl.java |   61 +++-----
 fanli/src/main/java/com/yeshi/fanli/controller/client/v2/InviteControllerV2.java             |   84 +++++++++--
 fanli/src/main/java/com/yeshi/fanli/entity/bus/user/invite/TeamDailyRecord.java              |    4 
 fanli/src/main/java/com/yeshi/fanli/service/inter/user/invite/TeamDailyRecordService.java    |   58 ++++---
 8 files changed, 225 insertions(+), 150 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/client/v1/UserInfoController.java b/fanli/src/main/java/com/yeshi/fanli/controller/client/v1/UserInfoController.java
index 0997f10..3be498e 100644
--- a/fanli/src/main/java/com/yeshi/fanli/controller/client/v1/UserInfoController.java
+++ b/fanli/src/main/java/com/yeshi/fanli/controller/client/v1/UserInfoController.java
@@ -1878,21 +1878,28 @@
 	 */
 	@RequestMapping(value = "setextrainfo", method = RequestMethod.POST)
 	public void setExtraInfo(AcceptData acceptData, long uid, long inviteId, String memoName, PrintWriter out) {
-		List<ThreeSale> listThreeSale = threeSaleSerivce.listbyIdAndBossId(inviteId, uid, null);
-		if (listThreeSale == null || listThreeSale.size() == 0) {
+		ThreeSale threeSale = threeSaleSerivce.selectByPrimaryKey(inviteId);
+		if (threeSale == null) {
 			out.print(JsonUtil.loadFalseResult("璇ヨ褰曚笉瀛樺湪"));
 			return;
 		}
 
-		UserInfo worker = listThreeSale.get(0).getWorker();
+		UserInfo worker = threeSale.getWorker();
 		if (worker == null) {
 			out.print(JsonUtil.loadFalseResult("璇ヨ褰曚笉瀛樺湪"));
 			return;
 		}
-
+		
 		ThreeSaleExtraInfo extraInfo = threeSaleExtraInfoSerivce.getbyBossIdAndWorkerId(uid, worker.getId());
 		if (extraInfo == null) {
 			extraInfo = new ThreeSaleExtraInfo();
+			Long bossUid = threeSale.getBoss().getId();
+			if (uid == bossUid) {
+				extraInfo.setType(1); // 鐩存帴
+			} else {
+				extraInfo.setType(2); // 闂存帴
+			}
+			
 			extraInfo.setWorker(worker);
 			extraInfo.setNickname(memoName);
 			extraInfo.setCreateTime(new Date());
diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/InviteControllerV2.java b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/InviteControllerV2.java
index acdc267..ff5e5ab 100644
--- a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/InviteControllerV2.java
+++ b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/InviteControllerV2.java
@@ -32,7 +32,7 @@
 import com.yeshi.fanli.entity.bus.user.UserInviteValidNum;
 import com.yeshi.fanli.entity.bus.user.UserInviteValidRecord;
 import com.yeshi.fanli.entity.bus.user.WeiXinUser;
-import com.yeshi.fanli.entity.bus.user.vip.TeamDailyRecord;
+import com.yeshi.fanli.entity.bus.user.invite.TeamDailyRecord;
 import com.yeshi.fanli.entity.bus.user.vip.TeamUserLevelStatistic;
 import com.yeshi.fanli.entity.bus.user.vip.TearcherInfo;
 import com.yeshi.fanli.entity.bus.user.vip.UserLevelEnum;
@@ -995,28 +995,72 @@
 				highVIP.put("total", statistic.getHighFirstCount() + statistic.getHighSecondCount());
 				superVIP.put("total", statistic.getSuperFirstCount() + statistic.getSuperSecondCount());
 			}
-			// 缁熻杈句汉
-			long darenToday = threeSaleSerivce.countFirstTeamByDate(uid, 1)	+ threeSaleSerivce.countSecondTeamByDate(uid, 1);
-			long darenMonth = threeSaleSerivce.countFirstTeamByDate(uid, 2)	+ threeSaleSerivce.countSecondTeamByDate(uid, 2);
+			
+
+			int darenToday = 0;
+			int highVIPToday = 0;
+			int superVIPToday = 0;
+			String createId = teamDailyRecordService.createId(uid, new Date());
+			TeamDailyRecord record = teamDailyRecordService.getById(createId);
+			if (record != null) {
+				if (record.getFirstDaRen() != null) 
+					darenToday += record.getFirstDaRen();
+				if (record.getSecondDaRen() != null)
+					darenToday += record.getSecondDaRen();			
+				if (record.getFirstHighVIP() != null)
+					highVIPToday += record.getFirstHighVIP();
+				if (record.getSecondHighVIP() != null)
+					highVIPToday += record.getSecondHighVIP();
+				if (record.getFirstSuperVIP() != null)
+					superVIPToday += record.getFirstSuperVIP();
+				if (record.getSecondSuperVIP() != null)
+					superVIPToday += record.getSecondSuperVIP();
+			}
+			
+			
+			// 鑾峰彇褰撴湀绗竴澶╁拰鏈�鍚庝竴澶� 
+			Calendar cale = Calendar.getInstance();
+	        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");  
+	        String firstday, lastday;  
+	        // 鑾峰彇鍓嶆湀鐨勭涓�澶�  
+	        cale = Calendar.getInstance();  
+	        cale.add(Calendar.MONTH, 0);  
+	        cale.set(Calendar.DAY_OF_MONTH, 1);  
+	        firstday = format.format(cale.getTime());  
+	        // 鑾峰彇鍓嶆湀鐨勬渶鍚庝竴澶�  
+	        cale = Calendar.getInstance();  
+	        cale.add(Calendar.MONTH, 1);  
+	        cale.set(Calendar.DAY_OF_MONTH, 0);  
+	        lastday = format.format(cale.getTime());  
+			
+	        int darenMonth = 0;
+			int highVIPMonth = 0;
+			int superVIPMonth = 0;
+			Date date = new Date();
+			Date minTime = TimeUtil.parseYYYYMMDD(firstday);
+			Date maxTime = TimeUtil.parseYYYYMMDD_HHMMSS(lastday + " 23:59:59");
+			List<TeamDailyRecord> listMonth = teamDailyRecordService.sumGroupByYearMonth(uid, minTime, maxTime);
+			if (listMonth != null && listMonth.size() > 0) {
+				TeamDailyRecord teamRecord = listMonth.get(0);
+				if (teamRecord.getFirstDaRen() != null) 
+					darenMonth += teamRecord.getFirstDaRen();
+				if (teamRecord.getSecondDaRen() != null)
+					darenMonth += teamRecord.getSecondDaRen();			
+				if (teamRecord.getFirstHighVIP() != null)
+					highVIPMonth += teamRecord.getFirstHighVIP();
+				if (teamRecord.getSecondHighVIP() != null)
+					highVIPMonth += teamRecord.getSecondHighVIP();
+				if (teamRecord.getFirstSuperVIP() != null)
+					superVIPMonth += teamRecord.getFirstSuperVIP();
+				if (teamRecord.getSecondSuperVIP() != null)
+					superVIPMonth += teamRecord.getSecondSuperVIP();
+			}
+			// 杈句汉
 			daren.put("today", darenToday);
 			daren.put("month", darenMonth);
-
-			SimpleDateFormat sd = new SimpleDateFormat("yyyy-MM-dd");
-			String today = sd.format(new Date());
-			// 褰撴湀1鍙�
-			Calendar calendar1 = Calendar.getInstance();
-			calendar1.set(Calendar.DAY_OF_MONTH, 1);
-			Date minTime = sd.parse(sd.format(calendar1.getTime()));
-
-			int highVIPToday = 0;
-			int highVIPMonth = 0;
-			 // TODO 缁熻楂樼骇浼氬憳鏁伴噺
+			// 楂樼骇浼氫細鍛�
 			highVIP.put("today", highVIPToday);
 			highVIP.put("month", highVIPMonth);
-			
-			
-			int superVIPToday = 0;
-			int superVIPMonth = 0;
 			 // 缁熻瓒呯骇浼氬憳鏁伴噺
 			superVIP.put("today", superVIPToday);
 			superVIP.put("month", superVIPMonth);
@@ -1234,7 +1278,7 @@
 			TeamDailyRecord monthRecord = new TeamDailyRecord(0,0,0);
 			TeamDailyRecord totalityRecord = new TeamDailyRecord(0,0,0);
 			
-			List<TeamDailyRecord> list = teamDailyRecordService.getbyUid(uid);
+			List<TeamDailyRecord> list = teamDailyRecordService.getByUid(uid);
 			if (list != null && list.size() > 0) {
 				for (TeamDailyRecord record: list) {
 					Date statisticDay = record.getCountDay();
diff --git a/fanli/src/main/java/com/yeshi/fanli/dao/order/DateTypeEnum.java b/fanli/src/main/java/com/yeshi/fanli/dao/order/DateTypeEnum.java
deleted file mode 100644
index 18bc298..0000000
--- a/fanli/src/main/java/com/yeshi/fanli/dao/order/DateTypeEnum.java
+++ /dev/null
@@ -1,32 +0,0 @@
-package com.yeshi.fanli.dao.order;
-
-public enum DateTypeEnum {
-	DATE("1", "%Y-%m-%d"),
-	MONTH("2", "%Y-%m"),
-	YEAR("3", "%Y");
-	
-	private String name;
-	private String value;
-
-	private DateTypeEnum(String name, String value) {
-		this.name = name;
-		this.value = value;
-	}
-
-	public String getName() {
-		return name;
-	}
-
-	public void setName(String name) {
-		this.name = name;
-	}
-
-	public String getValue() {
-		return value;
-	}
-
-	public void setValue(String value) {
-		this.value = value;
-	}
-
-}
\ No newline at end of file
diff --git a/fanli/src/main/java/com/yeshi/fanli/dao/order/OrderMoneyDailyCountDao.java b/fanli/src/main/java/com/yeshi/fanli/dao/order/OrderMoneyDailyCountDao.java
index f141f17..fa3b3ec 100644
--- a/fanli/src/main/java/com/yeshi/fanli/dao/order/OrderMoneyDailyCountDao.java
+++ b/fanli/src/main/java/com/yeshi/fanli/dao/order/OrderMoneyDailyCountDao.java
@@ -113,7 +113,6 @@
 	 * @return
 	 */
 	public List<OrderMoneyDailyCount> sumGroupBySourceType(Long uid, Date minDate, Date maxDate) {
-		String collectionName = "order_money_daily_count";
 		List<OrderMoneyDailyCount> listDailyCount = new ArrayList<>();
 
 		// 缁熻鏂规硶
@@ -180,7 +179,6 @@
 	 * @return
 	 */
 	public List<OrderMoneyDailyCount> sumTeamGroupBySourceType(Long uid, Date minDate, Date maxDate) {
-		String collectionName = "order_money_daily_count";
 		List<OrderMoneyDailyCount> listDailyCount = new ArrayList<>();
 
 		// 缁熻鏂规硶
diff --git a/fanli/src/main/java/com/yeshi/fanli/dao/user/invite/TeamDailyRecordDao.java b/fanli/src/main/java/com/yeshi/fanli/dao/user/invite/TeamDailyRecordDao.java
index 8576988..730ea5d 100644
--- a/fanli/src/main/java/com/yeshi/fanli/dao/user/invite/TeamDailyRecordDao.java
+++ b/fanli/src/main/java/com/yeshi/fanli/dao/user/invite/TeamDailyRecordDao.java
@@ -1,36 +1,28 @@
 package com.yeshi.fanli.dao.user.invite;
 
+import java.math.BigDecimal;
+import java.util.ArrayList;
 import java.util.Date;
+import java.util.HashMap;
 import java.util.List;
+import java.util.Map;
 
-import javax.annotation.Resource;
-
-import org.springframework.data.mongodb.core.MongoTemplate;
 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 com.yeshi.fanli.entity.bus.user.vip.TeamDailyRecord;
+import com.mongodb.BasicDBObject;
+import com.mongodb.DBObject;
+import com.yeshi.fanli.dao.MongodbBaseDao;
+import com.yeshi.fanli.entity.bus.user.invite.TeamDailyRecord;
 
 @Repository
-public class TeamDailyRecordDao {
+public class TeamDailyRecordDao extends MongodbBaseDao<TeamDailyRecord> {
 
-	@Resource
-	private MongoTemplate mongoTemplate;
+	private static String collectionName = "team_daily_Record";
 
-	/**
-	 * 鏂板
-	 * 
-	 * @param record
-	 */
-	public void save(TeamDailyRecord record) {
-		if (record == null) {
-			return;
-		}
-		mongoTemplate.save(record);
-	}
-
+	 
 	/**
 	 * 閫夋嫨鎬ф洿鏂�
 	 * @param record
@@ -65,7 +57,7 @@
 		if (record.getBeyondSuperVIP() != null)
 			update.set("beyondSuperVIP", record.getBeyondSuperVIP());
 		update.set("updateTime", new Date());
-		mongoTemplate.updateMulti(query, update, TeamDailyRecord.class);
+		update(query, update);
 	}
 
 	/**
@@ -85,10 +77,10 @@
 	 * 
 	 * @return
 	 */
-	public List<TeamDailyRecord> getbyUid(Long uid) {
+	public List<TeamDailyRecord> getByUid(Long uid) {
 		Query query = new Query();
 		query.addCriteria(Criteria.where("uid").is(uid));
-		return mongoTemplate.find(query, TeamDailyRecord.class);
+		return findList(query);
 	}
 
 	/**
@@ -96,11 +88,86 @@
 	 * 
 	 * @return
 	 */
-	public List<TeamDailyRecord> getbyUid(Long uid, Date minTime) {
+	public List<TeamDailyRecord> listByUid(Long uid, Date minDate, Date maxDate) {
+		List<Criteria> list = new ArrayList<Criteria>();
+		list.add(Criteria.where("uid").is(uid));
+		if (minDate != null)
+			list.add(Criteria.where("countDay").gte(minDate));
+		if (maxDate != null)
+			list.add(Criteria.where("countDay").lte(maxDate));
+		
 		Query query = new Query();
-		query.addCriteria(Criteria.where("uid").is(uid));
-		query.addCriteria(Criteria.where("countDay").lte(minTime));
-		return mongoTemplate.find(query, TeamDailyRecord.class);
+		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 findList(query);
 	}
 
+	
+	/**
+	 * 缁熻骞存湀
+	 * @param uid
+	 * @param minDate
+	 * @param maxDate
+	 * @return
+	 */
+	public List<TeamDailyRecord> sumGroupByYearMonth(Long uid, Date minDate, Date maxDate) {
+		List<TeamDailyRecord> listDailyCount = new ArrayList<>();
+		// 缁熻鏂规硶
+		String reduce = "function(doc, aggr){"
+				+ " aggr.firstDaRen += doc.firstDaRen;"
+				+ " aggr.secondDaRen += doc.secondDaRen;"
+				+ " aggr.firstHighVIP += doc.firstHighVIP;"
+				+ " aggr.secondHighVIP += doc.secondHighVIP;"
+				+ " aggr.firstSuperVIP += doc.firstSuperVIP;"
+				+ " aggr.secondSuperVIP += doc.secondSuperVIP;"
+				+ "}";
+
+		// 鏌ヨ鏉′欢
+		List<Criteria> list = new ArrayList<Criteria>();
+		list.add(Criteria.where("uid").is(uid));
+		if (minDate != null)
+			list.add(Criteria.where("countDay").gte(minDate));
+		if (maxDate != null)
+			list.add(Criteria.where("countDay").lte(maxDate));
+
+		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));
+		}
+
+		BasicDBObject agg = new BasicDBObject("yearMonth", "");
+
+		Map<String, Object> map = new HashMap<>();
+		map.put("firstDaRen", 0);
+		map.put("secondDaRen", 0);
+		map.put("firstHighVIP", 0);
+		map.put("secondHighVIP", 0);
+		map.put("firstSuperVIP", 0);
+		map.put("secondSuperVIP", 0);
+		BasicDBObject dbObject = new BasicDBObject(map);
+		DBObject result = mongoTemplate.getCollection(collectionName).group(agg, query.getQueryObject(), dbObject, reduce);
+		Map<String, BasicDBObject> mapResult = result.toMap();
+		if (mapResult.size() > 0) {
+			for (int i = 0; i < mapResult.size(); i++) {
+				BasicDBObject object = mapResult.get(i + "");
+				
+				TeamDailyRecord record = new TeamDailyRecord();
+				record.setFirstDaRen(new BigDecimal(object.get("totalNum").toString()).intValue());
+				record.setFirstHighVIP(new BigDecimal(object.get("totalNum").toString()).intValue());
+				record.setFirstSuperVIP(new BigDecimal(object.get("totalNum").toString()).intValue());
+				record.setSecondDaRen(new BigDecimal(object.get("totalNum").toString()).intValue());
+				record.setSecondHighVIP(new BigDecimal(object.get("totalNum").toString()).intValue());
+				record.setSecondSuperVIP(new BigDecimal(object.get("totalNum").toString()).intValue());
+				listDailyCount.add(record);
+			}
+		}
+		return listDailyCount;
+	}
 }
diff --git a/fanli/src/main/java/com/yeshi/fanli/entity/bus/user/vip/TeamDailyRecord.java b/fanli/src/main/java/com/yeshi/fanli/entity/bus/user/invite/TeamDailyRecord.java
similarity index 97%
rename from fanli/src/main/java/com/yeshi/fanli/entity/bus/user/vip/TeamDailyRecord.java
rename to fanli/src/main/java/com/yeshi/fanli/entity/bus/user/invite/TeamDailyRecord.java
index 296e8f4..2e68665 100644
--- a/fanli/src/main/java/com/yeshi/fanli/entity/bus/user/vip/TeamDailyRecord.java
+++ b/fanli/src/main/java/com/yeshi/fanli/entity/bus/user/invite/TeamDailyRecord.java
@@ -1,4 +1,4 @@
-package com.yeshi.fanli.entity.bus.user.vip;
+package com.yeshi.fanli.entity.bus.user.invite;
 
 import java.util.Date;
 
@@ -13,7 +13,7 @@
  * @author Administrator
  *
  */
-@Document(collection = "team_daily_Record")
+@Document(collection = "team_daily_record")
 public class TeamDailyRecord {
 
 	@Id
diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/user/invite/TeamDailyRecordServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/user/invite/TeamDailyRecordServiceImpl.java
index 30d354f..3dda437 100644
--- a/fanli/src/main/java/com/yeshi/fanli/service/impl/user/invite/TeamDailyRecordServiceImpl.java
+++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/user/invite/TeamDailyRecordServiceImpl.java
@@ -9,15 +9,12 @@
 import org.springframework.stereotype.Service;
 
 import com.yeshi.fanli.dao.user.invite.TeamDailyRecordDao;
-import com.yeshi.fanli.entity.bus.user.ThreeSale;
-import com.yeshi.fanli.entity.bus.user.vip.TeamDailyRecord;
+import com.yeshi.fanli.entity.bus.user.invite.TeamDailyRecord;
 import com.yeshi.fanli.exception.user.TeamDailyRecordException;
-import com.yeshi.fanli.log.LogHelper;
 import com.yeshi.fanli.service.inter.user.invite.TeamDailyRecordService;
 import com.yeshi.fanli.service.inter.user.invite.ThreeSaleSerivce;
 import com.yeshi.fanli.util.StringUtil;
 import com.yeshi.fanli.util.TimeUtil;
-import com.yeshi.fanli.util.annotation.RequestSerializableByKeyService;
 
 @Service
 public class TeamDailyRecordServiceImpl implements TeamDailyRecordService {
@@ -41,7 +38,7 @@
 		
 		// id
 		record.setId(id);
-		TeamDailyRecord teamDaily = teamDailyRecordDao.getById(id);
+		TeamDailyRecord teamDaily = teamDailyRecordDao.get(id);
 		if (teamDaily != null) {
 			teamDailyRecordDao.updateSelective(record);
 		} else {
@@ -51,45 +48,31 @@
 			teamDailyRecordDao.save(record);
 		}
 	}
+
+	@Override
+	public String createId(Long uid, Date date) {
+		String gernalTime = TimeUtil.getGernalTime(date.getTime());
+		return StringUtil.Md5(uid + "#" + gernalTime);
+	}
 	
-
+	
 	@Override
-	@RequestSerializableByKeyService(key = "#uid")
-	public void addDailyRecord(Long uid) {
-		// 閲嶆柊缁熻闃熷憳绛夌骇鏁伴噺
-		recountRecord(uid);
-
-		// 缁熻涓婄骇闃熷憳鏁伴噺
-		ThreeSale threeSale = threeSaleSerivce.getByWorkerId(uid);
-		if (threeSale != null) {
-			recountRecord(threeSale.getBoss().getId());
-		}
-	}
-
-	private void recountRecord(Long uid) {
-		try {
-			// 鐩存帴绮変笣
-			int firstCount = (int) threeSaleSerivce.countFirstTeamByDate(uid, 1);
-			// 闂存帴绮変笣
-			int secondCount = (int) threeSaleSerivce.countSecondTeamByDate(uid, 1);
-
-			int secondBeyond = 0;
-			
-		 
-		} catch (Exception e) {
-			e.getSuppressed();
-			LogHelper.errorDetailInfo(e);
-		}
-	}
-
-	@Override
-	public List<TeamDailyRecord> getbyUid(Long uid) {
-		return teamDailyRecordDao.getbyUid(uid);
+	public TeamDailyRecord getById(String id) {
+		return teamDailyRecordDao.get(id);
 	}
 	
 	@Override
-	public List<TeamDailyRecord> getbyUid(Long uid, Date minTime) {
-		return teamDailyRecordDao.getbyUid(uid, minTime);
+	public List<TeamDailyRecord> getByUid(Long uid) {
+		return teamDailyRecordDao.getByUid(uid);
 	}
 	
+	@Override
+	public List<TeamDailyRecord> listByUid(Long uid, Date minTime, Date maxTime) {
+		return teamDailyRecordDao.listByUid(uid, minTime, maxTime);
+	}
+	
+	@Override
+	public List<TeamDailyRecord> sumGroupByYearMonth(Long uid, Date minTime, Date maxTime) {
+		return teamDailyRecordDao.sumGroupByYearMonth(uid, minTime, maxTime);
+	}
 }
diff --git a/fanli/src/main/java/com/yeshi/fanli/service/inter/user/invite/TeamDailyRecordService.java b/fanli/src/main/java/com/yeshi/fanli/service/inter/user/invite/TeamDailyRecordService.java
index 9772b8c..f67c4a5 100644
--- a/fanli/src/main/java/com/yeshi/fanli/service/inter/user/invite/TeamDailyRecordService.java
+++ b/fanli/src/main/java/com/yeshi/fanli/service/inter/user/invite/TeamDailyRecordService.java
@@ -3,34 +3,10 @@
 import java.util.Date;
 import java.util.List;
 
-import com.yeshi.fanli.entity.bus.user.vip.TeamDailyRecord;
+import com.yeshi.fanli.entity.bus.user.invite.TeamDailyRecord;
 import com.yeshi.fanli.exception.user.TeamDailyRecordException;
 
 public interface TeamDailyRecordService {
-
-
-
-	/**
-	 * 鍒濆鍖栫粺璁$矇涓濈瓑绾ф暟閲�
-	 * @param uid
-	 */
-	public void addDailyRecord(Long uid);
-
-	/**
-	 * 鏌ヨ鎵�鏈�
-	 * @param uid
-	 * @return
-	 */
-	public List<TeamDailyRecord> getbyUid(Long uid);
-	
-	/**
-	 * 鏌ヨ鏁版嵁
-	 * @param uid
-	 * @param level
-	 * @param minTime
-	 * @return
-	 */
-	public List<TeamDailyRecord> getbyUid(Long uid, Date minTime);
 
 	/**
 	 * 淇濆瓨淇℃伅- 鏂板銆侀�夋嫨鏇存柊
@@ -38,4 +14,36 @@
 	 * @throws TeamDailyRecordException
 	 */
 	public void save(TeamDailyRecord record) throws TeamDailyRecordException;
+
+	
+	/**
+	 * 鐢ㄦ埛id 鏃堕棿绛涢��
+	 * @param uid
+	 * @param minTime
+	 * @param maxTime
+	 * @return
+	 */
+	List<TeamDailyRecord> listByUid(Long uid, Date minTime, Date maxTime);
+
+	/**
+	 * 鏍规嵁鏈堜唤鍒嗙粍缁熻
+	 * @param uid
+	 * @param minTime
+	 * @param maxTime
+	 * @return
+	 */
+	public List<TeamDailyRecord> sumGroupByYearMonth(Long uid, Date minTime, Date maxTime);
+
+	/**
+	 * 鏌ヨ鏍规嵁id
+	 * @param id
+	 * @return
+	 */
+	public TeamDailyRecord getById(String id);
+
+
+	public String createId(Long uid, Date date);
+
+
+	public List<TeamDailyRecord> getByUid(Long uid);
 }

--
Gitblit v1.8.0