From 78e1837458da467cacefa8e22c2c9616b1dc9f9d Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Mon, 12 May 2025 16:26:58 +0800
Subject: [PATCH] refactor(mall): 优化积分和余额支付流程
---
src/main/java/cc/mrbird/febs/vip/service/impl/VipCommonServiceImpl.java | 6 +++---
src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java | 21 ++++++++++++++++++---
src/main/java/cc/mrbird/febs/common/enumerates/ScoreFlowTypeEnum.java | 16 +++++++++-------
src/main/java/cc/mrbird/febs/mall/service/impl/ScoreServiceImpl.java | 5 +++--
4 files changed, 33 insertions(+), 15 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 d6cd5d3..6b8caf8 100644
--- a/src/main/java/cc/mrbird/febs/common/enumerates/ScoreFlowTypeEnum.java
+++ b/src/main/java/cc/mrbird/febs/common/enumerates/ScoreFlowTypeEnum.java
@@ -8,15 +8,17 @@
/**
*
*/
- SIGN_EXPERIENCE(7, "签到获得会员经验"),
- SIGN_SCORE(7, "签到获得积分"),
- SALE_RECOMMEND(6, "好友下单获得佣金"),
- OTHER_RECOMMEND(5, "推荐下单获得积分"),
- MINE_RECOMMEND(4, "下单获得积分"),
+ PAY_BALANCE(9, "余额支付{}"),
- PAY(1, "积分支付"),
+ SIGN_EXPERIENCE(8, "签到获得{}会员经验"),
+ SIGN_SCORE(7, "签到获得{}积分"),
+ SALE_RECOMMEND(6, "好友下单获得{}佣金"),
+ OTHER_RECOMMEND(5, "推荐下单获得{}积分"),
+ MINE_RECOMMEND(4, "下单获得{}积分"),
- BUY(2, "购买商品,获得等级经验"),
+ PAY(1, "支付{}积分"),
+
+ BUY(2, "购买商品,获得{}会员经验"),
RECOMMEND(3, "推荐下单获得积分");
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 95d834f..65239cf 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
@@ -546,7 +546,15 @@
//先支付积分部分
if(orderInfo.getScoreAmount().compareTo(BigDecimal.ZERO) > 0){
balanceScorePay(orderInfo, payOrderDto.getTradePwd(), "prizeScore");
- mallMoneyFlowService.addMoneyFlow(member.getId(), orderInfo.getAmount().negate(), ScoreFlowTypeEnum.PAY.getValue(), orderInfo.getOrderNo(), FlowTypeEnum.PRIZE_SCORE.getValue(), null, 2);
+ mallMoneyFlowService.addMoneyFlow(
+ member.getId(),
+ orderInfo.getAmount().negate(),
+ ScoreFlowTypeEnum.PAY.getValue(),
+ orderInfo.getOrderNo(),
+ FlowTypeEnum.PRIZE_SCORE.getValue(),
+ StrUtil.format(ScoreFlowTypeEnum.PAY.getDesc(),orderInfo.getScoreAmount()),
+ 2
+ );
}
String payResultStr = "";
@@ -592,8 +600,15 @@
orderInfo.setPayResult("1");
orderInfo.setDeliveryState(OrderDeliveryStateEnum.DELIVERY_WAIT.getValue());
- mallMoneyFlowService.addMoneyFlow(member.getId(), orderInfo.getAmount().negate(), MoneyFlowTypeEnum.PAY.getValue(), orderInfo.getOrderNo(), FlowTypeEnum.BALANCE.getValue(),"余额支付",2);
-
+ mallMoneyFlowService.addMoneyFlow(
+ member.getId(),
+ orderInfo.getAmount().negate(),
+ ScoreFlowTypeEnum.PAY_BALANCE.getValue(),
+ orderInfo.getOrderNo(),
+ FlowTypeEnum.BALANCE.getValue(),
+ StrUtil.format(ScoreFlowTypeEnum.PAY_BALANCE.getDesc(),orderInfo.getScoreAmount()),
+ 2
+ );
agentProducer.sendOrderCoupon(orderInfo.getId());
break;
case "4":
diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ScoreServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ScoreServiceImpl.java
index ed0a2b2..2fc1a19 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/ScoreServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/ScoreServiceImpl.java
@@ -26,6 +26,7 @@
import cn.hutool.core.date.DateTime;
import cn.hutool.core.date.DateUnit;
import cn.hutool.core.date.DateUtil;
+import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -297,7 +298,7 @@
ScoreFlowTypeEnum.SIGN_EXPERIENCE.getValue(),
mallScoreSignRecord.getId().toString(),
FlowTypeEnum.SCORE.getValue(),
- ScoreFlowTypeEnum.SIGN_EXPERIENCE.getDesc(),
+ StrUtil.format(ScoreFlowTypeEnum.SIGN_EXPERIENCE.getDesc(),amount),
2);
}
if(mostSignIn == 2){
@@ -308,7 +309,7 @@
ScoreFlowTypeEnum.SIGN_SCORE.getValue(),
mallScoreSignRecord.getId().toString(),
FlowTypeEnum.PRIZE_SCORE.getValue(),
- ScoreFlowTypeEnum.SIGN_SCORE.getDesc(),
+ StrUtil.format(ScoreFlowTypeEnum.SIGN_SCORE.getDesc(),amount),
2);
}
diff --git a/src/main/java/cc/mrbird/febs/vip/service/impl/VipCommonServiceImpl.java b/src/main/java/cc/mrbird/febs/vip/service/impl/VipCommonServiceImpl.java
index f6c696c..cce24d7 100644
--- a/src/main/java/cc/mrbird/febs/vip/service/impl/VipCommonServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/vip/service/impl/VipCommonServiceImpl.java
@@ -93,7 +93,7 @@
ScoreFlowTypeEnum.BUY.getValue(),
mallOrderInfo.getOrderNo(),
FlowTypeEnum.SCORE.getValue(),
- ScoreFlowTypeEnum.BUY.getDesc(),
+ StrUtil.format(ScoreFlowTypeEnum.BUY.getDesc(),amount),
2
);
// 更新会员钱包中的分数
@@ -139,7 +139,7 @@
recommendTypeScoreMap.get(key),
mallOrderInfo.getOrderNo(),
FlowTypeEnum.PRIZE_SCORE.getValue(),
- ScoreFlowTypeEnum.getDescByValue(recommendTypeScoreMap.get(key)),
+ StrUtil.format(ScoreFlowTypeEnum.getDescByValue(recommendTypeScoreMap.get(key)),value),
2);
mallMemberWalletService.add(value, key, "prizeScore");
}
@@ -292,7 +292,7 @@
ScoreFlowTypeEnum.SALE_RECOMMEND.getValue(),
mallOrderInfo.getOrderNo(),
FlowTypeEnum.BALANCE.getValue(),
- ScoreFlowTypeEnum.SALE_RECOMMEND.getDesc(),
+ StrUtil.format(ScoreFlowTypeEnum.SALE_RECOMMEND.getDesc(),multiply),
2
);
// 更新会员钱包中的余额
--
Gitblit v1.9.1