From 535c81a311bcd54b7ef5aa3f02b3cddc19b854d1 Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Thu, 15 May 2025 16:06:14 +0800
Subject: [PATCH] feat(mall): 新增订单项的积分金额和积分价格字段- 在 MallOrderInfoMapper.xml 中添加了 item_score_amount 和 item_score_price 字段的映射 - 在 MallOrderItem 实体类中添加了 itemScorePrice 字段 - 更新了 selectNewApiOrderListInPage 查询,加入了积分金额和积分价格的计算

---
 src/main/java/cc/mrbird/febs/pay/controller/XcxPayController.java |   16 ++++++++++++++++
 1 files changed, 16 insertions(+), 0 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/pay/controller/XcxPayController.java b/src/main/java/cc/mrbird/febs/pay/controller/XcxPayController.java
index 17aff9f..32b7304 100644
--- a/src/main/java/cc/mrbird/febs/pay/controller/XcxPayController.java
+++ b/src/main/java/cc/mrbird/febs/pay/controller/XcxPayController.java
@@ -23,6 +23,7 @@
 import cn.hutool.core.collection.CollUtil;
 import cn.hutool.core.date.DateUtil;
 import cn.hutool.core.util.ObjectUtil;
+import cn.hutool.core.util.StrUtil;
 import cn.hutool.json.JSONObject;
 import cn.hutool.json.JSONUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
@@ -320,6 +321,21 @@
                             order.setPayOrderNo(transaction_id);
                             mallOrderInfoMapper.updateById(order);
 
+
+                            //先支付积分部分
+                            if(order.getScoreAmount().compareTo(BigDecimal.ZERO) > 0){
+                                memberWalletService.reduce(order.getScoreAmount(), order.getMemberId(), "prizeScore");
+                                mallMoneyFlowService.addMoneyFlow(
+                                        order.getMemberId(),
+                                        order.getScoreAmount().negate(),
+                                        ScoreFlowTypeEnum.PAY.getValue(),
+                                        order.getOrderNo(),
+                                        FlowTypeEnum.PRIZE_SCORE.getValue(),
+                                        StrUtil.format(ScoreFlowTypeEnum.PAY.getDesc(),order.getScoreAmount()),
+                                        2
+                                );
+                            }
+
                             agentProducer.sendOrderCoupon(order.getId());
 //                            agentProducer.sendGetScoreMsg(order.getId());
 

--
Gitblit v1.9.1