xiaoyong931011
2023-09-11 4c12949d4797d9e22b5abd0e099888c8f7c15599
src/main/java/cc/mrbird/febs/mall/service/impl/MemberProfitServiceImpl.java
@@ -540,43 +540,43 @@
        redisUtils.set(redisKey,scorePoolNew.subtract(scorePoolToDay).intValue(),0L);
        redisUtils.set(AppContants.SCORE_POOL_TODAY,scorePoolToDay.intValue(),0L);
        QueryWrapper<MallMember> formalMember = new QueryWrapper<>();
        formalMember.ne("level", AgentLevelEnum.ZERO_LEVEL.name());
        List<MallMember> mallMembers = mallMemberMapper.selectList(formalMember);
        int cnt = 0;
        if(CollUtil.isNotEmpty(mallMembers)){
            BigDecimal income = new BigDecimal(scorePoolToDay.divide(new BigDecimal(mallMembers.size()), 2, RoundingMode.HALF_UP).intValue());
            if(income.compareTo(BigDecimal.ZERO) < 1){
                return;
            }
            for(MallMember mallMember : mallMembers){
                /*
                平分成佣金,一比一减少赠送积分
                如果没有赠送积分,则平分0
                 */
                BigDecimal outCome = BigDecimal.ZERO;
                MallMemberWallet mallMemberWallet = mallMemberWalletMapper.selectWalletByMemberId(mallMember.getId());
                if(mallMemberWallet.getScore().compareTo(BigDecimal.ZERO) < 1){
                    continue;
                }
                if(mallMemberWallet.getScore().compareTo(income) < 0){
                    outCome = new BigDecimal(mallMemberWallet.getScore().intValue());
                }else{
                    outCome = income;
                }
                outCome = new BigDecimal(RandomUtil.randomBigDecimal(BigDecimal.ZERO,outCome).intValue()).setScale(2,BigDecimal.ROUND_DOWN);
//                walletService.add(outCome, mallMember.getId(), "commission");
//                walletService.reduce(outCome, mallMember.getId(), "score");
                moneyFlowService.addMoneyFlow(1,mallMember.getId(), outCome, MoneyFlowTypeEnum.SCORE_POOL.getValue(), null, FlowTypeEnum.COMMISSION.getValue());
                moneyFlowService.addMoneyFlow(1,mallMember.getId(), outCome.negate(), MoneyFlowTypeEnum.SCORE_POOL.getValue(), null, FlowTypeEnum.SCORE.getValue());
                cnt ++;
            }
        }
        log.info("#####==积分池==end==######;" +
                "今日新增积分:" + multiplyTotalAmount.setScale(2, RoundingMode.HALF_UP)
                +";平分积分数量:"+scorePoolToDay.setScale(2, RoundingMode.HALF_UP)
                +";人数:"+cnt);
//        QueryWrapper<MallMember> formalMember = new QueryWrapper<>();
//        formalMember.ne("level", AgentLevelEnum.ZERO_LEVEL.name());
//        List<MallMember> mallMembers = mallMemberMapper.selectList(formalMember);
//        int cnt = 0;
//        if(CollUtil.isNotEmpty(mallMembers)){
//            BigDecimal income = new BigDecimal(scorePoolToDay.divide(new BigDecimal(mallMembers.size()), 2, RoundingMode.HALF_UP).intValue());
//            if(income.compareTo(BigDecimal.ZERO) < 1){
//                return;
//            }
//            for(MallMember mallMember : mallMembers){
//                /*
//                平分成佣金,一比一减少赠送积分
//                如果没有赠送积分,则平分0
//                 */
//                BigDecimal outCome = BigDecimal.ZERO;
//                MallMemberWallet mallMemberWallet = mallMemberWalletMapper.selectWalletByMemberId(mallMember.getId());
//                if(mallMemberWallet.getScore().compareTo(BigDecimal.ZERO) < 1){
//                    continue;
//                }
//                if(mallMemberWallet.getScore().compareTo(income) < 0){
//                    outCome = new BigDecimal(mallMemberWallet.getScore().intValue());
//                }else{
//                    outCome = income;
//                }
//
//                outCome = new BigDecimal(RandomUtil.randomBigDecimal(BigDecimal.ZERO,outCome).intValue()).setScale(2,BigDecimal.ROUND_DOWN);
////                walletService.add(outCome, mallMember.getId(), "commission");
////                walletService.reduce(outCome, mallMember.getId(), "score");
//                moneyFlowService.addMoneyFlow(1,mallMember.getId(), outCome, MoneyFlowTypeEnum.SCORE_POOL.getValue(), null, FlowTypeEnum.COMMISSION.getValue());
//                moneyFlowService.addMoneyFlow(1,mallMember.getId(), outCome.negate(), MoneyFlowTypeEnum.SCORE_POOL.getValue(), null, FlowTypeEnum.SCORE.getValue());
//                cnt ++;
//            }
//        }
//        log.info("#####==积分池==end==######;" +
//                "今日新增积分:" + multiplyTotalAmount.setScale(2, RoundingMode.HALF_UP)
//                +";平分积分数量:"+scorePoolToDay.setScale(2, RoundingMode.HALF_UP)
//                +";人数:"+cnt);
    }
}