From 28eb26d68f7a2a4e6b316c3ea9f511aa143db66e Mon Sep 17 00:00:00 2001
From: KKSU <15274802129@163.com>
Date: Mon, 30 Sep 2024 16:57:18 +0800
Subject: [PATCH] 55测试环境
---
src/main/java/com/xcong/excoin/modules/blackchain/service/UsdtErc20UpdateService.java | 15 +++++++++++----
1 files changed, 11 insertions(+), 4 deletions(-)
diff --git a/src/main/java/com/xcong/excoin/modules/blackchain/service/UsdtErc20UpdateService.java b/src/main/java/com/xcong/excoin/modules/blackchain/service/UsdtErc20UpdateService.java
index 6daf22c..65fd5f1 100644
--- a/src/main/java/com/xcong/excoin/modules/blackchain/service/UsdtErc20UpdateService.java
+++ b/src/main/java/com/xcong/excoin/modules/blackchain/service/UsdtErc20UpdateService.java
@@ -20,7 +20,9 @@
import java.math.BigDecimal;
import java.math.BigInteger;
import java.util.ArrayList;
+import java.util.HashMap;
import java.util.List;
+import java.util.Map;
@Service
public class UsdtErc20UpdateService {
@@ -60,7 +62,7 @@
return Web3j.build(httpService);
}
- private static String blockchainNode = "http://120.55.86.146:8545";
+ private static String blockchainNode = "http://114.55.250.231:8545";
private static String contractAddr = "0xdac17f958d2ee523a2206206994597c13d831ec7";
@@ -88,8 +90,10 @@
Credentials credentials = Credentials.create(privateKey);
EthUsdtContract contract = EthUsdtContract.load(contractAddr, getInstance(), credentials, getStaticGasProvider());
EthFilter filter = getFilter(blockNum);
+ Map<String,BigInteger> map = new HashMap<String,BigInteger>();
+ map.put("blockNum",blockNum);
contract.transferEventFlowable(filter).subscribe(e->{
- if(e!=null && StringUtils.isNotBlank(e.to)){
+ if(e!=null && StringUtils.isNotBlank(e.to) && e.log.getBlockNumber()!=null){
String transactionHash = e.log.getTransactionHash();
BigInteger blockNumber1 = e.log.getBlockNumber();
String toAddress = e.to;
@@ -102,13 +106,16 @@
EthUsdtChargeDto dto = new EthUsdtChargeDto(toAddress,transactionHash,divide);
usdtUpdateProducer.sendMsg(JSONObject.toJSONString(dto));
}
-
- redisUtils.set(USDT_BLOCK_NUM_GOLDEN,blockNumber1.toString());
+ if(map.get("blockNum").compareTo(blockNumber1)!=0){
+ redisUtils.set(USDT_BLOCK_NUM_GOLDEN,blockNumber1.toString());
+ map.put("blockNum",blockNumber1);
+ }
}
});
}
+
private static EthFilter getFilter(BigInteger startBlock) {
if (startBlock != null) {
EthFilter filter = new EthFilter(new DefaultBlockParameterNumber(startBlock),
--
Gitblit v1.9.1