From a2dc849bc20bffaa4ad45d68e401d3892ace24b3 Mon Sep 17 00:00:00 2001
From: zj <1772600164@qq.com>
Date: Fri, 04 Jul 2025 22:21:20 +0800
Subject: [PATCH] 1

---
 trading-order-admin/src/main/java/com/yami/trading/api/controller/ApiWithdrawController.java |   18 +++++++++++++-----
 1 files changed, 13 insertions(+), 5 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..384d8ca 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);
@@ -99,11 +103,15 @@
                 throw new YamiShopBindException("资金密码错误");
             }
         }
-        Object object = this.sessionTokenService.cacheGet(session_token);
+
+        // 获取资金账户(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("可提现余额不足!");
+        }
+
         this.sessionTokenService.del(session_token);
-//        if (null == object || !SecurityUtils.getUser().getUserId().equals((String) object)) {
-//            throw new YamiShopBindException("请稍后再试");
-//        }
         Withdraw withdraw = new Withdraw();
         withdraw.setUserId(partyId);
         withdraw.setVolume(new BigDecimal(amount_double));

--
Gitblit v1.9.3