EDEN-MACE 1.5.1 更新,重构分润计算模块,精准控制分润模型

H
 Hickeyer
发布于 2019年05月19日
收藏 20

EDEN-MACE 是一套灵活的管理佣金的分销管理系统,它涵盖并且总结了目前流行的分销模式,让分销更加简单。

开源地址:https://gitee.com/codingdb/distribution_management

视频教程

链接:https://pan.baidu.com/s/1he3Tnk324JKoMPsbtEPcyw 提取码:p20v

此次版本更新是针对分润模块进行代码的全部重构,增加代码的可读性,并且分润模型由原来的暴力计算转换成分润计算,计算更加精准.

代码位置:DisProfitRecordServiceImpl#generatorAllRecord

部分代码解析

此段代码是针对会员的分润计算

1.取需要计算的分润的用户

2. 对fullIndex字段进行反转,巧妙的运用下标和等级的关系,进行分润(比如下标成为1,这个用户就是源用户的上级)

  public void calMemberMoney(DisProfitRecordVo param,DisMemberInfo memberInfo){
        logger.info("用户分润->开始新增用户分润");
        String[] levelInfo=memberInfo.getDisFullIndex().split("\\.");
        logger.info("用户分润->处理上级人员分润{}",levelInfo.length);
        //反转数组
        levelInfo = DistUtils.reverseArray(levelInfo);
        for (int i = 0;i<levelInfo.length;i++){
            String userId  =levelInfo[i];
            logger.info("用户分润->开始处理{}级用户,用户id{}",i,userId);
            if(i==0){
                logger.info("用户分润->自己不能给自己分润,分润用户{},{}",userId,memberInfo.getDisUserId());
                continue;
            }
            addAmountRecord(userId,String.valueOf(i),IdentityStatus.USER_STATUS.getStatus(),param,memberInfo);
        }
        logger.info("用户分润->结束新增用户分润");
    }
本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动共创开源社区。
转载请注明:文章转载自 OSCHINA 社区 [http://www.oschina.net]
本文标题:EDEN-MACE 1.5.1 更新,重构分润计算模块,精准控制分润模型
加载中
返回顶部
顶部