From 744594ef1a2f530fc3e86ea9dc48b62247f79420 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期二, 19 五月 2020 17:13:23 +0800
Subject: [PATCH] 饿了么绘图,添加口碑

---
 fanli/src/main/java/com/yeshi/fanli/service/impl/money/UserMoneyDebtServiceImpl.java |   72 +++++++++++++++++++++++++++++------
 1 files changed, 59 insertions(+), 13 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/money/UserMoneyDebtServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/money/UserMoneyDebtServiceImpl.java
index 3fd53c5..678f1f8 100644
--- a/fanli/src/main/java/com/yeshi/fanli/service/impl/money/UserMoneyDebtServiceImpl.java
+++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/money/UserMoneyDebtServiceImpl.java
@@ -18,16 +18,20 @@
 import com.yeshi.fanli.entity.money.UserMoneyDebt.UserMoneyDebtTypeEnum;
 import com.yeshi.fanli.entity.money.UserMoneyDebtReturnHistory;
 import com.yeshi.fanli.entity.money.UserMoneyDetail;
+import com.yeshi.fanli.entity.order.CommonOrder;
+import com.yeshi.fanli.entity.order.HongBaoOrder;
 import com.yeshi.fanli.entity.taobao.TaoBaoWeiQuanDrawBack;
 import com.yeshi.fanli.exception.money.UserMoneyDebtException;
 import com.yeshi.fanli.exception.money.UserMoneyDetailException;
 import com.yeshi.fanli.log.LogHelper;
-import com.yeshi.fanli.service.inter.hongbao.HongBaoV2Service;
 import com.yeshi.fanli.service.inter.money.UserMoneyDebtService;
 import com.yeshi.fanli.service.inter.money.UserMoneyService;
 import com.yeshi.fanli.service.inter.money.msg.UserMoneyMsgNotificationService;
 import com.yeshi.fanli.service.inter.money.tb.TaoBaoWeiQuanDrawBackService;
-import com.yeshi.fanli.service.inter.taobao.TaoBaoOrderService;
+import com.yeshi.fanli.service.inter.order.CommonOrderService;
+import com.yeshi.fanli.service.inter.order.HongBaoOrderService;
+import com.yeshi.fanli.service.inter.order.HongBaoV2Service;
+import com.yeshi.fanli.service.inter.order.tb.TaoBaoOrderService;
 import com.yeshi.fanli.service.inter.user.UserInfoService;
 import com.yeshi.fanli.util.Constant;
 import com.yeshi.fanli.util.factory.UserMoneyDetailFactory;
@@ -51,6 +55,9 @@
 	private HongBaoV2Service hongBaoV2Service;
 
 	@Resource
+	private HongBaoOrderService hongBaoOrderService;
+
+	@Resource
 	private UserMoneyService userMoneyService;
 
 	@Resource
@@ -61,6 +68,9 @@
 
 	@Resource
 	private AlipayAccountValidNormalHistoryMapper alipayAccountValidNormalHistoryMapper;
+
+	@Resource
+	private CommonOrderService commonOrderService;
 
 	@Override
 	public void addUserMoneyDebt(UserMoneyDebt debt) throws UserMoneyDebtException {
@@ -82,7 +92,7 @@
 			UserMoneyDebt old = userMoneyDebtMapper.selectByUidAndTypeAndSourceId(debt.getUid(), debt.getType(),
 					debt.getSourceId());
 			if (old != null) {
-				throw new UserMoneyDebtException(3, "瀵瑰簲缁存潈宸茬粡瀛樺湪");
+				throw new UserMoneyDebtException(3, "瀵瑰簲鍞悗宸茬粡瀛樺湪");
 			}
 			userMoneyDebtMapper.insertSelective(debt);
 		}
@@ -94,7 +104,7 @@
 		return userMoneyDebtMapper.selectByTypeAndSourceId(type, sourceId);
 	}
 
-	@Transactional
+	@Transactional(rollbackFor = Exception.class)
 	@Override
 	public void repayDebt(UserMoneyDebt debt, BigDecimal money) throws UserMoneyDebtException {
 		if (debt == null || debt.getId() == null)
@@ -151,8 +161,25 @@
 				}
 
 				// 鏂扮増閫氱煡
+				List<CommonOrder> orderList = commonOrderService.listBySourceTypeAndOrderId(Constant.SOURCE_TYPE_TAOBAO,
+						weiQuanDrawBack.getOrderId());
+				int goodsCount = 0;
+				for (CommonOrder co : orderList) {
+					if (co.getState() != CommonOrder.STATE_SX)
+						goodsCount += co.getCount();
+				}
+
+				BigDecimal fanliMoney = new BigDecimal(0);
+				List<HongBaoOrder> hongBaoOrderList = hongBaoOrderService
+						.listDetailByOrderIdAndSourceType(weiQuanDrawBack.getOrderId(), Constant.SOURCE_TYPE_TAOBAO);
+
+				for (HongBaoOrder hongBaoOrder : hongBaoOrderList) {
+					fanliMoney = fanliMoney.add(hongBaoOrder.getHongBaoV2().getMoney());
+				}
+
 				userMoneyMsgNotificationService.fanliOrderWeiQuan(uid, weiQuanDrawBack.getOrderId(),
-						Constant.SOURCE_TYPE_TAOBAO, money, userInfoService.getBalance(uid));
+						Constant.SOURCE_TYPE_TAOBAO, money, fanliMoney, goodsCount,
+						orderList.get(0).getThirdCreateTime());
 
 				break;
 			case HongBaoV2.TYPE_SHARE_GOODS:
@@ -163,8 +190,26 @@
 							weiQuanDrawBack, money);
 					userMoneyService.subUserMoney(uid, money, userMoneyDetail);
 
-					userMoneyMsgNotificationService.shareOrderWeiQuan(debt.getUid(), weiQuanDrawBack.getOrderId(),
-							Constant.SOURCE_TYPE_TAOBAO, money, userInfoService.getBalance(uid));
+					// 鏂扮増閫氱煡
+					List<CommonOrder> orderList1 = commonOrderService
+							.listBySourceTypeAndOrderId(Constant.SOURCE_TYPE_TAOBAO, weiQuanDrawBack.getOrderId());
+					int goodsCount1 = 0;
+					for (CommonOrder co : orderList1) {
+						if (co.getState() != CommonOrder.STATE_SX)
+							goodsCount1 += co.getCount();
+					}
+
+					BigDecimal fanliMoney1 = new BigDecimal(0);
+					List<HongBaoOrder> hongBaoOrderList1 = hongBaoOrderService.listDetailByOrderIdAndSourceType(
+							weiQuanDrawBack.getOrderId(), Constant.SOURCE_TYPE_TAOBAO);
+
+					for (HongBaoOrder hongBaoOrder : hongBaoOrderList1) {
+						fanliMoney1 = fanliMoney1.add(hongBaoOrder.getHongBaoV2().getMoney());
+					}
+
+					userMoneyMsgNotificationService.shareOrderWeiQuan(uid, weiQuanDrawBack.getOrderId(),
+							Constant.SOURCE_TYPE_TAOBAO, money, fanliMoney1, goodsCount1,
+							orderList1.get(0).getThirdCreateTime());
 
 				} catch (UserMoneyDetailException e) {
 					throw new UserMoneyDebtException(12, "鎻掑叆璧勯噾璇︽儏鍑洪敊");
@@ -184,15 +229,16 @@
 					throw new UserMoneyDebtException(12, "鎻掑叆璧勯噾璇︽儏鍑洪敊");
 				}
 
-				// 鏂扮増閫氱煡
-				userMoneyMsgNotificationService.inviteOrderWeiQuan(uid, weiQuanDrawBack.getOrderId(),
-						Constant.SOURCE_TYPE_TAOBAO, money, userInfoService.getBalance(uid));
 				break;
 			}
 		} else if (debt.getType() == UserMoneyDebtTypeEnum.extractVerify) {// 鎻愮幇楠岃瘉
 			// 鏂扮増璧勯噾璁板綍
 			AlipayAccountValidNormalHistory aliPayAccountHistory = alipayAccountValidNormalHistoryMapper
 					.selectByPrimaryKey(debt.getSourceId());
+
+			AlipayAccountValidNormalHistory first = alipayAccountValidNormalHistoryMapper
+					.selectLatestByUid(aliPayAccountHistory.getUid());
+
 			if (aliPayAccountHistory == null)
 				return;
 			try {
@@ -202,12 +248,12 @@
 			} catch (UserMoneyDetailException e) {
 				throw new UserMoneyDebtException(12, "鎻掑叆璧勯噾璇︽儏鍑洪敊");
 			}
-
-			userMoneyMsgNotificationService.alipayAccountValid(aliPayAccountHistory);
+			userMoneyMsgNotificationService.alipayAccountValid(aliPayAccountHistory, "1涓湀",
+					first.getId().longValue() != aliPayAccountHistory.getId());
 		}
 	}
 
-	@Transactional
+	@Transactional(rollbackFor = Exception.class)
 	@Override
 	public void repayDebt(Long uid) {
 		// 鏌ヨ鏄惁鏈夋瑺鍊�

--
Gitblit v1.8.0