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