From 3b9e1385a90ae84f97f2a4b8b7a35a6b13c01062 Mon Sep 17 00:00:00 2001
From: yujian <yujian@163.com>
Date: 星期三, 13 五月 2020 16:39:19 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/div' into div

---
 fanli/src/main/java/com/yeshi/fanli/service/impl/order/OrderMoneyDailyCountServiceImpl.java |   70 +++++++++++++++++++++++++----------
 1 files changed, 50 insertions(+), 20 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/order/OrderMoneyDailyCountServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/order/OrderMoneyDailyCountServiceImpl.java
index 24370d2..a2bd60b 100644
--- a/fanli/src/main/java/com/yeshi/fanli/service/impl/order/OrderMoneyDailyCountServiceImpl.java
+++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/order/OrderMoneyDailyCountServiceImpl.java
@@ -1,5 +1,6 @@
 package com.yeshi.fanli.service.impl.order;
 
+import java.math.BigDecimal;
 import java.text.SimpleDateFormat;
 import java.util.Date;
 import java.util.List;
@@ -21,7 +22,6 @@
 	@Resource
 	private OrderMoneyDailyCountDao orderMoneyDailyCountDao;
 
-	
 	@Override
 	@RequestSerializableByKeyService(key = "#record.uid")
 	public void saveDailyCount(OrderMoneyDailyCount record) {
@@ -29,48 +29,78 @@
 			return; // 鍙傛暟涓嶅叏
 		}
 		String gernalTime = TimeUtil.getGernalTime(record.getCountDay().getTime());
-		String id = StringUtil.Md5(record.getUid() + record.getSourceType().name() + gernalTime);
-		
+		String id = StringUtil.Md5(record.getUid() + "#" + record.getSourceType().name() + "#" + gernalTime);
+
 		// id
 		record.setId(id);
 		// 缁熻鏃ユ湡-骞存湀鏃�
 		record.setCountDay(new Date(TimeUtil.convertDateToTemp(gernalTime)));
-		
+
 		SimpleDateFormat formatMonth = new SimpleDateFormat("yyyy-MM");
-		record.setYearMonth(formatMonth.format(record.getCountDay()) );
-		
-	    OrderMoneyDailyCount dailyCount = orderMoneyDailyCountDao.getById(id);
-		if (dailyCount == null) {
-			// 閫夋嫨鎬ф洿鏂�
-			orderMoneyDailyCountDao.save(record);
-		} else {
-			// 閫夋嫨鎬ф彃鍏�
+		record.setYearMonth(formatMonth.format(record.getCountDay()));
+
+		OrderMoneyDailyCount dailyCount = orderMoneyDailyCountDao.get(id);
+		if (dailyCount != null) {
 			orderMoneyDailyCountDao.updateSelective(record);
+		} else {
+			initData(record);
+			record.setUpdateTime(new Date());
+			orderMoneyDailyCountDao.save(record);
 		}
+	}
+
+	private void initData(OrderMoneyDailyCount record) {
+		if (record.getIncome() == null)
+			record.setIncome(0);
+		if (record.getIncomeTeam() == null)
+			record.setIncomeTeam(0);
+		if (record.getOrderNum() == null)
+			record.setOrderNum(0);
+		if (record.getOrderNumTeam() == null)
+			record.setOrderNumTeam(0);
+		if (record.getTeamReward() == null)
+			record.setTeamReward(0);
+		if (record.getTeamRewardNum() == null)
+			record.setTeamRewardNum(0);
+		if (record.getTeamSubsidy() == null)
+			record.setTeamSubsidy(0);
+		if (record.getTeamSubsidyNum() == null)
+			record.setTeamSubsidyNum(0);
 	}
 	
 	@Override
 	public List<OrderMoneyDailyCount> query(Long uid, Date minDay, Date maxDay) {
 		return orderMoneyDailyCountDao.query(uid, minDay, maxDay);
 	}
-	
+
 	@Override
-	public List<OrderMoneyDailyCount>  sumGroupBySourceType(Long uid, Date minDay, Date maxDay) {
+	public List<OrderMoneyDailyCount> sumGroupBySourceType(Long uid, Date minDay, Date maxDay) {
 		return orderMoneyDailyCountDao.sumGroupBySourceType(uid, minDay, maxDay);
 	}
-	
+
 	@Override
-	public List<OrderMoneyDailyCount>  sumTeamGroupBySourceType(Long uid, Date minDay, Date maxDay) {
+	public List<OrderMoneyDailyCount> sumTeamGroupBySourceType(Long uid, Date minDay, Date maxDay) {
 		return orderMoneyDailyCountDao.sumTeamGroupBySourceType(uid, minDay, maxDay);
 	}
-	
+
 	@Override
-	public List<OrderMoneyDailyCount>  sumGroupByCountDay(Long uid, Date minDay, Date maxDay) {
+	public List<OrderMoneyDailyCount> sumGroupByCountDay(Long uid, Date minDay, Date maxDay) {
 		return orderMoneyDailyCountDao.sumGroupByCountDay(uid, minDay, maxDay);
 	}
+
+	@Override
+	public List<OrderMoneyDailyCount> sumGroupByYearMonth(Long uid, Date minDay, Date maxDay) {
+		return orderMoneyDailyCountDao.sumGroupByYearMonth(uid, minDay, maxDay);
+	}
+	
 	
 	@Override
-	public List<OrderMoneyDailyCount>  sumGroupByYearMonth(Long uid, Date minDay, Date maxDay) {
-		return orderMoneyDailyCountDao.sumGroupByYearMonth(uid, minDay, maxDay);
+	public List<OrderMoneyDailyCount> sumTeamGroupByCountDay(Long uid, Date minDay, Date maxDay) {
+		return orderMoneyDailyCountDao.sumTeamGroupByCountDay(uid, minDay, maxDay);
+	}
+
+	@Override
+	public List<OrderMoneyDailyCount> sumTeamGroupByYearMonth(Long uid, Date minDay, Date maxDay) {
+		return orderMoneyDailyCountDao.sumTeamGroupByYearMonth(uid, minDay, maxDay);
 	}
 }

--
Gitblit v1.8.0