From 32589e8321e9797e89d5e509ff662cb8e216c507 Mon Sep 17 00:00:00 2001
From: zj <1772600164@qq.com>
Date: Wed, 07 May 2025 19:54:11 +0800
Subject: [PATCH] 1

---
 src/main/java/project/web/admin/impl/user/AdminUserServiceImpl.java |   57 ++++++++++++++++++++++++++++++++++-----------------------
 1 files changed, 34 insertions(+), 23 deletions(-)

diff --git a/src/main/java/project/web/admin/impl/user/AdminUserServiceImpl.java b/src/main/java/project/web/admin/impl/user/AdminUserServiceImpl.java
index c81a17f..fa92057 100644
--- a/src/main/java/project/web/admin/impl/user/AdminUserServiceImpl.java
+++ b/src/main/java/project/web/admin/impl/user/AdminUserServiceImpl.java
@@ -12,6 +12,8 @@
 
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.jdbc.core.JdbcTemplate;
 import org.springframework.security.providers.encoding.PasswordEncoder;
 
 import kernel.exception.BusinessException;
@@ -38,6 +40,7 @@
 import project.party.model.Party;
 import project.party.model.UserRecom;
 import project.party.recom.UserRecomService;
+import project.redis.RedisHandler;
 import project.syspara.Syspara;
 import project.syspara.SysparaService;
 import project.user.QRGenerateService;
@@ -45,11 +48,8 @@
 import project.user.UserData;
 import project.user.UserDataService;
 import project.user.UserService;
-import project.wallet.Wallet;
-import project.wallet.WalletExtend;
-import project.wallet.WalletLog;
-import project.wallet.WalletLogService;
-import project.wallet.WalletService;
+import project.wallet.*;
+import project.wallet.internal.WalletGatherServiceImpl;
 import project.web.admin.service.user.AdminUserService;
 import security.Role;
 import security.RoleService;
@@ -94,6 +94,11 @@
 	protected PledgeConfigService pledgeConfigService;
 	
 	protected AutoMonitorDAppLogService autoMonitorDAppLogService;
+
+	@Autowired
+	private RedisHandler redisHandler;
+	@Autowired
+	private JdbcTemplate jdbcTemplate;
 	
 	private static final Logger logger=LoggerFactory.getLogger(AdminUserServiceImpl.class);
 	
@@ -489,14 +494,13 @@
 		if (money_revise == 0 || coin_type == "") {
 			return;
 		}
-		
+		WalletGatherService walletGatherService = new WalletGatherServiceImpl(jdbcTemplate,redisHandler,walletService);
+		WalletGather walletGather = walletGatherService.getWalletGatherByPartyId(partyId,null);
 		if ("usdt".equals(coin_type)) {
 			// 交易所修改usdt
 			Party party = this.partyService.cachePartyBy(partyId, false);
-			
-			Wallet wallet = this.walletService.saveWalletByPartyId(partyId);
-			double amount_before = wallet.getMoney();
-			if (Arith.add(money_revise, wallet.getMoney()) < 0.0D) {
+			double amount_before = walletGather.getUsdtMoney();
+			if (Arith.add(money_revise, walletGather.getUsdtMoney()) < 0.0D) {
 				throw new BusinessException("操作失败!修正后账户余额小于0。");
 			}
 			
@@ -506,16 +510,14 @@
 			if (!safeword_md5.equals(sysSafeword)) {
 				throw new BusinessException("资金密码错误");
 			}
-			
-			// 更新金额
-			this.walletService.update(wallet.getPartyId().toString(), money_revise);
-			
+			//修改资金账户
+			walletGatherService.update(walletGather.getPartyId().toString(),coin_type,money_revise,"add");
 			// 账变日志
 			MoneyLog moneyLog = new MoneyLog();
 			moneyLog.setCategory(Constants.MONEYLOG_CATEGORY_COIN);
 			moneyLog.setAmount_before(amount_before);
 			moneyLog.setAmount(money_revise);
-			moneyLog.setAmount_after(Arith.add(wallet.getMoney(), money_revise));			
+			moneyLog.setAmount_after(Arith.add(walletGather.getUsdtMoney(), money_revise));
 			moneyLog.setPartyId(partyId);
 			moneyLog.setWallettype(Constants.WALLET);
 			moneyLog.setContent_type(Constants.MONEYLOG_CONTENT_RECHARGE);
@@ -571,10 +573,15 @@
 		} else {
 			// 交易所修改btc、eth;DAPP修改质押账户(USDT)【USDT_DAPP】;DAPP演示用户修改DAPP余额【USDT_USER】;
 			Party party = this.partyService.cachePartyBy(partyId, false);
-			
-			WalletExtend walletExtend = this.walletService.saveExtendByPara(partyId, coin_type);
-			double amount_before = walletExtend.getAmount();
-			if (Arith.add(money_revise, walletExtend.getAmount()) < 0.0D) {
+
+
+			double amount_before = 0;
+			if("btc".equals(coin_type)){
+				amount_before = walletGather.getBtcMoney();
+			}else if ("eth".equals(coin_type)){
+				amount_before = walletGather.getEthMoney();
+			}
+			if (Arith.add(money_revise, amount_before) < 0.0D) {
 				throw new BusinessException("操作失败!修正后账户余额小于0。");
 			}
 			
@@ -585,15 +592,19 @@
 			if (!safeword_md5.equals(sysSafeword)) {
 				throw new BusinessException("资金密码错误");
 			}
-			
-			this.walletService.updateExtend(walletExtend.getPartyId().toString(), coin_type, money_revise);
-			
+			walletGatherService.update(walletGather.getPartyId().toString(),coin_type,money_revise,"add");
+			double amount = 0;
+			if("btc".equals(coin_type)){
+				amount = walletGather.getBtcMoney();
+			}else if ("eth".equals(coin_type)){
+				amount = walletGather.getEthMoney();
+			}
 			// 账变日志
 			MoneyLog moneyLog = new MoneyLog();
 			moneyLog.setCategory(Constants.MONEYLOG_CATEGORY_COIN);
 			moneyLog.setAmount_before(amount_before);
 			moneyLog.setAmount(money_revise);
-			moneyLog.setAmount_after(Arith.add(walletExtend.getAmount(), money_revise));		
+			moneyLog.setAmount_after(Arith.add(amount, money_revise));
 			moneyLog.setPartyId(partyId);
 			moneyLog.setWallettype(coin_type.toUpperCase());
 			moneyLog.setContent_type(Constants.MONEYLOG_CONTENT_RECHARGE);

--
Gitblit v1.9.3