From 98b0d601d0bd777660ae57529f31ccdd0abbcabb Mon Sep 17 00:00:00 2001
From: zyy <zyy@email.com>
Date: Thu, 09 Oct 2025 10:15:24 +0800
Subject: [PATCH] 修改余额优化

---
 trading-order-service/src/main/java/com/yami/trading/service/impl/CapitaltWalletServiceImpl.java |    9 +++++++++
 1 files changed, 9 insertions(+), 0 deletions(-)

diff --git a/trading-order-service/src/main/java/com/yami/trading/service/impl/CapitaltWalletServiceImpl.java b/trading-order-service/src/main/java/com/yami/trading/service/impl/CapitaltWalletServiceImpl.java
index bd5a61a..e66fa9d 100644
--- a/trading-order-service/src/main/java/com/yami/trading/service/impl/CapitaltWalletServiceImpl.java
+++ b/trading-order-service/src/main/java/com/yami/trading/service/impl/CapitaltWalletServiceImpl.java
@@ -50,6 +50,9 @@
     @Autowired
     ItemService itemService;
 
+    @Autowired
+    CapitaltWalletMapper capitaltWalletMapper;
+
     @Override
     public CapitaltWallet getUserIdWallet(String userId) {
         return getOne(new LambdaQueryWrapper<>(CapitaltWallet.class)
@@ -135,6 +138,12 @@
             double amount1 = moneyRevise.doubleValue();
             CapitaltWallet capitaltWallet = getOne(new LambdaQueryWrapper<>(CapitaltWallet.class)
                     .eq(CapitaltWallet::getUserId, userId).last(" limit 1 "));
+            if (capitaltWallet == null) {
+                capitaltWallet = new CapitaltWallet();
+                capitaltWallet.setUserId(userId);
+                capitaltWalletMapper.insert(capitaltWallet);
+                throw new YamiShopBindException("请重试");
+            }
             double amount_before = capitaltWallet.getMoney().doubleValue();
             if (accountType == 2 && capitaltWallet.getMoney().subtract(moneyRevise).compareTo(BigDecimal.ZERO) < 0) {
                 throw new YamiShopBindException("账号资金不足");

--
Gitblit v1.9.3