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

---
 xinbi-new.zip                                                       |    0 
 src/main/java/project/web/api/UserController.java                   |    4 +-
 .idea/encodings.xml                                                 |    6 +++
 src/main/java/project/web/admin/impl/user/AdminUserServiceImpl.java |   57 +++++++++++++++++-----------
 .idea/dataSources.xml                                               |   15 +++++++
 .idea/webContexts.xml                                               |   10 +++++
 src/main/java/data/loadcache/WalletLoadCacheService.java            |    4 +-
 7 files changed, 69 insertions(+), 27 deletions(-)

diff --git a/.idea/dataSources.xml b/.idea/dataSources.xml
new file mode 100644
index 0000000..3d10647
--- /dev/null
+++ b/.idea/dataSources.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+  <component name="DataSourceManagerImpl" format="xml" multifile-model="true">
+    <data-source source="LOCAL" name="log" uuid="d4325c10-423a-40e3-ae89-387d8b8b033a">
+      <driver-ref>sqlite.xerial</driver-ref>
+      <synchronize>true</synchronize>
+      <jdbc-driver>org.sqlite.JDBC</jdbc-driver>
+      <jdbc-url>jdbc:sqlite:D:\Backup\Downloads\log.db</jdbc-url>
+      <jdbc-additional-properties>
+        <property name="com.intellij.clouds.kubernetes.db.enabled" value="false" />
+      </jdbc-additional-properties>
+      <working-dir>$ProjectFileDir$</working-dir>
+    </data-source>
+  </component>
+</project>
\ No newline at end of file
diff --git a/.idea/encodings.xml b/.idea/encodings.xml
new file mode 100644
index 0000000..2bccb6e
--- /dev/null
+++ b/.idea/encodings.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+  <component name="Encoding">
+    <file url="file://$PROJECT_DIR$/../../Backup/Downloads/LocalUserController.class01" charset="GBK" />
+  </component>
+</project>
\ No newline at end of file
diff --git a/.idea/webContexts.xml b/.idea/webContexts.xml
new file mode 100644
index 0000000..6a2bf5d
--- /dev/null
+++ b/.idea/webContexts.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+  <component name="WebContextManager">
+    <option name="state">
+      <map>
+        <entry key="file://$PROJECT_DIR$/src/main/webapp/news_list.jsp" value="file://$PROJECT_DIR$/src/main/webapp" />
+      </map>
+    </option>
+  </component>
+</project>
\ No newline at end of file
diff --git a/src/main/java/data/loadcache/WalletLoadCacheService.java b/src/main/java/data/loadcache/WalletLoadCacheService.java
index 43b732f..94d634b 100644
--- a/src/main/java/data/loadcache/WalletLoadCacheService.java
+++ b/src/main/java/data/loadcache/WalletLoadCacheService.java
@@ -26,8 +26,8 @@
 	private RedisHandler redisHandler;
 
 	public void loadcache() {
-		loadWallet();
-		logger.info("完成Wallet数据加载redis");
+//		loadWallet();
+//		logger.info("完成Wallet数据加载redis");
 		loadWalletExtend();
 		logger.info("完成WalletExtend数据加载redis");
 		loadExchangeRate();
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);
diff --git a/src/main/java/project/web/api/UserController.java b/src/main/java/project/web/api/UserController.java
index e5b8e9f..d99b193 100644
--- a/src/main/java/project/web/api/UserController.java
+++ b/src/main/java/project/web/api/UserController.java
@@ -998,9 +998,9 @@
 				data.put("phone", StringUtils.isEmptyString(party.getPhone()) || false == party.getPhone_authority() ? "" : party.getPhone());
 				data.put("phone_filled", StringUtils.isEmptyString(party.getPhone()) ? "" : party.getPhone());
 				data.put("phone_authority", party.getPhone_authority());
-				data.put("email", StringUtils.isEmptyString(party.getEmail()) || false == party.getEmail_authority() ? "" : party.getEmail());
+				data.put("email", party.getEmail());
 				data.put("email_filled", StringUtils.isEmptyString(party.getEmail()) ? "" : party.getEmail());
-				data.put("email_authority", party.getEmail_authority());
+				data.put("email_authority", true);
 				data.put("google_auth_secret", StringUtils.isEmptyString(secUser.getGoogle_auth_secret()) || false == secUser.isGoogle_auth_bind() ? "" : secUser.getGoogle_auth_secret());
 				data.put("google_auth_secret_filled", StringUtils.isEmptyString(secUser.getGoogle_auth_secret()) ? "" : secUser.getGoogle_auth_secret());
 				data.put("google_auth_bind", secUser.isGoogle_auth_bind());
diff --git a/xinbi-new.zip b/xinbi-new.zip
new file mode 100644
index 0000000..938568f
--- /dev/null
+++ b/xinbi-new.zip
Binary files differ

--
Gitblit v1.9.3