From c56372c3c3320a92af9b8fcd7e31ac29139f98ba Mon Sep 17 00:00:00 2001 From: xiaoyong931011 <15274802129@163.com> Date: Mon, 03 Apr 2023 01:27:49 +0800 Subject: [PATCH] 设定时区,这样创建的时间就不会出现问题 --- src/main/java/cc/mrbird/febs/mall/chain/service/BscUsdtContractEvent.java | 30 ++++++++++++++---------------- 1 files changed, 14 insertions(+), 16 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..fc6037a 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,17 +51,15 @@ 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; - } +// List<String> tdCoinWallets = memberCoinAddressDao.selectAllSymbolAddress(CoinTypeEnum.USDT.toString(),"ERC20"); + 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)){ +// if(CollUtil.isNotEmpty(tdCoinWallets) && tdCoinWallets.contains(address)){ log.info("触发USDT合约监听事件"); redisUtils.set(AppContants.REDIS_KEY_BLOCK_ETH_INCREMENT_NUM, e.log.getBlockNumber()); // hash没有用过 @@ -70,10 +71,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 +106,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