From 0c389d73cc79a0027cf779721c6bf184b12f5d86 Mon Sep 17 00:00:00 2001
From: zj <1772600164@qq.com>
Date: Tue, 30 Sep 2025 18:53:21 +0800
Subject: [PATCH] 1

---
 trading-order-admin/src/main/java/com/yami/trading/api/controller/ApiWalletController.java |   43 ++++++++++++++++++++++++++++++++++---------
 1 files changed, 34 insertions(+), 9 deletions(-)

diff --git a/trading-order-admin/src/main/java/com/yami/trading/api/controller/ApiWalletController.java b/trading-order-admin/src/main/java/com/yami/trading/api/controller/ApiWalletController.java
index b9a9916..21b46b1 100644
--- a/trading-order-admin/src/main/java/com/yami/trading/api/controller/ApiWalletController.java
+++ b/trading-order-admin/src/main/java/com/yami/trading/api/controller/ApiWalletController.java
@@ -1,5 +1,6 @@
 package com.yami.trading.api.controller;
 
+import cn.hutool.core.collection.CollectionUtil;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.yami.trading.api.dto.ChannelBlockchainDto;
 import com.yami.trading.api.model.GetChannelBlockchainModel;
@@ -215,13 +216,13 @@
         df2.setRoundingMode(RoundingMode.FLOOR);
         // String partyId ="dcc0dd35a49c383dadabc4dc030afe70";
         String partyId = SecurityUtils.getCurrentUserId();
-        CapitaltWallet usdt = null;
+        Wallet usdt = null;
         if (StringUtils.isNotEmpty(partyId)) {
-//            usdt = this.walletService.saveWalletByPartyId(partyId);
-            usdt = capitaltWalletService.getUserIdWallet(partyId);
+            usdt = this.walletService.saveWalletByPartyId(partyId);
+//            usdt = capitaltWalletService.getUserIdWallet(partyId);
         }
         if (null == usdt) {
-            usdt = new CapitaltWallet();
+            usdt = new Wallet();
             usdt.setMoney(new BigDecimal(0));
             usdt.setLockMoney(new BigDecimal(0));
             usdt.setFreezeMoney(new BigDecimal(0));
@@ -275,7 +276,7 @@
         }
         List<WalletExtend> walletExtends = null;
         log.info(list_symbol.toString() + "=============");
-        if (StringUtils.isNotEmpty(partyId)) {
+        if (StringUtils.isNotEmpty(partyId) && CollectionUtil.isNotEmpty(list_symbol)) {
             walletExtends = this.walletService.findExtend(partyId, list_symbol);
         }
         if (null == walletExtends) {
@@ -287,7 +288,7 @@
             for (int j = 0; j < walletExtends.size(); j++) {
                 WalletExtend walletExtend = walletExtends.get(j);
                 if (walletExtend.getWallettype().equals(list_symbol.get(i))) {
-                    walletExtend.setAmount(Double.valueOf(df2.format(walletExtend.getAmount())));
+                    walletExtend.setAmount(Double.valueOf(df2.format(walletExtend.getAmount()-walletExtend.getFreezeAmount())));
                     walletExtend.setLockAmount(Double.valueOf(df2.format(walletExtend.getLockAmount())));
                     walletExtend.setFreezeAmount(Double.valueOf(df2.format(walletExtend.getFreezeAmount())));
                     walletExtendsRet.add(walletExtend);
@@ -365,8 +366,8 @@
             } else {
                 mapUsdt.put("lock_amount", null);
             }
-            if (mapRet.get("freeze_amount") != null) {
-                mapUsdt.put("freeze_amount", df2.format(Double.parseDouble(mapRet.get("freeze_amount").toString())));
+            if (mapRet.get("freeze_money") != null) {
+                mapUsdt.put("freeze_amount", df2.format(Double.parseDouble(mapRet.get("freeze_money").toString())));
             } else {
                 mapUsdt.put("freeze_amount", null);
             }
@@ -375,7 +376,31 @@
             mapUsdt.put("frozenAmount", 0);
             extendsList.add(0, mapUsdt);
         }
-        mapRet.put("extends", extendsList);
+
+        // 分离 USDC 和 USDT,并保留其他数据
+        Map<String, Object> usdcEntry = null;
+        Map<String, Object> usdtEntry = null;
+        List<Map<String, Object>> otherEntries = new ArrayList<>();
+
+        for (Map<String, Object> entry : extendsList) {
+            String symbolData = (String) entry.get("symbol_data");
+            if ("usdc".equals(symbolData)) {
+                usdcEntry = entry;
+            } else if ("usdt".equals(symbolData)) {
+                usdtEntry = entry;
+            } else {
+                otherEntries.add(entry);
+            }
+        }
+
+        // 重新组合,USDC 第一,USDT 第二,其他保持原顺序
+        List<Map<String, Object>> newExtendsList = new ArrayList<>();
+        if (usdcEntry != null) newExtendsList.add(usdcEntry);
+        if (usdtEntry != null) newExtendsList.add(usdtEntry);
+        newExtendsList.addAll(otherEntries);
+
+        mapRet.put("extends", newExtendsList);
+
         return Result.succeed(mapRet);
     }
 

--
Gitblit v1.9.3