From 113f3a5d3b843fba68ce50a3ba3255c66ca1e15f Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Tue, 17 Jan 2023 20:13:57 +0800
Subject: [PATCH] 20221227 充值归集
---
src/main/java/cc/mrbird/febs/mall/chain/service/BscUsdtContractEvent.java | 31 ++++++++++++++-----------------
1 files changed, 14 insertions(+), 17 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/mall/chain/service/BscUsdtContractEvent.java b/src/main/java/cc/mrbird/febs/mall/chain/service/BscUsdtContractEvent.java
index fcffcac..08ae3aa 100644
--- a/src/main/java/cc/mrbird/febs/mall/chain/service/BscUsdtContractEvent.java
+++ b/src/main/java/cc/mrbird/febs/mall/chain/service/BscUsdtContractEvent.java
@@ -4,6 +4,7 @@
import cc.mrbird.febs.common.enumerates.MallMoneyFlowTypeEnum;
import cc.mrbird.febs.common.utils.AppContants;
import cc.mrbird.febs.common.utils.RedisUtils;
+import cc.mrbird.febs.mall.chain.constants.ChainConstants;
import cc.mrbird.febs.mall.chain.enums.ChainEnum;
import cc.mrbird.febs.mall.chain.enums.CoinTypeEnum;
import cc.mrbird.febs.mall.entity.MallMemberWallet;
@@ -14,6 +15,7 @@
import cc.mrbird.febs.mall.mapper.MemberCoinAddressDao;
import cc.mrbird.febs.mall.mapper.MemberCoinChargeDao;
import cc.mrbird.febs.mall.service.IMallMoneyFlowService;
+import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.ObjectUtil;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections.CollectionUtils;
@@ -26,6 +28,7 @@
import java.util.HashMap;
import java.util.List;
import java.util.Map;
+import java.util.Set;
@Slf4j
@Service
@@ -48,19 +51,16 @@
return;
}
- redisUtils.set(AppContants.REDIS_KEY_BLOCK_USDT_NUM, e.log.getBlockNumber());
+// redisUtils.set(AppContants.REDIS_KEY_BLOCK_USDT_NUM, e.log.getBlockNumber());
String address = e.to;
String hash = e.log.getTransactionHash();
- MemberCoinAddressEntity coinAddressEntity = memberCoinAddressDao.selectCoinAddressByAddressAndSymbol(address, CoinTypeEnum.USDT.toString());
- if (coinAddressEntity == null) {
- return;
- }
+
+ Set<Object> addressList = redisUtils.sGet(ChainConstants.REDIS_KEY_SYSTEM_ADDRESS);
// 判断对方打款地址是否为源池地址
- if(ObjectUtil.isNotEmpty(coinAddressEntity)){
-// if (ChainEnum.BSC_USDT.getAddress().toLowerCase().equals(e.to)) {
+ if(CollUtil.isNotEmpty(addressList) && addressList.contains(address)){
log.info("触发USDT合约监听事件");
- redisUtils.set(AppContants.REDIS_KEY_BLOCK_ETH_INCREMENT_NUM, e.log.getBlockNumber());
+// redisUtils.set(AppContants.REDIS_KEY_BLOCK_ETH_INCREMENT_NUM, e.log.getBlockNumber());
// hash没有用过
Map<String, Object> param = new HashMap<>();
param.put("hash", hash);
@@ -70,10 +70,10 @@
return;
}
-// MemberCoinAddressEntity coinAddressEntity = memberCoinAddressDao.selectCoinAddressByAddressAndSymbol(address, CoinTypeEnum.USDT.toString());
-// if (coinAddressEntity == null) {
-// return;
-// }
+ MemberCoinAddressEntity coinAddressEntity = memberCoinAddressDao.selectCoinAddressByAddressAndSymbol(address, CoinTypeEnum.USDT.toString());
+ if (coinAddressEntity == null) {
+ return;
+ }
Long memberId = coinAddressEntity.getMemberId();
ContractChainService sourceUsdtInstance = ChainService.getInstance(ChainEnum.BSC_USDT.name());
int decimals = sourceUsdtInstance.decimals();
@@ -105,14 +105,11 @@
FlowTypeEnum.BALANCE.getValue(),
MallMoneyFlowTypeEnum.CHARGE.getName()
);
- // 同步
-// BigDecimal bigDecimal = ChainService.getInstance(ChainEnum.BSC_USDT.name()).balanceOf(e.to);
-
}
-
-
}
}
+
+
public String insertCoinCharge(String address, Long memberId, BigDecimal newBalance, String symbol, String tag, BigDecimal lastAmount, String hash) {
MemberCoinChargeEntity memberCoinChargeEntity = new MemberCoinChargeEntity();
memberCoinChargeEntity.setAddress(address);
--
Gitblit v1.9.1