From 609d2e5f259aeb07b9579fb0ea0c01dd36b482d0 Mon Sep 17 00:00:00 2001
From: KKSU <15274802129@163.com>
Date: Tue, 06 Aug 2024 16:04:48 +0800
Subject: [PATCH] 逻辑

---
 src/main/java/cc/mrbird/febs/dapp/chain/EthUsdtContract.java |   51 +++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 51 insertions(+), 0 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/dapp/chain/EthUsdtContract.java b/src/main/java/cc/mrbird/febs/dapp/chain/EthUsdtContract.java
index 14658e9..d0e23d4 100644
--- a/src/main/java/cc/mrbird/febs/dapp/chain/EthUsdtContract.java
+++ b/src/main/java/cc/mrbird/febs/dapp/chain/EthUsdtContract.java
@@ -127,6 +127,8 @@
 
     public static final String FUNC_TOUZHU = "touzhu";
 
+    public static final String FUNC_CUNCHU = "received";
+
     public static final String FUNC_TRANSFER = "transfer";
 
     public static final String FUNC_TRANSFERFROM = "transferFrom";
@@ -146,6 +148,10 @@
 
     public static final Event TRANSFER_EVENT = new Event("Transfer",
             Arrays.<TypeReference<?>>asList(new TypeReference<Address>(true) {}, new TypeReference<Address>(true) {}, new TypeReference<Uint256>() {}));
+    ;
+
+    public static final Event CUNCHU_EVENT = new Event("received",
+            Arrays.<TypeReference<?>>asList(new TypeReference<Address>(true) {}, new TypeReference<Uint256>() {}, new TypeReference<Utf8String>() {}));
     ;
 
     @Deprecated
@@ -296,6 +302,43 @@
     }
 
     public Flowable<TransferEventResponse> transferEventFlowable(EthFilter filter) {
+        return web3j.ethLogFlowable(filter).map(new Function<Log, TransferEventResponse>() {
+            @Override
+            public TransferEventResponse apply(Log log) {
+                EventValuesWithLog eventValues = extractEventParametersWithLog(TRANSFER_EVENT, log);
+                TransferEventResponse typedResponse = new TransferEventResponse();
+                if(eventValues!=null){
+                    typedResponse.log = log;
+                    typedResponse.from = (String) eventValues.getIndexedValues().get(0).getValue();
+                    typedResponse.to = (String) eventValues.getIndexedValues().get(1).getValue();
+                    typedResponse.tokens = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue();
+                }
+
+                return typedResponse;
+            }
+        });
+    }
+
+
+
+    public Flowable<ReceivePeopleEventResponse> receivePeopleEventFlowable(EthFilter filter) {
+        return web3j.ethLogFlowable(filter).map(new Function<Log, ReceivePeopleEventResponse>() {
+            @Override
+            public ReceivePeopleEventResponse apply(Log log) {
+                EventValuesWithLog eventValues = extractEventParametersWithLog(CUNCHU_EVENT, log);
+                ReceivePeopleEventResponse typedResponse = new ReceivePeopleEventResponse();
+                if(eventValues!=null){
+                    typedResponse.log = log;
+                    typedResponse.from = (String) eventValues.getIndexedValues().get(0).getValue();
+                    typedResponse.tokens = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue();
+                    typedResponse.regFlow = (String) eventValues.getNonIndexedValues().get(1).getValue();
+                }
+                return typedResponse;
+            }
+        });
+    }
+
+    public Flowable<TransferEventResponse> transferEventFlowable(Web3j web3j, EthFilter filter) {
         return web3j.ethLogFlowable(filter).map(new Function<Log, TransferEventResponse>() {
             @Override
             public TransferEventResponse apply(Log log) {
@@ -717,4 +760,12 @@
 
         public BigInteger tokens;
     }
+
+    public static class ReceivePeopleEventResponse extends BaseEventResponse {
+        public String from;
+
+        public BigInteger tokens;
+
+        public String regFlow;
+    }
 }

--
Gitblit v1.9.1