xiaoyong931011
2023-09-11 96797576f4ececd59bf573cccf0f6e47581673d0
src/main/java/cc/mrbird/febs/mall/service/impl/MemberProfitServiceImpl.java
@@ -18,7 +18,9 @@
import cn.hutool.core.date.DateTime;
import cn.hutool.core.date.DateUnit;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.NumberUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.RandomUtil;
import cn.hutool.core.util.StrUtil;
import cn.hutool.json.JSONUtil;
import com.alibaba.fastjson.JSONObject;
@@ -536,6 +538,7 @@
        BigDecimal scorePoolToDay = scorePoolNew.multiply(dividEquallyRatio);
        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());
@@ -561,10 +564,12 @@
                }else{
                    outCome = income;
                }
                walletService.add(outCome, mallMember.getId(), "commission");
                walletService.reduce(outCome, mallMember.getId(), "score");
                moneyFlowService.addMoneyFlow(mallMember.getId(), outCome, MoneyFlowTypeEnum.SCORE_POOL.getValue(), null, FlowTypeEnum.COMMISSION.getValue());
                moneyFlowService.addMoneyFlow(mallMember.getId(), outCome.negate(), MoneyFlowTypeEnum.SCORE_POOL.getValue(), null, FlowTypeEnum.SCORE.getValue());
                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 ++;
            }
        }