xiaoyong931011
2022-12-05 5e3e6bacb21f7416b822b708cb6595d3cb45f573
src/test/java/cc/mrbird/febs/ChainTest.java
@@ -3,8 +3,35 @@
import cc.mrbird.febs.dapp.chain.ChainEnum;
import cc.mrbird.febs.dapp.chain.ChainService;
import cc.mrbird.febs.dapp.chain.ContractChainService;
import cc.mrbird.febs.dapp.entity.DappFundFlowEntity;
import cc.mrbird.febs.dapp.entity.DappOnlineTransferEntity;
import cc.mrbird.febs.dapp.enumerate.CardPeriod;
import cc.mrbird.febs.dapp.mapper.DappFundFlowDao;
import cc.mrbird.febs.dapp.mapper.DappOnlineTransferDao;
import cc.mrbird.febs.dapp.service.DappSystemService;
//import cc.mrbird.febs.job.SystemTradeJob;
import cc.mrbird.febs.dapp.service.impl.BscCoinContractEvent;
import cc.mrbird.febs.dapp.service.impl.BscUsdtContractEvent;
import cc.mrbird.febs.job.ProfitDailyJob;
import cc.mrbird.febs.rabbit.producer.ChainProducer;
import com.alibaba.fastjson.JSONObject;
import io.reactivex.disposables.Disposable;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.web3j.protocol.Web3j;
import org.web3j.protocol.core.DefaultBlockParameterNumber;
import org.web3j.protocol.http.HttpService;
import org.web3j.protocol.websocket.WebSocketClient;
import org.web3j.protocol.websocket.WebSocketService;
import java.math.BigDecimal;
import java.math.BigInteger;
import java.math.RoundingMode;
import java.net.URI;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
 * @author wzy
@@ -13,10 +40,78 @@
@SpringBootTest
public class ChainTest {
    @Test
    public void balanceOfTest() {
        ContractChainService instance = ChainService.getInstance(ChainEnum.BSC_TFC.name());
    @Autowired
    private BscUsdtContractEvent bscUsdtContractEvent;
        System.out.println(instance.balanceOf("0x4ebdca102623b46a47042d580dddade2a53d057f"));
    @Autowired
    private BscCoinContractEvent bscCoinContractEvent;
    @Test
    public void chainListener(){
        ChainService.contractEventListener(new BigInteger("22934633"), new BigInteger("22934633"), bscUsdtContractEvent, ChainEnum.BSC_USDT.name());
//        ChainService.contractEventListener(new BigInteger("20860178"), new BigInteger("20860178"), bscCoinContractEvent, ChainEnum.BSC_TFC.name());
    }
    @Test
    public void wssChainListener(){
        ChainService.wssContractEventListener(new BigInteger("23591200"), bscUsdtContractEvent, ChainEnum.BSC_USDT.name());
    }
    @Test
    public void wssBaseChainListener(){
//        WebSocketService ws = null;
//        WebSocketClient webSocketClient = null;
//        Web3j web3j = null;
        try {
//            webSocketClient = new WebSocketClient(new URI("wss://bsc-mainnet.nodereal.io/ws/v1/78074065950e4915aef4f12b6f357d16"));
//            ws = new WebSocketService(webSocketClient, true);
//            ws.connect();
//            web3j = Web3j.build(ws);
            HttpService service = new HttpService("https://bsc-dataseed1.ninicoin.io");
            Web3j web3j = Web3j.build(service);
//            EthFilter filter = getFilter(startBlock, null, "0xd9076245473060dda1a65f5f3d89a4d0598995e6");
//
//            Flowable<Log> eventFlowable = web3j.ethLogFlowable(filter);
//            Disposable subscribe = eventFlowable.subscribe(log -> {
//                System.out.println(1111111);
//                System.out.println(log);
//            }, error -> {
//                log.error("币安监听异常", error);
//            });
            System.out.println(1111111);
            Disposable subscription = web3j.blockFlowable(true).subscribe(block -> {
                System.out.println(111);
            }, error -> {
                System.out.println(2222);
            });
//            Disposable subscribe = web3j.replayPastAndFutureTransactionsFlowable(new DefaultBlockParameterNumber(startBlock)).subscribe(tx -> {
//                System.out.println(1111);
//            });
//            Disposable subscribe = web3j.transactionFlowable().subscribe(tx -> {
//                System.out.println(1111);
//            });
//
//            subscription.dispose();
        } catch (Exception e) {
            System.out.println(2222222);
            e.printStackTrace();
        }
    }
//    @Autowired
//    private ProfitDailyJob profitDailyJob;
//
//    @Test
//    public void profitTest() {
//        profitDailyJob.profitDailyJob();
//    }
}