From 370c0e6d54be9222fcaa416fdd605f09e3c49e8a Mon Sep 17 00:00:00 2001
From: zj <1772600164@qq.com>
Date: Sun, 25 May 2025 17:14:45 +0800
Subject: [PATCH] 1

---
 src/main/java/project/web/admin/impl/user/AdminUserServiceImpl.java |   63 ++++++++++++++++++-------------
 1 files changed, 37 insertions(+), 26 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 ac4ebbe..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);
 	
@@ -221,14 +226,14 @@
 				"SELECT party.UUID id, party.NAME name, party.USERNAME username, "
 				+ " party.LOGINAUTHORITY login_authority, party.WITHDRAW_LIMIT_AMOUNT withdraw_limit_amount, party.WITHDRAW_LIMIT_NOW_AMOUNT withdraw_limit_now_amount, "
 				+ " party.LAST_LOGIN_TIME last_loginTime, party.ENABLED enabled, party.ROLENAME rolename, party.CREATE_TIME create_time, "
-				+ " party.REMARKS remarks, wallet.MONEY money, party.USERCODE usercode, "
+				+ " party.REMARKS remarks, wallet.USDT_MONEY money, party.USERCODE usercode, "
 				+ " party_parent.USERNAME username_parent, party.LOGIN_IP login_ip, party.GIFT_USER gift_user, party.USER_LEVEL user_level, "
-				+ " party.REGSITER_USERCODE register_usercode,party.OPEN_BLANK open_blank "
+				+ " party.REGSITER_USERCODE register_usercode"
 				+ " ");
 		
 		queryString.append(
 				" FROM PAT_PARTY party LEFT JOIN PAT_USER_RECOM user ON user.PARTY_ID = party.UUID "
-				+ " LEFT JOIN T_WALLET wallet ON wallet.PARTY_ID = party.UUID "
+				+ " LEFT JOIN T_WALLET_GATHER wallet ON wallet.PARTY_ID = party.UUID "
 				+ " LEFT JOIN PAT_PARTY party_parent ON user.RECO_ID = party_parent.UUID "
 				
 				+ " WHERE 1 = 1 ");
@@ -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