From 5e388cfb25b24a154e28b3c42143493fc77f8e56 Mon Sep 17 00:00:00 2001
From: liulin <lin.liu@88.com>
Date: 星期五, 04 七月 2025 11:02:10 +0800
Subject: [PATCH] 添加mqtt

---
 src/main/java/com/lunhan/water/service/PaymentServices.java |   21 ++++++++++++++++++---
 1 files changed, 18 insertions(+), 3 deletions(-)

diff --git a/src/main/java/com/lunhan/water/service/PaymentServices.java b/src/main/java/com/lunhan/water/service/PaymentServices.java
index 3e3a839..11b0c75 100644
--- a/src/main/java/com/lunhan/water/service/PaymentServices.java
+++ b/src/main/java/com/lunhan/water/service/PaymentServices.java
@@ -20,6 +20,7 @@
 import com.lunhan.water.entity.request.pay.ReqPayRefund;
 
 import com.lunhan.water.repository.impl.*;
+import com.lunhan.water.repository.mapper.SysDictTypeMapper;
 import com.lunhan.water.repository.po.*;
 import org.slf4j.Logger;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -33,6 +34,7 @@
 import java.nio.charset.StandardCharsets;
 import java.time.LocalDateTime;
 import java.util.HashMap;
+import java.util.List;
 import java.util.Map;
 import java.util.Objects;
 
@@ -58,6 +60,10 @@
     private TradeRecordMapperImpl tradeRecordDao;
     @Autowired
     private RedisTemplate<String, Object> redisTemplate;
+    @Autowired
+    private  SysDictTypeMapperImpl sysDictTypeMapper;
+    @Autowired
+    private SysDictDataMapperImpl sysDictDataMapper;
 
 
     /**
@@ -111,7 +117,7 @@
                 item.setPaymentMethod(EPayType.WX_PAY.getDesc());
                 item.setRechargeStatus(EYesOrNo.NO.getValue());
                 item.setRechargeAmount(request.getTradeAmount());
-                item.setComment("水卡充值");
+                item.setComment("余额充值");
                 item.setCreateTime(LocalDateTimeUtil.nowTimeStamp());
                 item.setCreateUser(loginUser.getUserId());
                 item.setCreateUserName(loginUser.getNickName());
@@ -378,8 +384,17 @@
                         UserLoginPO user = userLoginMapper.getById(rechargeOrderPO.getUserId());
                         UserLoginPO userLoginPO = new UserLoginPO();
                         userLoginPO.setId(user.getId());
-                        //余额加上交易金额=充值后的余额
-                        userLoginPO.setBalance(userLoginPO.getBalance().add(trade.getTradeAmount()));
+                        //将充值金额转换为水量
+                        List<SysDictDataPO> feesAmount = sysDictDataMapper.getListByType("fees_amount");
+                        if(ListUtil.isNotNullOrEmpty(feesAmount)){
+                            SysDictDataPO sysDictDataPO = feesAmount.get(0);
+                            BigDecimal bigDecimal = trade.getTradeAmount().multiply(new BigDecimal(sysDictDataPO.getDictValue())).setScale(2, BigDecimal.ROUND_DOWN);
+                            userLoginPO.setBalance(bigDecimal);
+                        }else {
+                            //默认单价
+                            BigDecimal bigDecimal = trade.getTradeAmount().multiply(new BigDecimal(3)).setScale(2, BigDecimal.ROUND_DOWN);
+                            userLoginPO.setBalance(bigDecimal);
+                        }
                         int modify = userLoginMapper.updateById(userLoginPO);
                         //添加资金明细记录
                         UserCapitalChangePO changePO = new UserCapitalChangePO();

--
Gitblit v1.9.3