From 1baa21c114f634b8ecc3af64efcfaab6a57a571e Mon Sep 17 00:00:00 2001
From: yanderong <307678080@qq.com>
Date: 星期六, 11 七月 2026 14:33:25 +0800
Subject: [PATCH] feat: 增加余额变更记录
---
UserYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java | 10 ++++++++--
1 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/UserYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java b/UserYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java
index c88f2aa..881ad42 100644
--- a/UserYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java
+++ b/UserYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java
@@ -5,6 +5,7 @@
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
+import com.stylefeng.guns.core.common.constant.state.BalanceChangeType;
import com.stylefeng.guns.core.util.ToolUtil;
import com.stylefeng.guns.modular.account.controller.AppOrderController;
import com.stylefeng.guns.modular.crossCity.dao.OrderCrossCityMapper;
@@ -1348,6 +1349,7 @@
// if(resultUtil.getCode()==500){
// return ResultUtil.error("电子余额不足,无法完成支付");
// }
+ userInfo.setBalanceChangeType(BalanceChangeType.CONSUME.getCode());
userInfo.setBalance(new BigDecimal(userInfo.getBalance()).subtract(new BigDecimal(query.getMoney())).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue());
//添加交易明细
transactionDetailsService.saveData(uid, "快车取消订单", query.getMoney(), 2, 1, 1, 1, id);
@@ -2126,7 +2128,7 @@
if (userInfo.getBalance() == null || userInfo.getBalance() < orderMoney) {
return ResultUtil.error("余额不足,无法完成支付", "");
}
-
+ userInfo.setBalanceChangeType(BalanceChangeType.CONSUME.getCode());
userInfo.setBalance(new BigDecimal(userInfo.getBalance()).subtract(new BigDecimal(orderMoney)).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue());
boolean isPrepayFirstStage = isPrivateCarPrepayFirstStage(orderPrivateCar);
@@ -2441,7 +2443,7 @@
if (userInfo.getBalance() == null || userInfo.getBalance() < orderMoney) {
return ResultUtil.error("余额不足,无法完成支付");
}
-
+ userInfo.setBalanceChangeType(BalanceChangeType.CONSUME.getCode());
userInfo.setBalance(new BigDecimal(userInfo.getBalance()).subtract(new BigDecimal(orderMoney)).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue());
boolean isPrepayFirstStage = isPrivateCarPrepayFirstStage(orderPrivateCar);
@@ -2843,6 +2845,7 @@
private ResultUtil refundPrivateCarPrepayDifference(OrderPrivateCar orderPrivateCar, UserInfo userInfo, Double refundAmount) throws Exception {
if (Integer.valueOf(3).equals(orderPrivateCar.getPayType())) {
+ userInfo.setBalanceChangeType(BalanceChangeType.REFUND.getCode());
userInfo.setBalance(new BigDecimal(null != userInfo.getBalance() ? userInfo.getBalance() : 0D)
.add(toMoney(refundAmount)).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue());
userInfoService.updateById(userInfo);
@@ -3035,6 +3038,7 @@
if (userInfo == null) {
throw new RuntimeException("用户信息不存在,无法退款");
}
+ userInfo.setBalanceChangeType(BalanceChangeType.REFUND.getCode());
userInfo.setBalance(new BigDecimal(null != userInfo.getBalance() ? userInfo.getBalance() : 0)
.add(new BigDecimal(refundAmount)).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue());
userInfoService.updateById(userInfo);
@@ -3086,6 +3090,7 @@
if (userInfo == null) {
return ResultUtil.error("用户信息不存在,无法退款");
}
+ userInfo.setBalanceChangeType(BalanceChangeType.REFUND.getCode());
userInfo.setBalance(new BigDecimal(null != userInfo.getBalance() ? userInfo.getBalance() : 0)
.add(new BigDecimal(refundAmount)).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue());
userInfoService.updateById(userInfo);
@@ -3411,6 +3416,7 @@
// if(resultUtil.getCode()==500){
// return ResultUtil.error("电子余额不足,无法完成支付");
// }
+ userInfo.setBalanceChangeType(BalanceChangeType.CONSUME.getCode());
userInfo.setBalance(new BigDecimal(userInfo.getBalance()).subtract(new BigDecimal(money)).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue());
OpenCity openCity = openCityService.openCity1(orderPrivateCar.getStartLon().toString(), orderPrivateCar.getStartLat().toString());
--
Gitblit v1.7.1