From 84adeef86c567bbe290265208b05b8559fc7f4f8 Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Thu, 15 May 2025 17:19:50 +0800
Subject: [PATCH] refactor(mall): 重构订单退款和资金流水相关逻辑

---
 src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallTeamLeaderServiceImpl.java |   21 +++++++++++++++++++--
 src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallOrderService.java        |   27 +++++++++++++++++++++------
 src/main/java/cc/mrbird/febs/common/enumerates/ScoreFlowTypeEnum.java            |    2 ++
 3 files changed, 42 insertions(+), 8 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/common/enumerates/ScoreFlowTypeEnum.java b/src/main/java/cc/mrbird/febs/common/enumerates/ScoreFlowTypeEnum.java
index 89e15fb..1ff3fb0 100644
--- a/src/main/java/cc/mrbird/febs/common/enumerates/ScoreFlowTypeEnum.java
+++ b/src/main/java/cc/mrbird/febs/common/enumerates/ScoreFlowTypeEnum.java
@@ -6,6 +6,8 @@
 public enum ScoreFlowTypeEnum {
 
 
+    WECHAT_REFUND(15,"退款{}到微信"),
+    REFUND(14, "退款{}到余额"),
     /**
      * 抽奖
      */
diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallOrderService.java b/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallOrderService.java
index 0f87fc5..f010894 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallOrderService.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallOrderService.java
@@ -2,10 +2,7 @@
 
 import cc.mrbird.febs.common.entity.FebsResponse;
 import cc.mrbird.febs.common.entity.QueryRequest;
-import cc.mrbird.febs.common.enumerates.FlowTypeEnum;
-import cc.mrbird.febs.common.enumerates.MoneyFlowTypeEnum;
-import cc.mrbird.febs.common.enumerates.OrderDeliveryStateEnum;
-import cc.mrbird.febs.common.enumerates.OrderStatusEnum;
+import cc.mrbird.febs.common.enumerates.*;
 import cc.mrbird.febs.mall.dto.*;
 import cc.mrbird.febs.mall.entity.*;
 import cc.mrbird.febs.mall.mapper.*;
@@ -194,7 +191,15 @@
             //用户钱包增加对应的余额
             iApiMallMemberWalletService.addBalance(amount, mallOrderInfo.getMemberId());
 
-            mallMoneyFlowService.addMoneyFlow(mallOrderRefund.getMemberId(), amount, MoneyFlowTypeEnum.REFUND.getValue(), mallOrderInfo.getOrderNo(), FlowTypeEnum.BALANCE.getValue());
+            mallMoneyFlowService.addMoneyFlow(
+                    mallOrderInfo.getMemberId(),
+                    amount,
+                    ScoreFlowTypeEnum.REFUND.getValue(),
+                    mallOrderInfo.getOrderNo(),
+                    FlowTypeEnum.BALANCE.getValue(),
+                    StrUtil.format(ScoreFlowTypeEnum.REFUND.getDesc(),amount),
+                    2
+            );
         }
 
         MallOrderRefundOperation mallOrderRefundOperation = new MallOrderRefundOperation();
@@ -263,7 +268,17 @@
         iApiMallMemberWalletService.addBalance(refundAmount, mallOrderInfo.getMemberId());
 
         //新增一条资金流水
-        mallMoneyFlowService.addMoneyFlow(mallOrderRefund.getMemberId(), refundAmount, MoneyFlowTypeEnum.REFUND.getValue(), mallOrderInfo.getOrderNo(), FlowTypeEnum.BALANCE.getValue());
+
+
+        mallMoneyFlowService.addMoneyFlow(
+                mallOrderInfo.getMemberId(),
+                refundAmount,
+                ScoreFlowTypeEnum.REFUND.getValue(),
+                mallOrderInfo.getOrderNo(),
+                FlowTypeEnum.BALANCE.getValue(),
+                StrUtil.format(ScoreFlowTypeEnum.REFUND.getDesc(),refundAmount),
+                2
+        );
         return new FebsResponse().success();
     }
 
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 a979b39..022811b 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
@@ -441,7 +441,15 @@
                 mallRefundEntity.setState(1);
                 mallRefundEntity.setUpdatedTime(DateUtil.date());
                 mallRefundMapper.updateById(mallRefundEntity);
-                mallMoneyFlowService.addMoneyFlow(mallOrderInfo.getMemberId(), refundAmount, MoneyFlowTypeEnum.REFUND.getValue(), mallOrderInfo.getOrderNo(), FlowTypeEnum.BALANCE.getValue(),"余额退款",2);
+                mallMoneyFlowService.addMoneyFlow(
+                        mallOrderInfo.getMemberId(),
+                        refundAmount,
+                        ScoreFlowTypeEnum.REFUND.getValue(),
+                        mallOrderInfo.getOrderNo(),
+                        FlowTypeEnum.BALANCE.getValue(),
+                        StrUtil.format(ScoreFlowTypeEnum.REFUND.getDesc(),refundAmount),
+                        2
+                );
 
                 List<MallOrderItem> mallOrderItemList = mallOrderItemMapper.selectListByNotInStateAndOrderId(3,orderId);
                 if(CollUtil.isEmpty(mallOrderItemList)){
@@ -483,7 +491,16 @@
                 mallRefundEntity.setState(1);
                 mallRefundEntity.setUpdatedTime(DateUtil.date());
                 mallRefundMapper.updateById(mallRefundEntity);
-                mallMoneyFlowService.addMoneyFlow(mallOrderInfo.getMemberId(), refundAmount, MoneyFlowTypeEnum.WECHAT_REFUND.getValue(), mallOrderInfo.getOrderNo(), FlowTypeEnum.WECHAT.getValue(),"微信退款",2);
+
+                mallMoneyFlowService.addMoneyFlow(
+                        mallOrderInfo.getMemberId(),
+                        refundAmount,
+                        ScoreFlowTypeEnum.WECHAT_REFUND.getValue(),
+                        mallOrderInfo.getOrderNo(),
+                        FlowTypeEnum.BALANCE.getValue(),
+                        StrUtil.format(ScoreFlowTypeEnum.WECHAT_REFUND.getDesc(),refundAmount),
+                        2
+                );
 
                 List<MallOrderItem> mallOrderItemList = mallOrderItemMapper.selectListByNotInStateAndOrderId(3,orderId);
                 if(CollUtil.isEmpty(mallOrderItemList)){

--
Gitblit v1.9.1