From bb2d93ec0add746fff457c04e7995d75eb93f894 Mon Sep 17 00:00:00 2001
From: yujian <yujian@123.com>
Date: 星期三, 26 六月 2019 14:17:35 +0800
Subject: [PATCH] 自购时 推广红包不足限制

---
 fanli/src/main/java/com/yeshi/fanli/service/impl/tlj/UserTaoLiJinRecordServiceImpl.java |   27 ++++++++++++++++++++++-----
 1 files changed, 22 insertions(+), 5 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/tlj/UserTaoLiJinRecordServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/tlj/UserTaoLiJinRecordServiceImpl.java
index 07b8e9f..080f0d3 100644
--- a/fanli/src/main/java/com/yeshi/fanli/service/impl/tlj/UserTaoLiJinRecordServiceImpl.java
+++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/tlj/UserTaoLiJinRecordServiceImpl.java
@@ -224,12 +224,24 @@
 
 		// 杩囨湡
 		userTaoLiJinOriginService.overdueHongBao(uid);
-
-		BigDecimal tlj = userMoneyExtra.getTlj();
+		
+		// 鎬绘帹骞跨孩鍖�
 		BigDecimal totalMoney = MoneyBigDecimalUtil.mul(perface, new BigDecimal(totalNum));
-		if (totalMoney.compareTo(tlj) > 0) {
+		
+		// 鑷喘鏃剁殑绾㈠寘浣欓
+		if (origin == 1) {
+			BigDecimal tljSelf = userMoneyExtra.getTljSelf();
+			if (tljSelf == null || tljSelf.compareTo(totalMoney) < 0) {
+				throw new UserTaoLiJinRecordException(101, "绾㈠寘浣欓涓嶈冻");
+			}
+		} 
+		
+		// 鍒嗕韩鏃剁殑绾㈠寘浣欓
+		BigDecimal tlj = userMoneyExtra.getTlj();
+		if (tlj == null || tlj.compareTo(totalMoney) < 0) {
 			throw new UserTaoLiJinRecordException(101, "绾㈠寘浣欓涓嶈冻");
 		}
+		
 
 		// 鍒涘缓娣樼ぜ閲戠孩鍖�
 		TaoLiJinDTO taoLiJinDTO = TaoKeApiUtil.createTaoLiJin(auctionId, name, perface, totalNum, sendStartTime,
@@ -254,10 +266,15 @@
 		record.setCreateTime(new Date());
 		userTaoLiJinRecordMapper.insertSelective(record);
 
-		// 鍓╀綑娣樼ぜ閲�
-		BigDecimal surplusTlj = MoneyBigDecimalUtil.sub(tlj, totalMoney);
+		
 		UserMoneyExtra updateExtra = new UserMoneyExtra();
 		updateExtra.setUid(uid);
+		if (origin == 1) { // 鍓╀綑娣樼ぜ閲�-- 鑷喘
+			updateExtra.setTljSelf(MoneyBigDecimalUtil.sub(userMoneyExtra.getTljSelf(), totalMoney));
+		} 
+		
+		// 鍓╀綑娣樼ぜ閲�
+		BigDecimal surplusTlj = MoneyBigDecimalUtil.sub(tlj, totalMoney);
 		updateExtra.setTlj(surplusTlj);
 		updateExtra.setUpdateTime(new Date());
 		userMoneyExtraService.updateByPrimaryKeySelective(updateExtra);

--
Gitblit v1.8.0