From 3e39512dfde0035f556f177dac58052baf686853 Mon Sep 17 00:00:00 2001 From: KKSU <15274802129@163.com> Date: Tue, 30 Jan 2024 15:38:42 +0800 Subject: [PATCH] 一代5%是他入金额的5% 团队5%是团队收益的5% --- 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