From 581e2ea0be32a78c23f18db85e27bd130041f0f3 Mon Sep 17 00:00:00 2001
From: KKSU <15274802129@163.com>
Date: Fri, 05 Jul 2024 17:10:04 +0800
Subject: [PATCH] 逻辑
---
src/main/java/cc/mrbird/febs/dapp/service/impl/DappSystemServiceImpl.java | 43 ++++++++++++++++++++++++++++---------------
1 files changed, 28 insertions(+), 15 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 fb26134..4b8cb4e 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
@@ -635,10 +635,11 @@
if(1 != activeStatus){
continue;
}
- //获取上级全部的直推
+ //获取上级全部的激活直推
String inviteId = dappMemberEntityRef.getInviteId();
QueryWrapper<DappMemberEntity> memberInviteQuery = new QueryWrapper<>();
memberInviteQuery.eq("referer_id",inviteId);
+ memberInviteQuery.eq("active_status",1);
List<DappMemberEntity> memberInviteList = dappMemberDao.selectList(memberInviteQuery);
//如果没有直推,则跳过
@@ -657,17 +658,12 @@
BigDecimal perkPercent = new BigDecimal(rule.getPerkPercent()).multiply(new BigDecimal("0.01"));
BigDecimal perkAmount = perkPercent.multiply(amount);
Long perkMemberId = dappMemberEntityRef.getId();
- //生成一条流水
- DappFundFlowEntity rePutInFlow = new DappFundFlowEntity(
- perkMemberId,
+
+ this.updateBalanceInsertFlow(
perkAmount,
- 15,
- 2,
- null,
- null);
- dappFundFlowDao.insert(rePutInFlow);
- //更新用户的金额
- dappWalletService.updateWalletCoinWithLock(perkAmount, perkMemberId, 1);
+ perkMemberId,
+ MoneyFlowEnum.DYNAMIC_PERK.getValue(),
+ StrUtil.format(MoneyFlowEnum.DYNAMIC_PERK.getDescrition(),amount,memberInviteList.size(),perkAmount));
}
}
@@ -721,11 +717,25 @@
}
BigDecimal daoNodeAmount = daoNodeAmountTotal.divide(new BigDecimal(dappMemberEntities.size()),2,BigDecimal.ROUND_DOWN);
for(DappMemberEntity nodeMember : dappMemberEntities){
- this.updateBalanceInsertFlow(
- daoNodeAmount,
+// this.updateBalanceInsertFlow(
+// daoNodeAmount,
+// nodeMember.getId(),
+// MoneyFlowEnum.NODE_PERK.getValue(),
+// StrUtil.format(MoneyFlowEnum.NODE_PERK.getDescrition(),amount,dappMemberEntities.size(),daoNodeAmount));
+
+
+
+ //生成一条流水
+ DappFundFlowEntity rePutInFlow = new DappFundFlowEntity(
nodeMember.getId(),
+ daoNodeAmount,
MoneyFlowEnum.NODE_PERK.getValue(),
+ 2,
+ null,
StrUtil.format(MoneyFlowEnum.NODE_PERK.getDescrition(),amount,dappMemberEntities.size(),daoNodeAmount));
+ dappFundFlowDao.insert(rePutInFlow);
+ //更新用户的金额
+ dappWalletService.updateWalletCoinWithLock(daoNodeAmount, nodeMember.getId(), 1);
}
}
@@ -834,6 +844,9 @@
@Override
public void teamPerk(Long id) {
DappFundFlowEntity dappFundFlowEntity = dappFundFlowDao.selectById(id);
+ if(ObjectUtil.isEmpty(dappFundFlowEntity)){
+ return;
+ }
if(MoneyFlowEnum.CUN_CHU.getValue() != dappFundFlowEntity.getType()){
return;
@@ -878,7 +891,7 @@
}
QueryWrapper<DappMemberEntity> daoThreeQuery = new QueryWrapper<>();
- daoThreeQuery.eq("level", MemberLevelEnum.DAO_2.getCode());
+ daoThreeQuery.eq("level", MemberLevelEnum.DAO_3.getCode());
List<DappMemberEntity> daoThrees = dappMemberDao.selectList(daoThreeQuery);
if(CollUtil.isNotEmpty(daoThrees)){
BigDecimal bigDecimal = totalAmount.multiply(new BigDecimal("0.2")).setScale(2, BigDecimal.ROUND_DOWN);
@@ -904,7 +917,7 @@
}
//获取全部上级
ArrayList<DappMemberEntity> activeMembers = new ArrayList<>();
- List<String> refererIds = Arrays.asList(StrUtil.split(",", dappMemberEntity.getRefererIds()));
+ List<String> refererIds = Arrays.asList(StrUtil.split(dappMemberEntity.getRefererIds(),","));
for(String inviteId : refererIds){
DappMemberEntity memberEntity = dappMemberDao.selectMemberInfoByInviteId(inviteId);
if(ObjectUtil.isNotEmpty(memberEntity)){
--
Gitblit v1.9.1