From 19612f8cd0963f8f3db5f0afa97d99a94047c0d7 Mon Sep 17 00:00:00 2001 From: xiaoyong931011 <15274802129@163.com> Date: Mon, 09 Jan 2023 10:16:10 +0800 Subject: [PATCH] 20221227 充值归集 --- src/test/java/cc/mrbird/febs/ProfitTest.java | 66 ++++++++++++++++++++++++++++++-- 1 files changed, 61 insertions(+), 5 deletions(-) diff --git a/src/test/java/cc/mrbird/febs/ProfitTest.java b/src/test/java/cc/mrbird/febs/ProfitTest.java index 5bd823a..3bf561e 100644 --- a/src/test/java/cc/mrbird/febs/ProfitTest.java +++ b/src/test/java/cc/mrbird/febs/ProfitTest.java @@ -6,6 +6,13 @@ import cc.mrbird.febs.common.utils.AppContants; import cc.mrbird.febs.common.utils.LoginUserUtil; import cc.mrbird.febs.common.utils.MallUtils; +import cc.mrbird.febs.common.utils.RedisUtils; +import cc.mrbird.febs.mall.chain.enums.ChainEnum; +import cc.mrbird.febs.mall.chain.enums.EthService; +import cc.mrbird.febs.mall.chain.service.BaseCoinService; +import cc.mrbird.febs.mall.chain.service.ChainService; +import cc.mrbird.febs.mall.chain.service.ContractEventService; +import cc.mrbird.febs.mall.chain.service.UsdtErc20UpdateService; import cc.mrbird.febs.mall.entity.*; import cc.mrbird.febs.mall.mapper.*; import cc.mrbird.febs.mall.quartz.OrderSettlementJob; @@ -26,10 +33,13 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; +import javax.annotation.Resource; import java.math.BigDecimal; +import java.math.BigInteger; import java.text.DecimalFormat; import java.text.SimpleDateFormat; import java.util.*; +import java.util.concurrent.ExecutionException; /** * @author wzy @@ -95,7 +105,7 @@ @Test public void directorProfitTest() { - Long directRewardId = 587L; + Long directRewardId = 607L; MallOrderInfo orderInfo = mallOrderInfoMapper.selectById(directRewardId); if(ObjectUtil.isEmpty(orderInfo)){ return; @@ -410,10 +420,56 @@ // amount.put("amount", 2); // } // -// @Test -// public void scorePool(){ -// memberProfitService.scorePool(); -// } + + + @Autowired + private ContractEventService bscUsdtContractEvent; + + + @Autowired + private BaseCoinService baseCoinService; + @Autowired + private RedisUtils redisUtils; + @Resource + private UsdtErc20UpdateService usdtErc20UpdateService; + @Resource + private MemberCoinAddressDao memberCoinAddressDao; + @Test + public void scorePool(){ + + String next = "0xc1be17a02127e5cc1e6b2298436e8b467531f798"; + MemberCoinAddressEntity memberCoinAddressEntity = memberCoinAddressDao.selectCoinAddressByAddressAndSymbolTag(next, "USDT", "ERC20"); + if(ObjectUtil.isEmpty(memberCoinAddressEntity)){ + return; + } + BigDecimal balanceOf = ChainService.getInstance(ChainEnum.BSC_USDT.name()).balanceOf(next); + if (balanceOf == null || balanceOf.compareTo(new BigDecimal("0.05")) < 1) { + return; + } + //查询手续费 + BigDecimal balanceOfBaseToken = ChainService.getInstance(ChainEnum.BSC_USDT.name()).balanceOfBaseToken(next); + + String gas = "5"; + if(balanceOfBaseToken.compareTo(new BigDecimal(gas)) < 0){ + //转手续费 + ChainService.getInstance(ChainEnum.BSC_USDT.name()).transferBaseToken(next, new BigDecimal(gas)); + } + ChainService.getInstance(ChainEnum.BSC_USDT.name()).transfer(memberCoinAddressEntity.getPrivateKey(), + memberCoinAddressEntity.getAddress(), + AppContants.ERC20_POOL_ADDRESS, + balanceOf.toString()); +// long start = System.currentTimeMillis(); +// Object incrementObj = redisUtils.get(AppContants.REDIS_KEY_BLOCK_ETH_INCREMENT_NUM); +// BigInteger newest = ChainService.getInstance(ChainEnum.BSC_USDT.name()).blockNumber(); +// BigInteger block; +// if (incrementObj == null) { +// block = newest; +// } else { +// block = (BigInteger) incrementObj; +// } +//// ChainService.wssBaseCoinEventListener(BigInteger.valueOf(24317595), baseCoinService); +// ChainService.wssContractEventListener(BigInteger.valueOf(24317595), bscUsdtContractEvent, ChainEnum.BSC_USDT.name()); + } // // @Test // public void staticProfit(){ -- Gitblit v1.9.1