From 24739c7e321adca7729754cbd882f417f1b87d24 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期四, 11 七月 2019 17:59:16 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 fanli/src/main/java/com/yeshi/fanli/service/impl/tlj/UserTaoLiJinOriginServiceImpl.java |   83 ++++++++++++++++++++++++++++++++---------
 1 files changed, 64 insertions(+), 19 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/tlj/UserTaoLiJinOriginServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/tlj/UserTaoLiJinOriginServiceImpl.java
index 2b4a4fe..184b22f 100644
--- a/fanli/src/main/java/com/yeshi/fanli/service/impl/tlj/UserTaoLiJinOriginServiceImpl.java
+++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/tlj/UserTaoLiJinOriginServiceImpl.java
@@ -23,6 +23,7 @@
 import com.yeshi.fanli.entity.bus.tlj.UserTaoLiJinRecord;
 import com.yeshi.fanli.entity.bus.tlj.UserTaoLiJinReport;
 import com.yeshi.fanli.entity.bus.user.UserInfoExtra;
+import com.yeshi.fanli.entity.bus.user.UserMoneyExtra;
 import com.yeshi.fanli.entity.bus.user.UserRank;
 import com.yeshi.fanli.exception.tlj.UserTaoLiJinOriginException;
 import com.yeshi.fanli.log.LogHelper;
@@ -32,6 +33,7 @@
 import com.yeshi.fanli.service.inter.tlj.UserTaoLiJinDetailService;
 import com.yeshi.fanli.service.inter.tlj.UserTaoLiJinOriginService;
 import com.yeshi.fanli.service.inter.tlj.UserTaoLiJinRecordService;
+import com.yeshi.fanli.service.inter.tlj.UserTaoLiJinReportService;
 import com.yeshi.fanli.service.inter.user.UserInfoExtraService;
 import com.yeshi.fanli.service.inter.user.UserMoneyExtraService;
 import com.yeshi.fanli.util.MoneyBigDecimalUtil;
@@ -66,6 +68,9 @@
 	
 	@Resource
 	private UserTaoLiJinRecordService userTaoLiJinRecordService;
+	
+	@Resource
+	private UserTaoLiJinReportService userTaoLiJinReportService;
 	
 	
 	@Override
@@ -418,15 +423,72 @@
 		
 		BigDecimal total = new BigDecimal(0);
 		for (UserTaoLiJinOrigin userTaoLiJinOrigin: list) {
-			
 			UserTaoLiJinOrigin origin = new UserTaoLiJinOrigin();
 			origin.setId(userTaoLiJinOrigin.getId());
 			origin.setMoneySurplus(new BigDecimal(0));
 			origin.setUpdateTime(new Date());
 			userTaoLiJinOriginMapper.updateByPrimaryKeySelective(origin);
 			
+			SimpleDateFormat sd = new SimpleDateFormat("yyyy.MM.dd hh.mm");
+			String time = sd.format(userTaoLiJinOrigin.getCreateTime());
+			if (origin.getOrigin().equals(TaoLiJinOriginEnum.refund)) {
+				String rightsId = userTaoLiJinOrigin.getRightsId();
+				UserTaoLiJinReport report = userTaoLiJinReportService.selectByPrimaryKey(rightsId);
+				Date shareTime = null;
+				if (report == null) {
+					shareTime = date;
+				} else {
+					shareTime = report.getCreateTime();
+				}
+				
+				// 娑堟伅
+				MsgOtherTaoLiJinContentDTO content = new MsgOtherTaoLiJinContentDTO();
+				content.setState("绾㈠寘鏀跺洖");
+				content.setSource("浜嶽"+ sd.format(shareTime) + "]鍒涘缓鐨勫垎浜湭琚鍙栭儴鍒�");
+				content.setTimeDesc("閫�鍥炰簬" + time);
+				content.setMoney(userTaoLiJinOrigin.getMoneySurplus());
+				content.setReason("鏈瑪閫�鍥炴帹骞跨孩鍖呬粠閫�鍥炴棩璧疯嚦浠婂苟鏈骇鐢熷垎浜褰�");
+				content.setResult("闀挎湡鏈娇鐢ㄦ敹鍥�");
+				userOtherMsgNotificationService.taoLiJinMsg(uid, "濡傛湁鐤戦棶璇疯仈绯讳汉宸ュ鏈�", content);
+				
+			} else {
+				// 娑堟伅
+				MsgOtherTaoLiJinContentDTO content = new MsgOtherTaoLiJinContentDTO();
+				content.setState("绾㈠寘鏀跺洖");
+				content.setSource(origin.getOrigin().getDesc());
+				content.setTimeDesc("鑾峰緱浜�" + time);
+				content.setMoney(userTaoLiJinOrigin.getMoneySurplus());
+				content.setReason("鏈瑪鎺ㄥ箍绾㈠寘浠庤幏寰楁棩璧疯嚦浠婂苟鏈骇鐢熷垎浜褰�");
+				content.setResult("闀挎湡鏈娇鐢ㄦ敹鍥�");
+				userOtherMsgNotificationService.taoLiJinMsg(uid, "濡傛湁鐤戦棶璇疯仈绯讳汉宸ュ鏈�", content);
+			}
+			
+			
 			total = MoneyBigDecimalUtil.add(total, userTaoLiJinOrigin.getMoneySurplus());
 		}
+		
+		// 鐢ㄦ埛鍓╀綑娣樼ぜ閲�
+		UserMoneyExtra userMoneyExtra = userMoneyExtraService.selectByPrimaryKey(uid);
+		if (userMoneyExtra == null || userMoneyExtra.getTlj() == null) {
+			return;
+		}
+		
+		UserMoneyExtra updateExtra = new UserMoneyExtra();
+		updateExtra.setUid(uid);
+		
+		BigDecimal tljSelf = userMoneyExtra.getTljSelf();
+		if (tljSelf != null && tljSelf.compareTo(new BigDecimal(0)) > 0) { // 鍓╀綑娣樼ぜ閲�-- 鑷喘
+			BigDecimal sub = MoneyBigDecimalUtil.sub(tljSelf, total);
+			if (sub.compareTo(new BigDecimal(0)) > 0) {
+				updateExtra.setTljSelf(sub);
+			} else {
+				updateExtra.setTljSelf(new BigDecimal(0));
+			}
+		} 
+		updateExtra.setTlj(MoneyBigDecimalUtil.sub(userMoneyExtra.getTlj(), total));
+		updateExtra.setUpdateTime(new Date());
+		userMoneyExtraService.updateByPrimaryKeySelective(updateExtra);
+		
 		
 		// 鎻掑叆鏄庣粏
 		UserTaoLiJinDetail detail = new UserTaoLiJinDetail();
@@ -434,25 +496,8 @@
 		detail.setMoney(new BigDecimal("-" + total.toString()));
 		detail.setTitle(TaoLiJinDetailTypeEnum.sendBack.getDesc());
 		detail.setType(TaoLiJinDetailTypeEnum.sendBack);
-		detail.setCreateTime(date);
+		detail.setCreateTime(new Date());
 		userTaoLiJinDetailService.insertSelective(detail);
-		
-		// 娑堟伅
-		final BigDecimal totalMoney = total;
-		executor.execute(new Runnable() {
-			@Override
-			public void run() {
-				try {
-					MsgOtherTaoLiJinContentDTO content = new MsgOtherTaoLiJinContentDTO();
-					content.setState("绾㈠寘鎵i櫎");
-					content.setSource("15澶╁唴鏈骇鐢熻繃鎺ㄥ箍绾㈠寘鍒嗕韩璁板綍");
-					content.setMoney(totalMoney);
-					userOtherMsgNotificationService.taoLiJinMsg(uid, "娓呴櫎鍚庢棤娉曟仮澶�", content);
-				} catch (Exception e) {
-					LogHelper.errorDetailInfo(e);
-				}
-			}
-		});
 	}
 
 	@Override

--
Gitblit v1.8.0