From 82a8bc62d5b9d5d607f6952329952b17eda2f0a0 Mon Sep 17 00:00:00 2001
From: liujie <1793218484@qq.com>
Date: 星期一, 14 九月 2026 15:44:34 +0800
Subject: [PATCH] update
---
backend/src/main/java/com/tourguide/modules/finance/service/GuideWithdrawableBalanceService.java | 12 ++++++++++++
1 files changed, 12 insertions(+), 0 deletions(-)
diff --git a/backend/src/main/java/com/tourguide/modules/finance/service/GuideWithdrawableBalanceService.java b/backend/src/main/java/com/tourguide/modules/finance/service/GuideWithdrawableBalanceService.java
index 84ab601..20f8152 100644
--- a/backend/src/main/java/com/tourguide/modules/finance/service/GuideWithdrawableBalanceService.java
+++ b/backend/src/main/java/com/tourguide/modules/finance/service/GuideWithdrawableBalanceService.java
@@ -29,6 +29,12 @@
return value.signum() > 0 && guideUserMapper.decreaseBalance(guideId, value) == 1;
}
+ /** 退款冲正允许记录负余额,后续结算收益会优先抵扣退款形成的负债。 */
+ public boolean debitForRefund(Long guideId, BigDecimal amount) {
+ BigDecimal value = money(amount);
+ return value.signum() > 0 && guideUserMapper.decreaseBalanceForRefund(guideId, value) == 1;
+ }
+
public void credit(Long guideId, BigDecimal amount) {
BigDecimal value = money(amount);
if (value.signum() == 0) return;
@@ -49,6 +55,12 @@
&& guideTeamMapper.decreaseBalance(teamId, value) == 1;
}
+ public boolean debitTeamForRefund(Long teamId, BigDecimal amount) {
+ BigDecimal value = money(amount);
+ return teamId != null && value.signum() > 0
+ && guideTeamMapper.decreaseBalanceForRefund(teamId, value) == 1;
+ }
+
public void creditTeam(Long teamId, BigDecimal amount) {
BigDecimal value = money(amount);
if (value.signum() == 0) return;
--
Gitblit v1.7.1