From 1b97bd4f4d8bdc316d5ef6cf1f2dbc11582f0b23 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Thu, 01 Sep 2022 17:07:03 +0800
Subject: [PATCH] 20220822

---
 src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallTeamLeaderServiceImpl.java |   36 ++++++++++++++++++++++++++++--------
 1 files changed, 28 insertions(+), 8 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallTeamLeaderServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallTeamLeaderServiceImpl.java
index a94b520..f422b2f 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallTeamLeaderServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallTeamLeaderServiceImpl.java
@@ -12,6 +12,7 @@
 import cc.mrbird.febs.mall.entity.*;
 import cc.mrbird.febs.mall.mapper.*;
 import cc.mrbird.febs.mall.service.IAdminMallOrderService;
+import cc.mrbird.febs.mall.service.IApiMallMemberWalletService;
 import cc.mrbird.febs.mall.service.IApiMallTeamLeaderService;
 import cc.mrbird.febs.mall.service.IMallMoneyFlowService;
 import cc.mrbird.febs.mall.vo.ApiLeaderInfoVo;
@@ -56,6 +57,11 @@
     private final DataDictionaryCustomMapper dataDictionaryCustomMapper;
     private final MallOrderItemMapper mallOrderItemMapper;
     private final MallRefundMapper mallRefundMapper;
+    @Autowired
+    private WeixinServiceUtil weixinServiceUtil;
+    private final XcxProperties xcxProperties = SpringContextHolder.getBean(XcxProperties.class);
+    private final IMallMoneyFlowService mallMoneyFlowService;
+    private final IApiMallMemberWalletService memberWalletService;
 
     @Override
     @Transactional
@@ -272,13 +278,6 @@
         return new FebsResponse().success().data(result);
     }
 
-
-
-    @Autowired
-    private WeixinServiceUtil weixinServiceUtil;
-    private final XcxProperties xcxProperties = SpringContextHolder.getBean(XcxProperties.class);
-    private final IMallMoneyFlowService mallMoneyFlowService;
-
     @Override
     @Transactional
     public FebsResponse leaderRefundOrder(ApiLeaderRefundOrderDto apiLeaderRefundOrderDto) {
@@ -318,6 +317,27 @@
             BigDecimal bb = new BigDecimal(100);
             int refundMoney = refundAmount.multiply(bb).intValue();
 
+            //余额支付退款
+            if(mallRefundEntity.getType() == 3){
+                //更新订单详情
+                mallOrderItem.setState(3);
+                mallOrderItemMapper.updateById(mallOrderItem);
+                //更新退款订单
+                mallRefundEntity.setState(1);
+                mallRefundEntity.setUpdatedTime(DateUtil.date());
+                mallRefundMapper.updateById(mallRefundEntity);
+                mallMoneyFlowService.addMoneyFlow(mallOrderInfo.getMemberId(), refundAmount, MoneyFlowTypeEnum.REFUND.getValue(), mallOrderInfo.getOrderNo(), FlowTypeEnum.BALANCE.getValue());
+
+                List<MallOrderItem> mallOrderItemList = mallOrderItemMapper.selectListByNotInStateAndOrderId(3,orderId);
+                if(CollUtil.isEmpty(mallOrderItemList)){
+                    MallOrderInfo mallOrderRefund = mallOrderInfoMapper.selectById(orderId);
+                    mallOrderRefund.setStatus(6);
+                    mallOrderInfoMapper.updateById(mallOrderRefund);
+                }
+                memberWalletService.add(refundAmount, mallOrderInfo.getMemberId(), "balance");
+                return new FebsResponse().success().message("退款成功");
+            }
+
             Boolean flag = false;
             Boolean debug = xcxProperties.getDebug();
             if (debug) {
@@ -339,7 +359,7 @@
                 mallRefundMapper.updateById(mallRefundEntity);
                 mallMoneyFlowService.addMoneyFlow(mallOrderInfo.getMemberId(), refundAmount, MoneyFlowTypeEnum.REFUND.getValue(), mallOrderInfo.getOrderNo(), FlowTypeEnum.BALANCE.getValue());
 
-                List<MallOrderItem> mallOrderItemList = mallOrderItemMapper.selectListByStateAndOrderId(1,orderId);
+                List<MallOrderItem> mallOrderItemList = mallOrderItemMapper.selectListByNotInStateAndOrderId(3,orderId);
                 if(CollUtil.isEmpty(mallOrderItemList)){
                     MallOrderInfo mallOrderRefund = mallOrderInfoMapper.selectById(orderId);
                     mallOrderRefund.setStatus(6);

--
Gitblit v1.9.1