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 | 14 ++++++++++----
1 files changed, 10 insertions(+), 4 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 66da142..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
@@ -863,9 +863,10 @@
mallProductBuy.setMateState(ProductEnum.PRODUCT_BUY_MATE_STATE_SUCCESS.getValue());
mallProductBuyMapper.updateById(mallProductBuy);
BigDecimal nftTotal = mallProductBuy.getNftTotal();
- insertSell(mallProductBuy.getMemberId(),nftTotal,nftTotal,BigDecimal.ZERO,BigDecimal.ZERO);
BigDecimal profit = nftTotal.multiply(profitPercent.multiply(new BigDecimal(0.01)));
- insertSell(mallProductBuy.getMemberId(),profit,profit,BigDecimal.ZERO,BigDecimal.ZERO);
+ BigDecimal add = nftTotal.add(profit);
+ insertSell(mallProductBuy.getMemberId(),add,add,BigDecimal.ZERO,BigDecimal.ZERO);
+// insertSell(mallProductBuy.getMemberId(),profit,profit,BigDecimal.ZERO,BigDecimal.ZERO);
/**
* 更新用户上级收益,冻结7天,7天时间到期自动释放到动态钱包
@@ -881,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);
/**
* 先插入流水记录,然后定时器每小时,循环一次找寻对应的数据执行
*/
@@ -1376,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());
@@ -1389,6 +1392,7 @@
/**
* 从会员等级最低到最高,比较intersection与会员设置的直推人数directCntLevel比较
* directCntLevel >= intersection.size(),则满足升级会员等级条件,跳出循环
+ * teamCnt >= mallMembersAll.size(),则满足升级会员等级条件,跳出循环
* 达到最高级别后,升级会员等级,跳出循环
*/
String level = MemberLevelNewEnum.ZERO_LEVEL.getType();
@@ -1399,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