From f0dbcbe3f79900a3f6cacea04893697b9187946a Mon Sep 17 00:00:00 2001 From: xiaoyong931011 <15274802129@163.com> Date: Mon, 21 Aug 2023 11:59:44 +0800 Subject: [PATCH] 赠送积分更新状态 --- src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java | 35 +++++++++++++++++++++++++++++++++++ 1 files changed, 35 insertions(+), 0 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 831954a..1db5c81 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 @@ -366,6 +366,7 @@ */ //是否返利 BigDecimal amountBigDecimal = new BigDecimal(StrUtil.isEmpty(amount) ? "0" : amount); + BigDecimal parentUpAmount = BigDecimal.ZERO; if(BigDecimal.ZERO.compareTo(amountBigDecimal) < 0){ if(ObjectUtil.isNotEmpty(mallMember.getReferrerId())){ String referrerId = mallMember.getReferrerId(); @@ -393,6 +394,40 @@ 1, FlowTypeEnum.BALANCE.getValue(), 2); + parentUpAmount = amountActual; + } + + /** + * 拿下一级(直推的)收入的百分之五十 + */ + if(ObjectUtil.isNotEmpty(mallMemberParent.getReferrerId())){ + String referrerIdParentUp = mallMemberParent.getReferrerId(); + MallMember mallMemberParentUp = memberMapper.selectInfoByInviteId(referrerIdParentUp); + Long idParentUp = mallMemberParentUp.getId(); + MallMoneyFlow mallMoneyFlowParentUp = mallMoneyFlowMapper.selectOneByOrderNoAndMemberIdAndRtMemberId(mallOrderInfo.getOrderNo() + , idParentUp + , id); + if(ObjectUtil.isEmpty(mallMoneyFlowParentUp)){ + DataDictionaryCustom returnPercentUpDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode( + DataDictionaryEnum.MEMBER_RETURN_PERCENT_UP.getType(), + DataDictionaryEnum.MEMBER_RETURN_PERCENT_UP.getCode() + ); + String returnPercentUpStr = StrUtil.isEmpty(returnPercentUpDic.getValue()) ? "50" : returnPercentUpDic.getValue(); + BigDecimal returnPercentUp = new BigDecimal(returnPercentUpStr).divide(new BigDecimal(100), 2, BigDecimal.ROUND_DOWN); + BigDecimal amountActualUp = parentUpAmount.multiply(returnPercentUp).setScale(2, BigDecimal.ROUND_DOWN); + + mallMoneyFlowService.addMoneyFlow( + idParentUp, + amountActualUp, + MoneyFlowTypeEnum.DYNAMIC_ACHIEVE.getValue(), + mallOrderInfo.getOrderNo(), + "直推奖", + "直推奖", + id, + 1, + FlowTypeEnum.BALANCE.getValue(), + 2); + } } } } -- Gitblit v1.9.1