From ada59d11d10c4a5db3c748c1997ee4992ee54b3a Mon Sep 17 00:00:00 2001 From: KKSU <15274802129@163.com> Date: Thu, 11 Jan 2024 14:44:07 +0800 Subject: [PATCH] 套餐 --- src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java | 74 +++++++++++++++++++++++++------------ 1 files changed, 50 insertions(+), 24 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 7d98510..369f9c4 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 @@ -51,26 +51,30 @@ List<MallMember> parentMembers = memberMapper.selectByInviteIds(ids); for (MallMember parent : parentMembers) { //level为v6,升级董事,则看直属团队下有没有两个V6 - List<MallMember> mallMemberChilds = memberMapper.selectByRefererId(parent.getInviteId()); - if(CollUtil.isNotEmpty(mallMemberChilds)){ - int directorSize = 0; - for(MallMember mallMemberChild : mallMemberChilds){ - List<MallMember> mallMemberTeamMembers = memberMapper.selectAllChildAgentListByInviteId(mallMemberChild.getInviteId()); - if(CollUtil.isNotEmpty(mallMemberTeamMembers)){ - List<MallMember> levelV6List = mallMemberTeamMembers.stream() - .filter(teamMember -> teamMember.getLevel().equals(MemberLevelEnum.V6.getType())) - .collect(Collectors.toList()); - if(CollUtil.isNotEmpty(levelV6List)){ - directorSize = directorSize +1; - } - } - } - if(directorSize >= 2){ - parent.setLevel(MemberLevelEnum.V_DIRECTOR.getType()); - parent.setDirector(AppContants.OPTION_YES); - memberMapper.updateById(parent); - continue; - } +// List<MallMember> mallMemberChilds = memberMapper.selectByRefererId(parent.getInviteId()); +// if(CollUtil.isNotEmpty(mallMemberChilds)){ +// int directorSize = 0; +// for(MallMember mallMemberChild : mallMemberChilds){ +// List<MallMember> mallMemberTeamMembers = memberMapper.selectAllChildAgentListByInviteId(mallMemberChild.getInviteId()); +// if(CollUtil.isNotEmpty(mallMemberTeamMembers)){ +// List<MallMember> levelV6List = mallMemberTeamMembers.stream() +// .filter(teamMember -> teamMember.getLevel().equals(MemberLevelEnum.V6.getType())) +// .collect(Collectors.toList()); +// if(CollUtil.isNotEmpty(levelV6List)){ +// directorSize = directorSize +1; +// } +// } +// } +// if(directorSize >= 2){ +// parent.setLevel(MemberLevelEnum.V_DIRECTOR.getType()); +// parent.setDirector(AppContants.OPTION_YES); +// memberMapper.updateById(parent); +// continue; +// } +// } + //V6不能再升级了 + if(parent.getLevel().equals(MemberLevelEnum.V6.getType())){ + continue; } /** @@ -210,6 +214,12 @@ * 4、董事享受全公司入单分红2%加权(现金) * 5、合伙人享全公司入单分红5%加权(现金) * 6、入单后,50%入现金池 35%的H金劵入H金劵池,更新价格 + * + * + * 新增购买套餐返佣逻辑 + * 1、买了套餐增加权益额度 + * 2、权益额度每次提现会减少对应的数额 + * 3、增加每天返佣固定比例的余额 */ //获取当前订单子表信息 List<MallOrderItem> mallOrderItemList = mallOrderItemMapper.selectbyOrderId(orderId); @@ -226,6 +236,26 @@ if(BigDecimal.ZERO.compareTo(amountTCAll) >= 0){ return; } + + MallOrderInfo mallOrderInfo = mallOrderInfoMapper.selectById(orderId); + String orderNo = mallOrderInfo.getOrderNo(); + //购买人 + Long memberId = mallOrderInfo.getMemberId(); + DataDictionaryCustom equityLimitTimesDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode( + DataDictionaryEnum.EQUITY_LIMIT_TIMES.getType(), + DataDictionaryEnum.EQUITY_LIMIT_TIMES.getCode()); + BigDecimal equityLimitTimes = new BigDecimal(equityLimitTimesDic.getValue()); + BigDecimal equityLimit = amountTCAll.multiply(equityLimitTimes); + if(BigDecimal.ZERO.compareTo(equityLimit) < 0){ + addWalletInfoAndMoneyFlow(equityLimit, + memberId, + "equityLimit", + MoneyFlowTypeEnum.TC_TO_EQUITY_LIMIT.getValue(), + memberId, + FlowTypeEnum.BALANCE.getValue(), + orderNo); + } + BigDecimal amountTC = new BigDecimal(100); //购买套餐按照1000的基数去补贴,如5000,则补贴5次1000 int times = amountTCAll.divideToIntegralValue(amountTC).intValue(); @@ -234,10 +264,6 @@ } for(int i = 0; i < times; i++){ - MallOrderInfo mallOrderInfo = mallOrderInfoMapper.selectById(orderId); - String orderNo = mallOrderInfo.getOrderNo(); - //购买人 - Long memberId = mallOrderInfo.getMemberId(); /** * 1、购买人获得固定比例的H金劵 -- Gitblit v1.9.1