From 6aad85204b92b3092a09dda58e17cea316d21e28 Mon Sep 17 00:00:00 2001
From: KKSU <15274802129@163.com>
Date: Thu, 01 Feb 2024 16:23:58 +0800
Subject: [PATCH] 会员列表增加波卷功能
---
src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java | 9 +++++++--
1 files changed, 7 insertions(+), 2 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java
index eb52989..2640d2a 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java
@@ -882,7 +882,8 @@
DataDictionaryEnum.BASIC_PERK_DIRECT.getType(),
DataDictionaryEnum.BASIC_PERK_DIRECT.getCode()
).getValue()).multiply(new BigDecimal("0.01"));
- BigDecimal basicPerkDirect = profit.multiply(basicPerkDirectPercent).setScale(2, BigDecimal.ROUND_DOWN);
+// BigDecimal basicPerkDirect = profit.multiply(basicPerkDirectPercent).setScale(2, BigDecimal.ROUND_DOWN);
+ BigDecimal basicPerkDirect = nftTotal.multiply(basicPerkDirectPercent).setScale(2, BigDecimal.ROUND_DOWN);
/**
* 先插入流水记录,然后定时器每小时,循环一次找寻对应的数据执行
*/
@@ -1377,6 +1378,7 @@
//上级
String referrerId = mallMember.getReferrerId();
MallMember mallMemberRef = memberMapper.selectInfoByInviteId(referrerId);
+ List<MallMember> mallMembersAll = memberMapper.selectAllChildAgentListByInviteId(referrerId);
List<MallMember> mallMembers = memberMapper.selectByRefererId(referrerId);
Set<Long> mallMembersSet = mallMembers.stream().map(MallMember::getId).collect(Collectors.toSet());
@@ -1390,6 +1392,7 @@
/**
* 从会员等级最低到最高,比较intersection与会员设置的直推人数directCntLevel比较
* directCntLevel >= intersection.size(),则满足升级会员等级条件,跳出循环
+ * teamCnt >= mallMembersAll.size(),则满足升级会员等级条件,跳出循环
* 达到最高级别后,升级会员等级,跳出循环
*/
String level = MemberLevelNewEnum.ZERO_LEVEL.getType();
@@ -1400,7 +1403,9 @@
);
TeamPerkDto teamPerkDto = JSONObject.parseObject(levelDic.getValue(), TeamPerkDto.class);
Integer directCntLevel = teamPerkDto.getDirectCnt();
- if(directCntLevel >= intersection.size()){
+ Integer teamCnt = teamPerkDto.getTeamCnt();
+ if(directCntLevel >= intersection.size() &&
+ teamCnt >= mallMembersAll.size()){
mallMemberRef.setLevel(level);
memberMapper.updateById(mallMemberRef);
flag = true;
--
Gitblit v1.9.1