From f0dbcbe3f79900a3f6cacea04893697b9187946a Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Mon, 21 Aug 2023 11:59:44 +0800
Subject: [PATCH] 赠送积分更新状态

---
 src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java |   28 ++++++++++++++++++++++------
 1 files changed, 22 insertions(+), 6 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java
index b05c465..aa7fd5e 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java
@@ -656,7 +656,8 @@
     @Override
     @Transactional(rollbackFor = Exception.class)
     public void confirmOrder(Long id) {
-        MallMember member = LoginUserUtil.getLoginUser();
+        Long memberId = LoginUserUtil.getLoginUser().getId();
+        MallMember member = mallMemberMapper.selectById(memberId);
         MallOrderInfo orderInfo = this.baseMapper.selectOrderByMemberIdAndId(member.getId(), id);
         if (orderInfo == null || AppContants.DEL_FLAG_Y == orderInfo.getDelFlag()) {
             throw new FebsException("订单不存在");
@@ -685,11 +686,26 @@
             MallMember mallMemberParent = memberMapper.selectInfoByInviteId(referrerId);
             Long parentId = mallMemberParent.getId();
             String orderNo = orderInfo.getOrderNo();
-            MallMoneyFlow mallMoneyFlow = mallMoneyFlowMapper.selectOneByOrderNoAndMemberIdAndRtMemberId(orderNo, member.getId(), parentId);
-            mallMoneyFlow.setStatus(2);
-            mallMoneyFlow.setIsReturn(1);
-            mallMoneyFlowMapper.updateById(mallMoneyFlow);
-            memberWalletService.add(mallMoneyFlow.getAmount(), parentId, "balance");
+            MallMoneyFlow mallMoneyFlow = mallMoneyFlowMapper.selectOneByOrderNoAndMemberIdAndRtMemberId(orderNo, parentId, member.getId());
+            if(ObjectUtil.isNotEmpty(mallMoneyFlow)){
+                mallMoneyFlow.setStatus(2);
+                mallMoneyFlow.setIsReturn(1);
+                mallMoneyFlowMapper.updateById(mallMoneyFlow);
+                memberWalletService.add(mallMoneyFlow.getAmount(), parentId, "balance");
+            }
+
+            if(ObjectUtil.isNotEmpty(mallMemberParent.getReferrerId())){
+                String referrerIdUp = mallMemberParent.getReferrerId();
+                MallMember mallMemberParentUp = memberMapper.selectInfoByInviteId(referrerIdUp);
+                Long parentIdUp = mallMemberParentUp.getId();
+                MallMoneyFlow mallMoneyFlowUp = mallMoneyFlowMapper.selectOneByOrderNoAndMemberIdAndRtMemberId(orderNo, parentIdUp, parentId);
+                if(ObjectUtil.isNotEmpty(mallMoneyFlowUp)){
+                    mallMoneyFlowUp.setStatus(2);
+                    mallMoneyFlowUp.setIsReturn(1);
+                    mallMoneyFlowMapper.updateById(mallMoneyFlowUp);
+                    memberWalletService.add(mallMoneyFlow.getAmount(), parentIdUp, "balance");
+                }
+            }
         }
         List<MallOrderItem> mallOrderItemList = mallOrderItemMapper.selectListByOrderId(orderInfo.getId());
         if(CollUtil.isNotEmpty(mallOrderItemList)){

--
Gitblit v1.9.1