From 287772b46a32e5638602d677d793aef16f4e6739 Mon Sep 17 00:00:00 2001
From: KKSU <15274802129@163.com>
Date: Mon, 15 Apr 2024 16:53:44 +0800
Subject: [PATCH] 每人每日质押设置
---
src/main/java/cc/mrbird/febs/dapp/service/impl/AsyncCjServiceImpl.java | 90 +++++++++++++++++++++++++++++---------------
1 files changed, 59 insertions(+), 31 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/dapp/service/impl/AsyncCjServiceImpl.java b/src/main/java/cc/mrbird/febs/dapp/service/impl/AsyncCjServiceImpl.java
index a2bc8c7..1c47c8b 100644
--- a/src/main/java/cc/mrbird/febs/dapp/service/impl/AsyncCjServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/dapp/service/impl/AsyncCjServiceImpl.java
@@ -311,12 +311,16 @@
Map<Long, BigDecimal> memberPerkMap = new HashMap<>();
//总团队业绩
BigDecimal memberPerkTotal = BigDecimal.ZERO;
+// BigDecimal memberPerkTotal = dappAchieves.stream().map(DappAchieve::getAmount).reduce(BigDecimal.ZERO, BigDecimal::add);
+// if(BigDecimal.ZERO.compareTo(memberPerkTotal) >= 0){
+// return;
+// }
//获取全部会员
Set<Long> allMembers = dappMemberEntities.stream().map(DappMemberEntity::getId).collect(Collectors.toSet());
//获取正在质押的会员ID
- Set<Long> achieveMembers = dappAchieves.stream().map(DappAchieve::getMemberId).collect(Collectors.toSet());
- Collection<Long> intersection = CollUtil.intersection(allMembers, achieveMembers);
- for(Long memberId : intersection){
+// Set<Long> achieveMembers = dappAchieves.stream().map(DappAchieve::getMemberId).collect(Collectors.toSet());
+// Collection<Long> intersection = CollUtil.intersection(allMembers, achieveMembers);
+ for(Long memberId : allMembers){
/**
* 获取每一个成员的四级直推
*/
@@ -355,9 +359,6 @@
memberPerkTotal = memberPerkTotal.add(teamAchieveMemberSum);
memberPerkMap.put(memberId,teamAchieveMemberSum);
}
- if(BigDecimal.ZERO.compareTo(memberPerkTotal) >= 0){
- return;
- }
BigDecimal everyUsdt = multiplyDivideEveryUsdt.divide(memberPerkTotal,4,BigDecimal.ROUND_DOWN);
BigDecimal everyCoin = multiplyDivideEveryCoin.divide(memberPerkTotal,4,BigDecimal.ROUND_DOWN);
@@ -368,28 +369,46 @@
//这个人实际可以分到的数量USDT
BigDecimal multiplyUsdt = amountMember.multiply(everyUsdt).setScale(4, BigDecimal.ROUND_DOWN);
//这个人实际可以分到的数量COIN
- BigDecimal multiplyCoin = divideEveryCoin.multiply(everyCoin).setScale(4, BigDecimal.ROUND_DOWN);
-
+ BigDecimal multiplyCoin = amountMember.multiply(everyCoin).setScale(4, BigDecimal.ROUND_DOWN);
+ DappMemberEntity dappMemberEntityExit = dappMemberDao.selectById(memberId);
+ if(ObjectUtil.isEmpty(dappMemberEntityExit)){
+ continue;
+ }
+ //如果没有进行中的质押,直接返回
+ QueryWrapper<DappAchieve> objectQueryWrappereq = new QueryWrapper<>();
+ objectQueryWrappereq.eq("state",DappAchieve.STATUS_ING);
+ objectQueryWrappereq.eq("member_id",memberId);
+ List<DappAchieve> dappAchieveseq = dappAchieveMapper.selectList(objectQueryWrappereq);
+ if(CollUtil.isEmpty(dappAchieveseq)){
+ DappFundFlowEntity fundFlowTuiJian = new DappFundFlowEntity(
+ memberId,
+ multiplyUsdt,
+ FlowTypeEnum.TUAN_DUI_FAIL.getValue(),
+ DappFundFlowEntity.WITHDRAW_STATUS_AGREE,
+ StrUtil.format(FlowTypeEnum.TUAN_DUI_FAIL_DES.getDescrition(), amountMember));
+ dappFundFlowDao.insert(fundFlowTuiJian);
+ continue;
+ }
createFlow(
multiplyUsdt,
memberId,
FlowTypeEnum.HUA_DIAN_TUANDUI_USDT.getValue(),
- FlowTypeEnum.HUA_DIAN_TUANDUI_USDT.getDescrition(),
+ StrUtil.format(FlowTypeEnum.HUA_DIAN_TUANDUI_USDT.getDescrition(), amountMember),
4,
1,
ChainEnum.BSC_TFC_REWARD.name(),
DataDicEnum.USDT_COIN.getValue(),
2);
- createFlow(
- multiplyCoin,
- memberId,
- FlowTypeEnum.HUA_DIAN_TUANDUI_DAIBI.getValue(),
- FlowTypeEnum.HUA_DIAN_TUANDUI_DAIBI.getDescrition(),
- 4,
- 1,
- ChainEnum.BSC_TFC_REWARD.name(),
- DataDicEnum.USDT_COIN.getValue(),
- 1);
+// createFlow(
+// multiplyCoin,
+// memberId,
+// FlowTypeEnum.HUA_DIAN_TUANDUI_DAIBI.getValue(),
+// StrUtil.format(FlowTypeEnum.HUA_DIAN_TUANDUI_DAIBI.getDescrition(), amountMember),
+// 4,
+// 1,
+// ChainEnum.BSC_TFC_REWARD.name(),
+// DataDicEnum.USDT_COIN.getValue(),
+// 1);
}
}
@@ -420,31 +439,40 @@
//这个人实际可以分到的数量USDT
BigDecimal multiplyUsdt = amountMember.multiply(everyUsdt).setScale(4, BigDecimal.ROUND_DOWN);
//这个人实际可以分到的数量COIN
- BigDecimal multiplyCoin = divideEveryCoin.multiply(everyCoin).setScale(4, BigDecimal.ROUND_DOWN);
+ BigDecimal multiplyCoin = amountMember.multiply(everyCoin).setScale(4, BigDecimal.ROUND_DOWN);
+ DappMemberEntity dappMemberEntityExit = dappMemberDao.selectById(memberId);
+ if(ObjectUtil.isEmpty(dappMemberEntityExit)){
+ continue;
+ }
createFlow(
multiplyUsdt,
memberId,
FlowTypeEnum.HUA_DIAN_GEREN.getValue(),
- FlowTypeEnum.HUA_DIAN_GEREN.getDescrition(),
+ StrUtil.format(FlowTypeEnum.HUA_DIAN_GEREN.getDescrition(), amountMember),
4,
1,
ChainEnum.BSC_TFC_REWARD.name(),
DataDicEnum.USDT_COIN.getValue(),
2);
- createFlow(
- multiplyCoin,
- memberId,
- FlowTypeEnum.HUA_DIAN_GEREN.getValue(),
- FlowTypeEnum.HUA_DIAN_GEREN.getDescrition(),
- 4,
- 1,
- ChainEnum.BSC_TFC_REWARD.name(),
- DataDicEnum.GFA_COIN.getValue(),
- 1);
+// createFlow(
+// multiplyCoin,
+// memberId,
+// FlowTypeEnum.HUA_DIAN_GEREN.getValue(),
+// StrUtil.format(FlowTypeEnum.HUA_DIAN_GEREN.getDescrition(), amountMember),
+// 4,
+// 1,
+// ChainEnum.BSC_TFC_REWARD.name(),
+// DataDicEnum.GFA_COIN.getValue(),
+// 1);
}
}
+ public static void main(String[] args) {
+ String format = StrUtil.format(FlowTypeEnum.HUA_DIAN_GEREN.getDescrition(), 100);
+ System.out.println(format);
+ }
+
/**
* 插入流水记录,增加转账记录,发送线上转账的消息
* @param multiplyUsdt
--
Gitblit v1.9.1