From 4f62b86373d07a1ce920914f35ad2d9dff59e0c6 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Tue, 06 Sep 2022 14:30:39 +0800
Subject: [PATCH] 20220902

---
 src/main/java/cc/mrbird/febs/mall/quartz/OrderSettlementJob.java |   29 +++++++++++++++++++++--------
 1 files changed, 21 insertions(+), 8 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/mall/quartz/OrderSettlementJob.java b/src/main/java/cc/mrbird/febs/mall/quartz/OrderSettlementJob.java
index 200a901..f852aea 100644
--- a/src/main/java/cc/mrbird/febs/mall/quartz/OrderSettlementJob.java
+++ b/src/main/java/cc/mrbird/febs/mall/quartz/OrderSettlementJob.java
@@ -38,6 +38,9 @@
     private MallOrderInfoMapper mallOrderInfoMapper;
 
     @Autowired
+    private MallOrderItemMapper mallOrderItemMapper;
+
+    @Autowired
     private IApiMallMemberWalletService memberWalletService;
 
     @Autowired
@@ -108,14 +111,24 @@
         if(CollUtil.isNotEmpty(orderInfos)){
             for(MallOrderInfo orderInfo : orderInfos){
                 //生成一条团长提成记录
-                MallLeaderAchieve mallLeaderAchieve = new MallLeaderAchieve();
-                mallLeaderAchieve.setMemberId(orderInfo.getMemberId());
-                mallLeaderAchieve.setOrderNo(orderInfo.getOrderNo());
-                BigDecimal subtract = orderInfo.getAmount().subtract(orderInfo.getCarriage() == null ? BigDecimal.ZERO : orderInfo.getCarriage());
-                mallLeaderAchieve.setAmount(subtract);
-                mallLeaderAchieve.setUniqueCode(orderInfo.getTakeUniqueCode());
-                mallLeaderAchieve.setState(MallLeaderAchieve.STATE_ONE);
-                mallLeaderAchieveMapper.insert(mallLeaderAchieve);
+                Long id = orderInfo.getId();
+                List<MallOrderItem> mallOrderItemList = mallOrderItemMapper.selectListByOrderId(id);
+                if(CollUtil.isNotEmpty(mallOrderItemList)){
+                    for(MallOrderItem mallOrderItem : mallOrderItemList){
+                        Integer state = mallOrderItem.getState() == null ? 1 : mallOrderItem.getState();
+                        if(1 == state){
+                            MallLeaderAchieve mallLeaderAchieve = new MallLeaderAchieve();
+                            mallLeaderAchieve.setMemberId(orderInfo.getMemberId());
+                            mallLeaderAchieve.setOrderNo(orderInfo.getOrderNo());
+                            BigDecimal itemAmount = mallOrderItem.getAmount();
+//                            BigDecimal subtract = orderInfo.getAmount().subtract(orderInfo.getCarriage() == null ? BigDecimal.ZERO : orderInfo.getCarriage());
+                            mallLeaderAchieve.setAmount(itemAmount);
+                            mallLeaderAchieve.setUniqueCode(orderInfo.getTakeUniqueCode());
+                            mallLeaderAchieve.setState(MallLeaderAchieve.STATE_ONE);
+                            mallLeaderAchieveMapper.insert(mallLeaderAchieve);
+                        }
+                    }
+                }
             }
             mallOrderInfoMapper.updateOrderConfirmStatus(DateUtil.date(),DateUtil.offsetDay(new Date(), -value));
         }

--
Gitblit v1.9.1