From 0ca3a3922d2d25df52682b2290be15135cce100e Mon Sep 17 00:00:00 2001
From: longz <longzhaoz@qq.com>
Date: 星期二, 29 九月 2026 17:56:19 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/2.3' into 2.3

---
 ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/feignClient/AppUserWhitelistClient.java |   30 ++++++++++++++++++++++++++++++
 1 files changed, 30 insertions(+), 0 deletions(-)

diff --git a/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/feignClient/AppUserWhitelistClient.java b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/feignClient/AppUserWhitelistClient.java
index 5409079..cdc7226 100644
--- a/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/feignClient/AppUserWhitelistClient.java
+++ b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/feignClient/AppUserWhitelistClient.java
@@ -7,8 +7,10 @@
 import com.ruoyi.common.core.domain.R;
 import org.springframework.cloud.openfeign.FeignClient;
 import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestParam;
 
+import java.math.BigDecimal;
 import java.util.List;
 
 /**
@@ -35,4 +37,32 @@
      */
     @GetMapping("/t-app-user-whitelist/inner/list-by-company")
     R<List<TAppUserWhitelist>> listByCompany(@RequestParam("companyId") Integer companyId);
+
+    /**
+     * 锁定白名单账户余额(企业账户流程-分配模式,实扣冻结:余额立即扣减并计入锁定金额)。
+     *
+     * @return data 为锁定后可用余额;余额不足时 R 的 code != 200
+     */
+    @PostMapping("/t-app-user-whitelist/inner/lock-balance")
+    R<BigDecimal> lockBalance(@RequestParam("whitelistId") Long whitelistId,
+                              @RequestParam("amount") BigDecimal amount);
+
+    /**
+     * 结算白名单账户余额(解锁锁定额并按实际消费扣减,允许扣成负数)。
+     *
+     * @return data 为结算后可用余额
+     */
+    @PostMapping("/t-app-user-whitelist/inner/settle-balance")
+    R<BigDecimal> settleBalance(@RequestParam("whitelistId") Long whitelistId,
+                                @RequestParam("lockedAmount") BigDecimal lockedAmount,
+                                @RequestParam("actualAmount") BigDecimal actualAmount);
+
+    /**
+     * 释放白名单账户锁定金额(未产生消费/订单回滚时使用)。
+     *
+     * @return data 为释放后可用余额
+     */
+    @PostMapping("/t-app-user-whitelist/inner/unlock-balance")
+    R<BigDecimal> unlockBalance(@RequestParam("whitelistId") Long whitelistId,
+                                @RequestParam("amount") BigDecimal amount);
 }

--
Gitblit v1.7.1