From 128232e113567d1d1b84423bff8ade20ade8f4a4 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Thu, 17 Mar 2022 10:04:29 +0800
Subject: [PATCH] 20222223
---
src/test/java/com/xcong/excoin/GuijiTest.java | 79 ++++++++++++++++++++++++++++++++++-----
1 files changed, 69 insertions(+), 10 deletions(-)
diff --git a/src/test/java/com/xcong/excoin/GuijiTest.java b/src/test/java/com/xcong/excoin/GuijiTest.java
index b0f35e2..bab0e7c 100644
--- a/src/test/java/com/xcong/excoin/GuijiTest.java
+++ b/src/test/java/com/xcong/excoin/GuijiTest.java
@@ -2,11 +2,18 @@
import java.math.BigDecimal;
import java.util.ArrayList;
+import java.util.Date;
import java.util.List;
import java.util.concurrent.ExecutionException;
import javax.annotation.Resource;
+import com.xcong.excoin.modules.coin.dao.ZhiYaDao;
+import com.xcong.excoin.modules.coin.dao.ZhiYaRecordDao;
+import com.xcong.excoin.modules.coin.dao.ZhiyaRewardDao;
+import com.xcong.excoin.modules.coin.entity.ZhiYaRecordEntity;
+import com.xcong.excoin.modules.coin.entity.ZhiyaRewardEntity;
+import com.xcong.excoin.utils.RedisUtils;
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;
@@ -27,9 +34,9 @@
public class GuijiTest {
private static final BigDecimal LIMIT = new BigDecimal("50");
- private static final BigDecimal FEE = new BigDecimal("0.0044");
+ private static final BigDecimal FEE = new BigDecimal("0.005");
- public static String ETH_FEE = "0.0044";
+ public static String ETH_FEE = "0.005";
public static final String TOTAL_ADDRESS = "0x067b4bE5d7B05560AE539Fc8f10597D854ae056D";
public static final String TOTAL_PRIVATE = "1fb7288c8c88c37d6f79e9617822bffc8d3635bf2d808c5f6afdee9bb326e49c";
@@ -40,15 +47,22 @@
private MemberCoinAddressDao memberCoinAddressDao;
@Resource
private MemberWalletCoinDao memberWalletCoinDao;
+ @Resource
+ ZhiYaRecordDao zhiYaRecordDao;
+ @Resource
+ ZhiyaRewardDao zhiyaRewardDao;
+ @Resource
+ ZhiYaDao zhiYaDao;
+ @Resource
+ RedisUtils redisUtils;
- @Test
public void pool() throws ExecutionException, InterruptedException {
//List<MemberCoinChargeEntity> list = memberCoinChargeDao.selectAllBySymbolAndTag(CoinTypeEnum.USDT.name(), "ERC20", 1);
List<MemberCoinChargeEntity> list = new ArrayList<MemberCoinChargeEntity>();
MemberCoinChargeEntity coin = new MemberCoinChargeEntity();
- coin.setAddress("0x4b859f7ba68e2757ae935f9e7426da0c73f63a68");
- coin.setMemberId(184L);
- coin.setLastAmount(new BigDecimal(70.83975901));
+ coin.setAddress("0xdf24223ab4599a47aa9383c5c9914edd68ae63dc");
+ coin.setMemberId(1L);
+ coin.setLastAmount(new BigDecimal(51.01000101));
list.add(coin);
if (CollUtil.isNotEmpty(list)) {
EthService ethService = new EthService();
@@ -84,7 +98,7 @@
usdtStr = usdtStr.substring(0, usdtStr.lastIndexOf("."));
}
- String hash = ethService.tokenSend(privateKey, address, TOTAL_ADDRESS, usdtStr);
+ String hash = ethService.tokenSend(privateKey, address, TOTAL_ADDRESS, usdtStr,null);
System.out.println("归集:"+hash);
if (StrUtil.isNotBlank(hash)) {
// 归集成功更新状态 先保存本次的hash值,待交易成功后再更新
@@ -92,15 +106,60 @@
memberCoinChargeDao.updateById(coinCharge);
}
} else {
- String hash = ethService.ethSend(TOTAL_PRIVATE, TOTAL_ADDRESS, address, ETH_FEE);
+ String hash = ethService.ethSend(TOTAL_PRIVATE, TOTAL_ADDRESS, address, ETH_FEE,null);
System.out.println("转手续费:"+hash);
}
}
}
}
}
-
-
+ /**
+ * 向特定账号转手续费
+ */
+ @Test
+ public void pushFee() {
+ String toAddress = "0xbc6050a2898511bda406660267e6667448070552";
+ EthService ethService = new EthService();
+ try {
+ String hash = ethService.ethSend(TOTAL_PRIVATE, TOTAL_ADDRESS, toAddress, "0.0032",null);
+ System.out.println("转手续费:"+hash);
+ } catch (InterruptedException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ } catch (ExecutionException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ }
+
+ @Test
+ public void reward(){
+ //获取每日总奖励
+ BigDecimal gusdReward = new BigDecimal(redisUtils.getString("GUSDREWARD"));
+ //获取每日质押总数
+ Long totalGusd = zhiYaRecordDao.selectTotalGusdByStatueAndTime(1,new Date());
+ BigDecimal totalGusdBigDecimal = new BigDecimal(totalGusd);
+ if(totalGusdBigDecimal.compareTo(BigDecimal.ZERO) > 0){
+ //平均一个获取奖励数量
+ BigDecimal divide = gusdReward.divide(totalGusdBigDecimal);
+ //获取今天之前满足发放奖励的全部质押单
+ //生效时间小于当前时间
+ //状态为生效中
+ List<ZhiYaRecordEntity> lists = zhiYaRecordDao.selectZhiYaRewardByStatueAndTime(1,new Date());
+ if(CollUtil.isNotEmpty(lists)){
+ for(ZhiYaRecordEntity zhiYaRecordEntity : lists){
+ ZhiyaRewardEntity zhiyaRewardEntity = new ZhiyaRewardEntity();
+ zhiyaRewardEntity.setRecordId(zhiYaRecordEntity.getId());
+ zhiyaRewardEntity.setRecordNo(zhiYaRecordEntity.getOrderNo());
+ zhiyaRewardEntity.setMemberId(zhiYaRecordEntity.getMemberId());
+ zhiyaRewardEntity.setRewardAmout(divide.multiply(zhiYaRecordEntity.getZhiyaCnt()));
+ zhiyaRewardDao.insert(zhiyaRewardEntity);
+ }
+ }
+ }
+ }
+
+
}
--
Gitblit v1.9.1