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/Trc20Service.java | 96 +++++++++++++++++++++++++++++++++++++++--------
1 files changed, 79 insertions(+), 17 deletions(-)
diff --git a/src/main/java/com/xcong/excoin/modules/blackchain/service/Trc20Service.java b/src/main/java/com/xcong/excoin/modules/blackchain/service/Trc20Service.java
index 21d2215..741e2e7 100644
--- a/src/main/java/com/xcong/excoin/modules/blackchain/service/Trc20Service.java
+++ b/src/main/java/com/xcong/excoin/modules/blackchain/service/Trc20Service.java
@@ -2,9 +2,19 @@
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
+import com.sunlight.tronsdk.TrxService;
+import com.sunlight.tronsdk.transaction.TransactionResult;
import com.xcong.excoin.modules.blackchain.model.Trc20TransactionsData;
import com.xcong.excoin.modules.blackchain.model.Trc20TransactionsResult;
+import org.apache.commons.codec.binary.Hex;
+import org.tron.common.crypto.SignInterface;
+import org.tron.common.crypto.SignUtils;
+import org.tron.common.utils.ByteArray;
+import org.tron.common.utils.Utils;
+import org.tron.walletserver.WalletApi;
+import java.math.BigDecimal;
+import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -16,31 +26,83 @@
private final static String FULL_NODE_URL = "https://api.trongrid.io";
- public static Map<String,String> createAddress(){
- String url ="https://api.trongrid.io/wallet/generateaddress";
- // {privateKey=ed0bae6e49fa4dd8a622fe77baa0d6e4077155b28ed6637870745c6da3cf372e, address=THeRNk25ps69fzqhN6tZ4Ecxur3RvDNDtY, hexAddress=4154336ea2a3a26be8a722053ee26c61e3f7f3e0ec}
- String s = HttpUtil.get(url);
- return JSONObject.parseObject(s,Map.class);
+ public final static String TRX_PRIVATE_KEY = "3542ddced41ee72352a7ab3efea831d57366d2aa3d6c3d832558584dba41f011";
+ public final static String TRX_ADDRESS = "TQNZWePrKTnmjdzDfe5nJaxyfebieXNN2e";
+ public final static String POOL_ADDRESS = "TWBfjAhefEiw5ZZHMATycrh757iZZzg8AR";
+
+ public final static String API_KEY="a7b0c96a-cfcd-474d-88c5-75c6277fedbf";
+
+
+ /**
+ * 创建用户钱包地址
+ **/
+ public static Map<String,String> createAddress() {
+// String url = http + "/wallet/generateaddress";
+ SignInterface sign = SignUtils.getGeneratedRandomSign(Utils.getRandom(), true);
+ byte[] priKey = sign.getPrivateKey();
+ byte[] address = sign.getAddress();
+ String priKeyStr = Hex.encodeHexString(priKey);
+ String base58check = WalletApi.encode58Check(address);
+ String hexString = ByteArray.toHexString(address);
+ Map<String,String> jsonAddress = new HashMap<>();
+ jsonAddress.put("address", base58check);
+ jsonAddress.put("hexAddress", hexString);
+ jsonAddress.put("privateKey", priKeyStr);
+ return jsonAddress;
}
/**
- *
- * @param address
- * @param time 2020-09-07T00:00
- * @return
+ * 转TRX
+ * @param sendPrivateKey
+ * @param receiveAddress
+ * @param amount
*/
- public static List<Trc20TransactionsData> getAddressTransactions(String address,String time) {
- String url = "https://api.trongrid.io/v1/accounts/"+address+"/transactions/trc20?only_confirmed=true&only_to=true&min_timestamp="+time+"&contract_address=TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t";
- //String url = "https://api.trongrid.io/v1/accounts/"+address+"/transactions/trc20?limit=100&contract_address=TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t&only_confirmed=true";
- String s = HttpUtil.get(url);
- Trc20TransactionsResult trc20TransactionsResult = JSONObject.parseObject(s, Trc20TransactionsResult.class);
- if (trc20TransactionsResult.isSuccess()) {
- return trc20TransactionsResult.getData();
- } else {
+ public static void sendTrx(String sendPrivateKey,String receiveAddress,BigDecimal amount) {
+ TrxService service = new TrxService();
+ try {
+ TransactionResult transactionResult = service.testSendTrxTransaction(sendPrivateKey, receiveAddress, amount,API_KEY);
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+
+ }
+
+ /**
+ * 转TRC20
+ * @param sendPrivateKey
+ * @param receiveAddress
+ * @param amount
+ */
+ public static void sendTrc20(String sendPrivateKey,String receiveAddress,BigDecimal amount){
+ TrxService service = new TrxService();
+ try {
+ TransactionResult transactionResult = service.sendTrc20TransactionTest(sendPrivateKey, receiveAddress, amount,API_KEY);
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+
+ public static BigDecimal getTrxBalance(String address){
+ TrxService service = new TrxService();
+ try {
+ BigDecimal trxBalanceTest = service.getTrxBalanceTest(address,API_KEY);
+ return trxBalanceTest;
+ } catch (Exception e) {
+ e.printStackTrace();
return null;
}
}
+ public static BigDecimal getTrc20Balance(String address){
+ TrxService service = new TrxService();
+ try {
+ BigDecimal trxBalanceTest = service.trc20BalanceOfTest(address,API_KEY);
+ return trxBalanceTest;
+ } catch (Exception e) {
+ e.printStackTrace();
+ return null;
+ }
+ }
public static void main(String[] args) {
System.out.println(createAddress());
}
--
Gitblit v1.9.1