xiaoyong931011
2023-08-14 34d55a78a941ee9789d46e11b035c6653a7c67ce
赠送积分更新状态
1 files modified
41 ■■■■■ changed files
src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java 41 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java
@@ -57,6 +57,7 @@
    private final IMallMoneyFlowService mallMoneyFlowService;
    private final MallMemberClassMapper mallMemberClassMapper;
    private final MallMemberHouseMapper mallMemberHouseMapper;
    private final MallMoneyFlowMapper mallMoneyFlowMapper;
    @Override
    @Transactional(rollbackFor = Exception.class)
@@ -370,25 +371,29 @@
                String referrerId = mallMember.getReferrerId();
                MallMember mallMemberParent = memberMapper.selectInfoByInviteId(referrerId);
                Long id = mallMemberParent.getId();
                DataDictionaryCustom returnPercentDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
                        DataDictionaryEnum.MEMBER_RETURN_PERCENT.getType(),
                        DataDictionaryEnum.MEMBER_RETURN_PERCENT.getCode()
                );
                String returnPercentStr = StrUtil.isNotEmpty(returnPercentDic.getValue()) ? "1" : returnPercentDic.getValue();
                BigDecimal returnPercent = new BigDecimal(returnPercentStr).divide(new BigDecimal(100), 2, BigDecimal.ROUND_DOWN);
                BigDecimal amountActual = amountBigDecimal.multiply(returnPercent).setScale(2, BigDecimal.ROUND_DOWN);
                mallMoneyFlowService.addMoneyFlow(
                        mallMember.getId(),
                        amountActual,
                        MoneyFlowTypeEnum.DYNAMIC_ACHIEVE.getValue(),
                        mallOrderInfo.getOrderNo(),
                        "直推奖",
                        "直推奖",
                        id,
                        1,
                        FlowTypeEnum.BALANCE.getValue(),
                        2);
                MallMoneyFlow mallMoneyFlow = mallMoneyFlowMapper.selectOneByOrderNoAndMemberIdAndRtMemberId(mallOrderInfo.getOrderNo(), memberId, id);
                if(ObjectUtil.isEmpty(mallMoneyFlow)){
                    DataDictionaryCustom returnPercentDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
                            DataDictionaryEnum.MEMBER_RETURN_PERCENT.getType(),
                            DataDictionaryEnum.MEMBER_RETURN_PERCENT.getCode()
                    );
                    String returnPercentStr = StrUtil.isNotEmpty(returnPercentDic.getValue()) ? "1" : returnPercentDic.getValue();
                    BigDecimal returnPercent = new BigDecimal(returnPercentStr).divide(new BigDecimal(100), 2, BigDecimal.ROUND_DOWN);
                    BigDecimal amountActual = amountBigDecimal.multiply(returnPercent).setScale(2, BigDecimal.ROUND_DOWN);
                    mallMoneyFlowService.addMoneyFlow(
                            mallMember.getId(),
                            amountActual,
                            MoneyFlowTypeEnum.DYNAMIC_ACHIEVE.getValue(),
                            mallOrderInfo.getOrderNo(),
                            "直推奖",
                            "直推奖",
                            id,
                            1,
                            FlowTypeEnum.BALANCE.getValue(),
                            2);
                }
            }
        }
        for(MallOrderItem mallOrderItem : mallOrderItemList){