From 2acf043f0518d89b8bb35a5e1044219940b7810a Mon Sep 17 00:00:00 2001
From: zj <1772600164@qq.com>
Date: Mon, 15 Sep 2025 17:59:48 +0800
Subject: [PATCH] 1
---
trading-order-admin/src/main/java/com/yami/trading/api/controller/ApiWithdrawController.java | 44 ++++++++++++++++++++++++++------------------
1 files changed, 26 insertions(+), 18 deletions(-)
diff --git a/trading-order-admin/src/main/java/com/yami/trading/api/controller/ApiWithdrawController.java b/trading-order-admin/src/main/java/com/yami/trading/api/controller/ApiWithdrawController.java
index 28b9557..6ec4118 100644
--- a/trading-order-admin/src/main/java/com/yami/trading/api/controller/ApiWithdrawController.java
+++ b/trading-order-admin/src/main/java/com/yami/trading/api/controller/ApiWithdrawController.java
@@ -1,5 +1,7 @@
package com.yami.trading.api.controller;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.yami.trading.bean.model.CapitaltWallet;
import com.yami.trading.bean.model.Withdraw;
import com.yami.trading.common.constants.Constants;
import com.yami.trading.common.domain.Result;
@@ -8,6 +10,7 @@
import com.yami.trading.common.util.DateUtils;
import com.yami.trading.common.util.StringUtils;
import com.yami.trading.security.common.util.SecurityUtils;
+import com.yami.trading.service.CapitaltWalletService;
import com.yami.trading.service.SessionTokenService;
import com.yami.trading.service.WithdrawService;
import com.yami.trading.service.syspara.SysparaService;
@@ -44,6 +47,8 @@
private SysparaService sysparaService;
@Autowired
protected WalletLogService walletLogService;
+ @Autowired
+ CapitaltWalletService capitaltWalletService;
/**
* 首次进入页面,传递session_token
@@ -73,7 +78,6 @@
String amount, String from, String currency,
String channel){
String partyId = SecurityUtils.getUser().getUserId();
- boolean lock = false;
String error = this.verif(amount);
if (!StringUtils.isNullOrEmpty(error)) {
throw new YamiShopBindException(error);
@@ -86,24 +90,28 @@
throw new YamiShopBindException("系统参数错误");
}
- if ("true".equals(exchange_withdraw_need_safeword)) {
-
- if (StringUtils.isEmptyString(safeword)) {
- throw new YamiShopBindException("资金密码不能为空");
- }
-
- if (safeword.length() < 6 || safeword.length() > 12) {
- throw new YamiShopBindException("资金密码必须6-12位");
- }
- if (!userService.checkLoginSafeword(SecurityUtils.getUser().getUserId(),safeword)){
- throw new YamiShopBindException("资金密码错误");
- }
- }
- Object object = this.sessionTokenService.cacheGet(session_token);
- this.sessionTokenService.del(session_token);
-// if (null == object || !SecurityUtils.getUser().getUserId().equals((String) object)) {
-// throw new YamiShopBindException("请稍后再试");
+// if ("true".equals(exchange_withdraw_need_safeword)) {
+//
+// if (StringUtils.isEmptyString(safeword)) {
+// throw new YamiShopBindException("资金密码不能为空");
+// }
+//
+// if (safeword.length() < 6 || safeword.length() > 12) {
+// throw new YamiShopBindException("资金密码必须6-12位");
+// }
+// if (!userService.checkLoginSafeword(SecurityUtils.getUser().getUserId(),safeword)){
+// throw new YamiShopBindException("资金密码错误");
+// }
// }
+
+ // 获取资金账户(capital)
+ CapitaltWallet capitaltWallet = capitaltWalletService.getOne(new LambdaQueryWrapper<>(CapitaltWallet.class)
+ .eq(CapitaltWallet::getUserId, partyId).last(" limit 1 "));
+ if(capitaltWallet.getMoney().compareTo(new BigDecimal(amount)) < 0){
+ throw new YamiShopBindException("Insufficient available balance for withdrawal!");
+ }
+
+ this.sessionTokenService.del(session_token);
Withdraw withdraw = new Withdraw();
withdraw.setUserId(partyId);
withdraw.setVolume(new BigDecimal(amount_double));
--
Gitblit v1.9.3