From 52a7fcbe3f824dfc4cf8b0eedcb3a498f2618a56 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Thu, 08 Jun 2023 01:11:03 +0800
Subject: [PATCH] twoCoin项目修改
---
src/main/java/cc/mrbird/febs/dapp/service/impl/DappSystemServiceImpl.java | 126 +++++++++++++++++++++++++++++------------
1 files changed, 88 insertions(+), 38 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/dapp/service/impl/DappSystemServiceImpl.java b/src/main/java/cc/mrbird/febs/dapp/service/impl/DappSystemServiceImpl.java
index 4584654..766279f 100644
--- a/src/main/java/cc/mrbird/febs/dapp/service/impl/DappSystemServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/dapp/service/impl/DappSystemServiceImpl.java
@@ -677,10 +677,10 @@
PoolEnum.USDT_A_PERCENT.getType(),
PoolEnum.USDT_A_PERCENT.getCode()
);
- BigDecimal usdtAPercent = new BigDecimal(StrUtil.isEmpty(usdtAPercentDic.getValue()) ? "0.9" : usdtAPercentDic.getValue());
+ BigDecimal usdtAPercent = new BigDecimal(StrUtil.isEmpty(usdtAPercentDic.getValue()) ? "0.7" : usdtAPercentDic.getValue());
BigDecimal usdtAAmount = amount.multiply(usdtAPercent).setScale(4, BigDecimal.ROUND_DOWN);
- //生成一条进行中的90%进入A币底池的资金流水记录
+ //生成一条进行中的70%进入A币底池的资金流水记录
DappFundFlowEntity fundFlowToA = new DappFundFlowEntity(
1L,
usdtAAmount,
@@ -692,6 +692,18 @@
dappFundFlowDao.insert(fundFlowToA);
//90%进入A币底池
chainProducer.sendAntACoinInAPoolMsg(fundFlowToA.getId());
+
+ BigDecimal usdtWAmount = amount.multiply(new BigDecimal(0.2)).setScale(4, BigDecimal.ROUND_DOWN);
+ //生成一条进行中的20%进入A币底池的资金流水记录
+ DappFundFlowEntity fundFlowToW = new DappFundFlowEntity(
+ 1L,
+ usdtWAmount,
+ FundFlowEnum.USDT_IN_W_POOL.getCode(),
+ 1,
+ BigDecimal.ZERO,
+ null,
+ chergeRecordId);
+ dappFundFlowDao.insert(fundFlowToW);
DataDictionaryCustom usdtBPercentDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
PoolEnum.USDT_B_PERCENT.getType(),
@@ -824,18 +836,19 @@
/**
* 20%全网加权平分,按照个人投资占比全网的比例去平分
*/
- BigDecimal poolAllMemberAPercentCntAva = allMemberPerk(poolAllMemberAPercentCnt, FundFlowEnum.POOL_MEMBER_A_CNT.getCode());
- DappFundFlowEntity poolAllMemberAFundFlowAva = new DappFundFlowEntity(
- 1L,
- poolAllMemberAPercentCnt.subtract(poolAllMemberAPercentCntAva),
- FundFlowEnum.POOL_MEMBER_A_CNT.getCode(),
- 2,
- BigDecimal.ZERO,
- null,
- chergeRecordId);
- dappFundFlowDao.insert(poolAllMemberAFundFlowAva);
- dappWalletService.updateWalletMineWithLock(poolAllMemberAPercentCnt.subtract(poolAllMemberAPercentCntAva),
- 1L,1);
+ chainProducer.sendAllMemberPerkAvaMsg(poolAllMemberAFundFlow.getId());
+// BigDecimal poolAllMemberAPercentCntAva = allMemberPerk(poolAllMemberAPercentCnt, FundFlowEnum.POOL_MEMBER_A_CNT.getCode());
+// DappFundFlowEntity poolAllMemberAFundFlowAva = new DappFundFlowEntity(
+// 294L,
+// poolAllMemberAPercentCnt.subtract(poolAllMemberAPercentCntAva),
+// FundFlowEnum.POOL_MEMBER_A_CNT.getCode(),
+// 2,
+// BigDecimal.ZERO,
+// null,
+// chergeRecordId);
+// dappFundFlowDao.insert(poolAllMemberAFundFlowAva);
+// dappWalletService.updateWalletMineWithLock(poolAllMemberAPercentCnt.subtract(poolAllMemberAPercentCntAva),
+// 294L,1);
/**
* 10%直推
@@ -883,7 +896,7 @@
}
if(directAPercentCnt.compareTo(directAPercentFundFlowToMemberFlag) > 0){
DappFundFlowEntity directAPercentFundFlowToMemberAva = new DappFundFlowEntity(
- 1L,
+ 294L,
directAPercentCnt.subtract(directAPercentFundFlowToMemberFlag),
FundFlowEnum.DIRECT_A_PERCENT.getCode(),
2,
@@ -892,7 +905,7 @@
chergeRecordId);
dappFundFlowDao.insert(directAPercentFundFlowToMemberAva);
dappWalletService.updateWalletMineWithLock(directAPercentCnt.subtract(directAPercentFundFlowToMemberFlag),
- 1L,1);
+ 294L,1);
}
}
/**
@@ -928,7 +941,7 @@
if(nodeAPercentCnt.compareTo(nodeAPercentCntAva) > 0){
DappFundFlowEntity nodeAPercentFundFlowAva = new DappFundFlowEntity(
- 1L,
+ 294L,
nodeAPercentCnt.subtract(nodeAPercentCntAva),
FundFlowEnum.NODE_A_PERCENT_TO_MEMBER.getCode(),
2,
@@ -937,7 +950,7 @@
chergeRecordId);
dappFundFlowDao.insert(nodeAPercentFundFlowAva);
dappWalletService.updateWalletMineWithLock(nodeAPercentCnt.subtract(nodeAPercentCntAva),
- 1L,1);
+ 294L,1);
}
/**
* 5%基金会
@@ -951,7 +964,7 @@
//生成一条5%基金会的资金流水记录
DappFundFlowEntity foundationAPercentFundFlow = new DappFundFlowEntity(
- 1L,
+ 295L,
foundationAPercentCnt,
FundFlowEnum.FOUNDATION_A_PERCENT.getCode(),
2,
@@ -960,7 +973,7 @@
chergeRecordId);
dappFundFlowDao.insert(foundationAPercentFundFlow);
//用户的A币账户增加memberGetACnt数量
- dappWalletService.updateWalletMineWithLock(foundationAPercentCnt,1L,1);
+ dappWalletService.updateWalletMineWithLock(foundationAPercentCnt,295L,1);
/**
* 10%级差奖
*/
@@ -1056,6 +1069,13 @@
BigDecimal amount = dappFundFlowEntity.getAmount();
//目标地址
String address = AppContants.ADDRESS_A_POOL_PEOJECT;
+ if(5 == dappFundFlowEntity.getType()){
+ address = AppContants.ADDRESS_A_POOL_PEOJECT;
+ }else if(34 == dappFundFlowEntity.getType() ){
+ address = ChainEnum.BSC_USDT_W_POOL.getAddress();
+ }else{
+ return;
+ }
/**
* 发起USDT转账
*/
@@ -1069,13 +1089,13 @@
dappFundFlowDao.updateById(dappFundFlowEntity);
}
- public static void main(String[] args) {
- String address = AppContants.ADDRESS_A_POOL_PEOJECT;
- /**
- * 发起USDT转账
- */
- String hash = ChainService.getInstance(ChainEnum.BSC_USDT_A_POOL.name()).transfer(address, new BigDecimal("0.01"));
- }
+// public static void main(String[] args) {
+// String address = AppContants.ADDRESS_A_POOL_PEOJECT;
+// /**
+// * 发起USDT转账
+// */
+// String hash = ChainService.getInstance(ChainEnum.BSC_USDT_A_POOL.name()).transfer(address, new BigDecimal("0.01"));
+// }
@Override
public void AntACoinBPollInMsg(Long id) {
@@ -1239,7 +1259,7 @@
//用户的A币账户增加divide数量
if(amountTC.compareTo(teamIncomePerkTotal) > 0){
DappFundFlowEntity nodeAPercentFundFlowAva = new DappFundFlowEntity(
- 1L,
+ 294L,
subtract,
FundFlowEnum.LEVEL_A_PERCENT_CNT_MEMBER.getCode(),
2,
@@ -1248,7 +1268,7 @@
systemProfitId);
dappFundFlowDao.insert(nodeAPercentFundFlowAva);
dappWalletService.updateWalletMineWithLock(subtract,
- 1L,1);
+ 294L,1);
}
}
}
@@ -1269,7 +1289,7 @@
//用户的A币账户增加divide数量
if(averagePerkCnt.compareTo(averagePerkCntAva) > 0){
DappFundFlowEntity nodeAPercentFundFlowAva = new DappFundFlowEntity(
- 1L,
+ 294L,
averagePerkCnt.subtract(averagePerkCntAva),
FundFlowEnum.DAO_3_NODE_PERK.getCode(),
2,
@@ -1278,7 +1298,7 @@
systemProfitId);
dappFundFlowDao.insert(nodeAPercentFundFlowAva);
dappWalletService.updateWalletMineWithLock(averagePerkCnt.subtract(averagePerkCntAva),
- 1L,1);
+ 294L,1);
}
//生成流水记录
DappFundFlowEntity nodeThreeFundFlow = new DappFundFlowEntity(
@@ -1310,7 +1330,7 @@
//用户的A币账户增加divide数量
if(averagePerkFourCnt.compareTo(averagePerkFourCntAva) > 0){
DappFundFlowEntity nodeAPercentFundFlowAva = new DappFundFlowEntity(
- 1L,
+ 294L,
averagePerkFourCnt.subtract(averagePerkFourCntAva),
FundFlowEnum.DAO_4_NODE_PERK.getCode(),
2,
@@ -1319,7 +1339,7 @@
systemProfitId);
dappFundFlowDao.insert(nodeAPercentFundFlowAva);
dappWalletService.updateWalletMineWithLock(averagePerkFourCnt.subtract(averagePerkFourCntAva),
- 1L,1);
+ 294L,1);
}
DappFundFlowEntity nodeFourFundFlow = new DappFundFlowEntity(
1L,
@@ -1349,7 +1369,7 @@
//用户的A币账户增加divide数量
if(averagePerkFiveCnt.compareTo(averagePerkFiveCntAva) > 0){
DappFundFlowEntity nodeAPercentFundFlowAva = new DappFundFlowEntity(
- 1L,
+ 294L,
averagePerkFiveCnt.subtract(averagePerkFiveCntAva),
FundFlowEnum.DAO_5_NODE_PERK.getCode(),
2,
@@ -1358,7 +1378,7 @@
systemProfitId);
dappFundFlowDao.insert(nodeAPercentFundFlowAva);
dappWalletService.updateWalletMineWithLock(averagePerkFiveCnt.subtract(averagePerkFiveCntAva),
- 1L,1);
+ 294L,1);
}
DappFundFlowEntity nodeFiveFundFlow = new DappFundFlowEntity(
1L,
@@ -1390,7 +1410,7 @@
//用户的A币账户增加divide数量
if(nodeFiveEqualsCnt.compareTo(nodeFiveEqualsCntAva) > 0){
DappFundFlowEntity nodeAPercentFundFlowAva = new DappFundFlowEntity(
- 1L,
+ 294L,
nodeFiveEqualsCnt.subtract(nodeFiveEqualsCntAva),
FundFlowEnum.DAO_5_NODE_EQUALS_PERK.getCode(),
2,
@@ -1399,7 +1419,7 @@
systemProfitId);
dappFundFlowDao.insert(nodeAPercentFundFlowAva);
dappWalletService.updateWalletMineWithLock(nodeFiveEqualsCnt.subtract(nodeFiveEqualsCntAva),
- 1L,1);
+ 294L,1);
}
DappFundFlowEntity nodeFiveEqualsFundFlow = new DappFundFlowEntity(
1L,
@@ -1508,7 +1528,8 @@
//获取type级别的会员
List<DappMemberEntity> dappMemberEntities = dappMemberDao.selectMemberByAccountTypeAnd(type);
//每日补贴总数
- BigDecimal nodePerk = nodeFivePoolDicCnt.multiply(AppContants.NODE_PERK_PERCENT);
+// BigDecimal nodePerk = nodeFivePoolDicCnt.multiply(AppContants.NODE_PERK_PERCENT);
+ BigDecimal nodePerk = nodeFivePoolDicCnt;
if(CollUtil.isNotEmpty(dappMemberEntities)){
//每人的补贴
BigDecimal averagePerk = nodePerk.divide(new BigDecimal(dappMemberEntities.size()), 4, BigDecimal.ROUND_DOWN);
@@ -2023,6 +2044,8 @@
address = AppContants.ADDRESS_A_POOL_PEOJECT;
}else if(6 == dappFundFlowEntity.getType()){
address = AppContants.ADDRESS_B_POOL_PEOJECT;
+ }else if(34 == dappFundFlowEntity.getType()){
+ address = ChainEnum.BSC_USDT_W_POOL.getAddress();
}else{
return;
}
@@ -2040,6 +2063,33 @@
}
+ @Override
+ public void allMemberPerkAvaMsg(Long id) {
+ DappFundFlowEntity dappFundFlowEntity = dappFundFlowDao.selectById(id);
+ if(ObjectUtil.isEmpty(dappFundFlowEntity)){
+ return;
+ }
+
+ BigDecimal poolAllMemberAPercentCnt = dappFundFlowEntity.getAmount();
+ BigDecimal poolAllMemberAPercentCntAva = allMemberPerk(poolAllMemberAPercentCnt, FundFlowEnum.POOL_MEMBER_A_CNT.getCode());
+ DappFundFlowEntity poolAllMemberAFundFlowAva = new DappFundFlowEntity(
+ 294L,
+ poolAllMemberAPercentCnt.subtract(poolAllMemberAPercentCntAva),
+ FundFlowEnum.POOL_MEMBER_A_CNT.getCode(),
+ 2,
+ BigDecimal.ZERO,
+ null,
+ dappFundFlowEntity.getSystemProfitId());
+ dappFundFlowDao.insert(poolAllMemberAFundFlowAva);
+ dappWalletService.updateWalletMineWithLock(poolAllMemberAPercentCnt.subtract(poolAllMemberAPercentCntAva),
+ 294L,1);
+
+ }
+
+ public static void main(String[] args) {
+ System.out.println(ChainEnum.BSC_USDT_W_POOL.getAddress());
+ }
+
/**
* 生成当前分钟的k线数据,type为0
*/
--
Gitblit v1.9.1