Compare commits
	
		
			No commits in common. "1595f117232b56f45d908c49653436b913aafad4" and "e1da81afaa769b306963f0a2c73cae84bf8908cb" have entirely different histories.
		
	
	
		
			1595f11723
			...
			e1da81afaa
		
	
		| 
						 | 
				
			
			@ -113,15 +113,17 @@ public interface CuMemberTreeMapper extends BaseMapper<CuMemberTree> {
 | 
			
		|||
     */
 | 
			
		||||
    Integer queryExistOrderTableCount(String tableName);
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 回退会员奖衔
 | 
			
		||||
     */
 | 
			
		||||
    void updateBackCuMemberRetailRangeAward(@Param("rangeTableName") String rangeTableName, @Param("period") Integer period);
 | 
			
		||||
    /*
 | 
			
		||||
     *  回退会员奖衔
 | 
			
		||||
     **/
 | 
			
		||||
    void updateBackCuMemberRetailRangeAward(@Param("rangeTableName") String rangeTableName, @Param("period") Integer period,
 | 
			
		||||
                                            @Param("awardType") Integer awardType);
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 回退会员奖衔
 | 
			
		||||
     */
 | 
			
		||||
    void updateCuMemberRetailRangeAwardByDate(@Param("rangeTableName") String rangeTableName, @Param("settleDate") Date settleDate);
 | 
			
		||||
    /*
 | 
			
		||||
     *  回退会员奖衔
 | 
			
		||||
     **/
 | 
			
		||||
    void updateCuMemberRetailRangeAwardByDate(@Param("rangeTableName") String rangeTableName, @Param("settleDate") Date settleDate,
 | 
			
		||||
                                              @Param("awardType") Integer awardType);
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 根据订单,查询出网体中记录的会员数据,推荐人、安置人
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -111,12 +111,14 @@ public class CuMemberTreeServiceImpl extends ServiceImpl<CuMemberTreeMapper, CuM
 | 
			
		|||
 | 
			
		||||
    @Override
 | 
			
		||||
    public void updateBackCuMemberRetailRangeAward(String rangeTableName, Integer period) {
 | 
			
		||||
        baseMapper.updateBackCuMemberRetailRangeAward(rangeTableName, period);
 | 
			
		||||
        baseMapper.updateBackCuMemberRetailRangeAward(rangeTableName, period, EAwardsType.RANGE_TYPE.getValue());
 | 
			
		||||
        baseMapper.updateBackCuMemberRetailRangeAward(rangeTableName, period, EAwardsType.SHARE_TYPE.getValue());
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public void updateCuMemberRetailRangeAwardByDate(String rangeTableName, Date settleDate) {
 | 
			
		||||
        baseMapper.updateCuMemberRetailRangeAwardByDate(rangeTableName, settleDate);
 | 
			
		||||
        baseMapper.updateCuMemberRetailRangeAwardByDate(rangeTableName, settleDate, EAwardsType.RANGE_TYPE.getValue());
 | 
			
		||||
        baseMapper.updateCuMemberRetailRangeAwardByDate(rangeTableName, settleDate, EAwardsType.SHARE_TYPE.getValue());
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -42,11 +42,21 @@ public interface CuMemberMapper extends BaseMapper<CuMember> {
 | 
			
		|||
    /**
 | 
			
		||||
     * 更新会员奖衔根据临时表
 | 
			
		||||
     */
 | 
			
		||||
    void updateBackCuMemberRetailRangeAward(@Param("period") Integer period);
 | 
			
		||||
    void updateBackCuMemberRetailRangeAward(@Param("period") Integer period, @Param("awardType") Integer awardType);
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 更新会员奖衔根据临时表
 | 
			
		||||
     */
 | 
			
		||||
    void updateCuMemberRetailRangeAwardByDate(@Param("settleDate") Date settleDate);
 | 
			
		||||
    void updateCuMemberRetailRangeAwardByDate(@Param("settleDate") Date settleDate, @Param("awardType") Integer awardType);
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 初始化会员奖衔
 | 
			
		||||
     */
 | 
			
		||||
    void updateCuMemberRetailRangeInitAward();
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 初始化会员V5奖衔
 | 
			
		||||
     */
 | 
			
		||||
    void updateCuMemberRetailRangeInitV5Award();
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -3,6 +3,7 @@ package com.hzs.bonus.base.service;
 | 
			
		|||
import com.baomidou.mybatisplus.extension.service.IService;
 | 
			
		||||
import com.hzs.common.domain.member.base.CuMember;
 | 
			
		||||
import com.hzs.common.domain.member.detail.CuMemberAwards;
 | 
			
		||||
import org.apache.ibatis.annotations.Param;
 | 
			
		||||
 | 
			
		||||
import java.io.Serializable;
 | 
			
		||||
import java.util.Date;
 | 
			
		||||
| 
						 | 
				
			
			@ -43,4 +44,9 @@ public interface ICuMemberService extends IService<CuMember> {
 | 
			
		|||
     */
 | 
			
		||||
    void updateCuMemberRetailRangeAwardByDate(Date settleDate);
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 初始化会员奖衔表
 | 
			
		||||
     */
 | 
			
		||||
    void updateCuMemberRetailRangeInitAward();
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -25,6 +25,7 @@ public class CuMemberServiceImpl extends ServiceImpl<CuMemberMapper, CuMember> i
 | 
			
		|||
    @Override
 | 
			
		||||
    public void updateCuMemberRetailRangeByPeriod(Integer period) {
 | 
			
		||||
        baseMapper.updateCuMemberRetailAwardsByPeriod(period, EAwardsType.RANGE_TYPE.getValue());
 | 
			
		||||
        baseMapper.updateCuMemberRetailAwardsByPeriod(period, EAwardsType.SHARE_TYPE.getValue());
 | 
			
		||||
        // 更新会员最高奖衔
 | 
			
		||||
        baseMapper.updateCuMemberMaxAwardsByPeriod(period, EAwardsType.RANGE_TYPE.getValue());
 | 
			
		||||
    }
 | 
			
		||||
| 
						 | 
				
			
			@ -32,21 +33,31 @@ public class CuMemberServiceImpl extends ServiceImpl<CuMemberMapper, CuMember> i
 | 
			
		|||
    @Override
 | 
			
		||||
    public void updateCuMemberRetailRangeByList(List<CuMemberAwards> cuMemberAwardsList, Integer period) {
 | 
			
		||||
        baseMapper.updateCuMemberRetailRangeByList(cuMemberAwardsList, period, EAwardsType.RANGE_TYPE.getValue());
 | 
			
		||||
        baseMapper.updateCuMemberRetailRangeByList(cuMemberAwardsList, period, EAwardsType.SHARE_TYPE.getValue());
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public void updateCuMemberMinAwardsByList(List<CuMemberAwards> cuMemberAwardsList, Integer period) {
 | 
			
		||||
        baseMapper.updateCuMemberRetailRangeByList(cuMemberAwardsList, period, EAwardsType.RANGE_TYPE.getValue());
 | 
			
		||||
        baseMapper.updateCuMemberRetailRangeByList(cuMemberAwardsList, period, EAwardsType.SHARE_TYPE.getValue());
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public void updateBackCuMemberRetailRangeAward(Integer period) {
 | 
			
		||||
        baseMapper.updateBackCuMemberRetailRangeAward(period);
 | 
			
		||||
        baseMapper.updateBackCuMemberRetailRangeAward(period, EAwardsType.RANGE_TYPE.getValue());
 | 
			
		||||
        baseMapper.updateBackCuMemberRetailRangeAward(period, EAwardsType.SHARE_TYPE.getValue());
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public void updateCuMemberRetailRangeAwardByDate(Date settleDate) {
 | 
			
		||||
        baseMapper.updateCuMemberRetailRangeAwardByDate(settleDate);
 | 
			
		||||
        baseMapper.updateCuMemberRetailRangeAwardByDate(settleDate, EAwardsType.RANGE_TYPE.getValue());
 | 
			
		||||
        baseMapper.updateCuMemberRetailRangeAwardByDate(settleDate, EAwardsType.SHARE_TYPE.getValue());
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public void updateCuMemberRetailRangeInitAward() {
 | 
			
		||||
        baseMapper.updateCuMemberRetailRangeInitAward();
 | 
			
		||||
        baseMapper.updateCuMemberRetailRangeInitV5Award();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -289,7 +289,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
 | 
			
		|||
        // 结算明细前一天表
 | 
			
		||||
        String yesterdayRangeDetailTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE_DETAIL + yesterdayPeriod;
 | 
			
		||||
 | 
			
		||||
        // 回退奖衔,将奖衔回退到结算前状态
 | 
			
		||||
        // TODO 回退奖衔,将奖衔回退到结算前状态
 | 
			
		||||
        iCuMemberAwardsService.calculateCuMemberRetailRangeAwardsInit(settleDate, period, rangeTableName);
 | 
			
		||||
        // 初始化结算网体数据(昨天数据更新到今天数据)
 | 
			
		||||
        iCuMemberRetailRangeService.mergeMemberRetailRangeByYesterday(rangeTableName, yesterdayRangeTableName, isSameMonth);
 | 
			
		||||
| 
						 | 
				
			
			@ -330,52 +330,26 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
 | 
			
		|||
            List<CuMemberBonusDetail> cuMemberBonusDetailList = new ArrayList<>();
 | 
			
		||||
 | 
			
		||||
            for (SaOrderExt saOrderExt : orderList) {
 | 
			
		||||
                CuMemberRetailRangeExt sourceMember = memberRangeExtMap.get(saOrderExt.getPkMember());
 | 
			
		||||
                if (null == sourceMember) {
 | 
			
		||||
                    log.warn("订单会员不存在, pkMember: {}", saOrderExt.getPkMember());
 | 
			
		||||
                    continue;
 | 
			
		||||
                }
 | 
			
		||||
                BigDecimal orderAchieve = saOrderExt.getOrderAchieve();
 | 
			
		||||
                BigDecimal orderAmount = saOrderExt.getOrderAmount();
 | 
			
		||||
 | 
			
		||||
                // 自己消费的相关金额、业绩处理
 | 
			
		||||
                sourceMember.setNewConsumePv(orderAchieve);
 | 
			
		||||
                sourceMember.setConsumePv(sourceMember.getConsumePv().add(orderAchieve));
 | 
			
		||||
                sourceMember.setMonthConsumePv(sourceMember.getMonthConsumePv().add(orderAchieve));
 | 
			
		||||
                sourceMember.setNewConsumeAmount(orderAmount);
 | 
			
		||||
                sourceMember.setConsumeAmount(sourceMember.getConsumeAmount().add(orderAmount));
 | 
			
		||||
                sourceMember.setMonthConsumeAmount(sourceMember.getMonthConsumeAmount().add(orderAmount));
 | 
			
		||||
                // TODO 自己计算奖衔
 | 
			
		||||
                this.calculateAwards(period, memberRangeExtMap, rangeTableName, saOrderExt, retailAwardsMap, cuMemberAwardsList, sourceMember);
 | 
			
		||||
                // TODO 累计团队业绩、金额 + 计算奖衔
 | 
			
		||||
                this.calculateParentAwards(period, memberRangeExtMap, rangeTableName, sourceMember, saOrderExt, retailAwardsMap);
 | 
			
		||||
 | 
			
		||||
                if (EOrderType.RETAIL_REGISTER.getValue() == saOrderExt.getOrderType()
 | 
			
		||||
                        || EOrderType.RETAIL_UPGRADE.getValue() == saOrderExt.getOrderType()) {
 | 
			
		||||
                    // 精品专区、甄选专区
 | 
			
		||||
                    sourceMember.setRegConsumeNewPv(sourceMember.getRegConsumeNewPv().add(orderAchieve));
 | 
			
		||||
                    sourceMember.setRegConsumeNewAmount(sourceMember.getRegConsumeNewAmount().add(orderAmount));
 | 
			
		||||
 | 
			
		||||
                    // 直推收益 -- 来源订单金额,直推拿金额的10%
 | 
			
		||||
                    this.calculateDirectIncome(cuMemberBonusPushList, memberRangeExtMap, sourceMember, saOrderExt,
 | 
			
		||||
                    this.calculateDirectIncome(cuMemberBonusPushList, memberRangeExtMap, saOrderExt,
 | 
			
		||||
                            bonusConfigDTO, period, cuMemberBonusMap);
 | 
			
		||||
                    // 一阶段收益 -- 来源订单金额
 | 
			
		||||
                    stageList.addAll(this.calculateStageIncome(cuMemberBonusStageList, cuMemberBonusMap, bonusConfigDTO, period,
 | 
			
		||||
                            memberRangeExtMap, sourceMember, saOrderExt, settleStartDate, rangeTableName, rangeDetailTableName));
 | 
			
		||||
                            memberRangeExtMap, saOrderExt, settleStartDate, rangeTableName, rangeDetailTableName));
 | 
			
		||||
 | 
			
		||||
                    // TODO 领导级差收益 -- 来源PV
 | 
			
		||||
                    // TODO 领导平差收益 -- 来源PV
 | 
			
		||||
                } else if (EOrderType.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType()) {
 | 
			
		||||
                    // 商城专区
 | 
			
		||||
                    sourceMember.setRepConsumeNewPv(sourceMember.getRepConsumeNewPv().add(orderAchieve));
 | 
			
		||||
                    sourceMember.setRepConsumeNewAmount(sourceMember.getRepConsumeNewAmount().add(orderAmount));
 | 
			
		||||
 | 
			
		||||
                    // 见点收益 -- 来源订单业绩,血缘上20代,每代拿业绩的10%
 | 
			
		||||
                    this.calculateRepurDirectIncome(cuMemberBonusPushList, memberRangeExtMap, sourceMember, saOrderExt,
 | 
			
		||||
                    this.calculateRepurDirectIncome(cuMemberBonusPushList, memberRangeExtMap, saOrderExt,
 | 
			
		||||
                            bonusConfigDTO, period, cuMemberBonusMap);
 | 
			
		||||
                    // 一阶段收益 -- 来源订单累计业绩
 | 
			
		||||
                    stageList.addAll(this.calculateStageIncome(cuMemberBonusStageList, cuMemberBonusMap, bonusConfigDTO, period,
 | 
			
		||||
                            memberRangeExtMap, sourceMember, saOrderExt, settleStartDate, rangeTableName, rangeDetailTableName));
 | 
			
		||||
                            memberRangeExtMap, saOrderExt, settleStartDate, rangeTableName, rangeDetailTableName));
 | 
			
		||||
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
| 
						 | 
				
			
			@ -845,9 +819,15 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
 | 
			
		|||
    /**
 | 
			
		||||
     * 计算直推收益 -- 精品专区
 | 
			
		||||
     */
 | 
			
		||||
    private void calculateDirectIncome(List<CuMemberBonusPush> cuMemberBonusPushList, Map<Long, CuMemberRetailRangeExt> memberRangeExtMap,
 | 
			
		||||
                                       CuMemberRetailRangeExt sourceMember, SaOrderExt saOrderExt,
 | 
			
		||||
    private void calculateDirectIncome(List<CuMemberBonusPush> cuMemberBonusPushList, Map<Long, CuMemberRetailRangeExt> memberRangeExtMap, SaOrderExt saOrderExt,
 | 
			
		||||
                                       BonusConfigDTO bonusConfigDTO, Integer period, Map<Long, CuMemberBonus> cuMemberBonusMap) {
 | 
			
		||||
        // 订单会员
 | 
			
		||||
        CuMemberRetailRangeExt sourceMember = memberRangeExtMap.get(saOrderExt.getPkMember());
 | 
			
		||||
        if (null == sourceMember) {
 | 
			
		||||
            log.warn("直推收益:订单会员不存在, pkMember: {}", saOrderExt.getPkMember());
 | 
			
		||||
            return;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        // 订单会员推荐人
 | 
			
		||||
        CuMemberRetailRangeExt targetMember = memberRangeExtMap.get(sourceMember.getPkParent());
 | 
			
		||||
        if (null == targetMember) {
 | 
			
		||||
| 
						 | 
				
			
			@ -888,9 +868,14 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
 | 
			
		|||
    /**
 | 
			
		||||
     * 计算见点收益 -- 商城专区
 | 
			
		||||
     */
 | 
			
		||||
    private void calculateRepurDirectIncome(List<CuMemberBonusPush> cuMemberBonusPushList, Map<Long, CuMemberRetailRangeExt> memberRangeExtMap,
 | 
			
		||||
                                            CuMemberRetailRangeExt sourceMember, SaOrderExt saOrderExt,
 | 
			
		||||
    private void calculateRepurDirectIncome(List<CuMemberBonusPush> cuMemberBonusPushList, Map<Long, CuMemberRetailRangeExt> memberRangeExtMap, SaOrderExt saOrderExt,
 | 
			
		||||
                                            BonusConfigDTO bonusConfigDTO, Integer period, Map<Long, CuMemberBonus> cuMemberBonusMap) {
 | 
			
		||||
        // 订单会员
 | 
			
		||||
        CuMemberRetailRangeExt sourceMember = memberRangeExtMap.get(saOrderExt.getPkMember());
 | 
			
		||||
        if (null == sourceMember) {
 | 
			
		||||
            log.warn("订单会员不存在, pkMember: {}", saOrderExt.getPkMember());
 | 
			
		||||
            return;
 | 
			
		||||
        }
 | 
			
		||||
        // 推荐人
 | 
			
		||||
        long pkParent = sourceMember.getPkParent();
 | 
			
		||||
        // 代数
 | 
			
		||||
| 
						 | 
				
			
			@ -974,10 +959,16 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
 | 
			
		|||
     * 计算一阶段收益 -- 精品专区、商城专区
 | 
			
		||||
     */
 | 
			
		||||
    private List<CuMemberRetailDetail> calculateStageIncome(List<CuMemberBonusStage> cuMemberBonusStageList, Map<Long, CuMemberBonus> cuMemberBonusMap,
 | 
			
		||||
                                                            BonusConfigDTO bonusConfigDTO, Integer period, Map<Long, CuMemberRetailRangeExt> memberRangeExtMap,
 | 
			
		||||
                                                            CuMemberRetailRangeExt sourceMember, SaOrderExt saOrderExt,
 | 
			
		||||
                                                            BonusConfigDTO bonusConfigDTO, Integer period,
 | 
			
		||||
                                                            Map<Long, CuMemberRetailRangeExt> memberRangeExtMap, SaOrderExt saOrderExt,
 | 
			
		||||
                                                            Date settleDate, String rangeTableName, String rangeDetailTableName) {
 | 
			
		||||
        List<CuMemberRetailDetail> returnRetailDetailList = new ArrayList<>();
 | 
			
		||||
        // 订单会员
 | 
			
		||||
        CuMemberRetailRangeExt sourceMember = memberRangeExtMap.get(saOrderExt.getPkMember());
 | 
			
		||||
        if (null == sourceMember) {
 | 
			
		||||
            log.error("阶段收益处理失败,订单会员不存在. orderCode: {}, pkMember: {}", saOrderExt.getOrderCode(), saOrderExt.getPkMember());
 | 
			
		||||
            return returnRetailDetailList;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        // 订单生成新点位数量
 | 
			
		||||
        int newPointInt;
 | 
			
		||||
| 
						 | 
				
			
			@ -1288,120 +1279,4 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
 | 
			
		|||
        return resultList;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 计算奖衔
 | 
			
		||||
     */
 | 
			
		||||
    private void calculateAwards(Integer period, Map<Long, CuMemberRetailRangeExt> memberRangeExtMap, String rangeTableName,
 | 
			
		||||
                                 SaOrderExt saOrderExt, Map<Integer, BdAwards> retailAwardsMap, List<CuMemberAwards> cuMemberAwardsList,
 | 
			
		||||
                                 CuMemberRetailRangeExt targetMember) {
 | 
			
		||||
//        // 校验大小区会员数据
 | 
			
		||||
//        List<CuMemberRetailRangeExt> cuMemberRangeExtList = null;
 | 
			
		||||
//        // 校验累计小部门会员数据
 | 
			
		||||
//        List<CuMemberRetailRangeExt> cuMemberRetailRangeExtList = null;
 | 
			
		||||
//        // 计算分红奖衔
 | 
			
		||||
//        while (true) {
 | 
			
		||||
//            // 当月奖衔值 + 5,获取下一个奖衔值
 | 
			
		||||
//            int awardsValue = targetMember.getAwardsValue() + 5;
 | 
			
		||||
//            if (retailAwardsMap.containsKey(awardsValue)) {
 | 
			
		||||
//                BdAwards bdAwards = retailAwardsMap.get(awardsValue);
 | 
			
		||||
//                // 先验证累计业绩
 | 
			
		||||
//                if (ComputeUtil.compareValue(ComputeUtil.computeAdd(targetMember.getTeamConsumePv(), targetMember.getConsumePv()), bdAwards.getShareTotalCheck())) {
 | 
			
		||||
//                    // 再验证小区,计算小区业绩(拉取直推会员数据)
 | 
			
		||||
//                    if (null == cuMemberRangeExtList) {
 | 
			
		||||
//                        // 昨日结算表,查询订单会员直推数据
 | 
			
		||||
//                        cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeExtByParent(rangeTableName, targetMember.getPkMember());
 | 
			
		||||
//                    }
 | 
			
		||||
//                    // 本人月消费业绩(默认为大区)
 | 
			
		||||
//                    BigDecimal consumeBigPv = targetMember.getMonthConsumePv();
 | 
			
		||||
//                    for (CuMemberRetailRangeExt cuMemberRetailRangeExt : cuMemberRangeExtList) {
 | 
			
		||||
//                        if (memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) {
 | 
			
		||||
//                            cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember());
 | 
			
		||||
//                        }
 | 
			
		||||
//                        // 月累计业绩 = 本人月消费业绩 + 团队月消费业绩
 | 
			
		||||
//                        BigDecimal consumePv = ComputeUtil.computeAdd(cuMemberRetailRangeExt.getMonthConsumePv(), cuMemberRetailRangeExt.getAllTeamMonthPv());
 | 
			
		||||
//                        if (ComputeUtil.compareGreaterThan(consumePv, consumeBigPv)) {
 | 
			
		||||
//                            // 月累计业绩 > 大区业绩,则月累计就成为大区了
 | 
			
		||||
//                            consumeBigPv = consumePv;
 | 
			
		||||
//                        }
 | 
			
		||||
//                    }
 | 
			
		||||
//
 | 
			
		||||
//                    // 小区业绩 = 本人月消费业绩 + 团队月消费业绩 - 大区业绩
 | 
			
		||||
//                    BigDecimal smallAreaPv = ComputeUtil.computeAdd(targetMember.getMonthConsumePv(), ComputeUtil.computeSubtract(targetMember.getTeamMonthPv(), consumeBigPv));
 | 
			
		||||
//                    if (ComputeUtil.compareValue(smallAreaPv, bdAwards.getShareCommunityCheck())) {
 | 
			
		||||
//                        // 小区业绩 >= 小区考核业绩
 | 
			
		||||
//                        if (bdAwards.getPlaceDeptNum() > 0) {
 | 
			
		||||
//                            // 验证是否有多个区满足业绩
 | 
			
		||||
//                            if (null == cuMemberRetailRangeExtList) {
 | 
			
		||||
//                                // 昨日结算表,查询订单会员直推数据
 | 
			
		||||
//                                cuMemberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeEnoughAchieve(rangeTableName, targetMember.getPkMember(), bdAwards.getShareCommunityCheck());
 | 
			
		||||
//                            }
 | 
			
		||||
//
 | 
			
		||||
//                            int enoughNum = 0;
 | 
			
		||||
//                            if (ComputeUtil.compareValue(targetMember.getMonthConsumePv(), bdAwards.getShareCommunityCheck())) {
 | 
			
		||||
//                                enoughNum += 1;
 | 
			
		||||
//                            }
 | 
			
		||||
//                            for (CuMemberRetailRangeExt cuMemberRetailRangeExt : cuMemberRetailRangeExtList) {
 | 
			
		||||
//                                if (memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) {
 | 
			
		||||
//                                    cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember());
 | 
			
		||||
//                                }
 | 
			
		||||
//                                if (ComputeUtil.compareValue(ComputeUtil.computeAdd(cuMemberRetailRangeExt.getMonthConsumePv(), cuMemberRetailRangeExt.getAllTeamMonthPv()), bdAwards.getShareCommunityCheck())) {
 | 
			
		||||
//                                    // 本人月消费业绩 + 团队月消费业绩 >= 小区考核业绩,则满足条件小部门 +1
 | 
			
		||||
//                                    enoughNum += 1;
 | 
			
		||||
//                                }
 | 
			
		||||
//                            }
 | 
			
		||||
//                            if (bdAwards.getPlaceDeptNum() > enoughNum) {
 | 
			
		||||
//                                break;
 | 
			
		||||
//                            }
 | 
			
		||||
//                        }
 | 
			
		||||
//                        cuMemberAwardsList.add(getCuMemberRetailAwards(targetMember, period, saOrderExt, bdAwards, EAwardsType.SHARE_TYPE.getValue(), targetMember.getPkShareAwards()));
 | 
			
		||||
//                        targetMember.setAwardsValue(bdAwards.getAwardsValue());
 | 
			
		||||
//                        targetMember.setPkAwards(bdAwards.getPkId());
 | 
			
		||||
//                        continue;
 | 
			
		||||
//                    }
 | 
			
		||||
//                }
 | 
			
		||||
//            }
 | 
			
		||||
//            break;
 | 
			
		||||
//        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 计算团队奖衔
 | 
			
		||||
     */
 | 
			
		||||
    public List<CuMemberAwards> calculateParentAwards(Integer period, Map<Long, CuMemberRetailRangeExt> memberRangeExtMap, String rangeTableName,
 | 
			
		||||
                                                      CuMemberRetailRangeExt sourceMember, SaOrderExt saOrderExt, Map<Integer, BdAwards> retailAwardsMap) {
 | 
			
		||||
        // 会员奖衔升级列表
 | 
			
		||||
        List<CuMemberAwards> cuMemberAwardsList = new ArrayList<>();
 | 
			
		||||
        // 订单会员的推荐人
 | 
			
		||||
        CuMemberRetailRangeExt targetMember = memberRangeExtMap.get(sourceMember.getPkParent());
 | 
			
		||||
 | 
			
		||||
        BigDecimal orderAchieve = saOrderExt.getOrderAchieve();
 | 
			
		||||
        BigDecimal orderAmount = saOrderExt.getOrderAmount();
 | 
			
		||||
        while (null != targetMember) {
 | 
			
		||||
            // 累计业绩
 | 
			
		||||
            targetMember.setTeamNewPv(targetMember.getTeamNewPv().add(orderAchieve));
 | 
			
		||||
            targetMember.setTeamConsumePv(targetMember.getTeamConsumePv().add(orderAchieve));
 | 
			
		||||
            targetMember.setTeamMonthPv(targetMember.getTeamMonthPv().add(orderAchieve));
 | 
			
		||||
            // 累计金额
 | 
			
		||||
            targetMember.setTeamNewAmount(targetMember.getTeamNewAmount().add(orderAmount));
 | 
			
		||||
            targetMember.setTeamConsumeAmount(targetMember.getTeamConsumeAmount().add(orderAmount));
 | 
			
		||||
            targetMember.setTeamMonthAmount(targetMember.getTeamMonthAmount().add(orderAmount));
 | 
			
		||||
            if (EOrderType.RETAIL_REGISTER.getValue() == saOrderExt.getOrderType()
 | 
			
		||||
                    || EOrderType.RETAIL_UPGRADE.getValue() == saOrderExt.getOrderType()
 | 
			
		||||
            ) {
 | 
			
		||||
                // 团队精品专区
 | 
			
		||||
                targetMember.setRegTeamNewPv(targetMember.getRegTeamNewPv().add(orderAchieve));
 | 
			
		||||
                targetMember.setRegTeamNewAmount(targetMember.getRegTeamNewAmount().add(orderAmount));
 | 
			
		||||
            } else if (EOrderType.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType()) {
 | 
			
		||||
                // 团队商城专区
 | 
			
		||||
                targetMember.setRepTeamNewPv(targetMember.getRepTeamNewPv().add(orderAchieve));
 | 
			
		||||
                targetMember.setRepTeamNewAmount(targetMember.getRepTeamNewAmount().add(orderAmount));
 | 
			
		||||
            }
 | 
			
		||||
            // 计算奖衔
 | 
			
		||||
            calculateAwards(period, memberRangeExtMap, rangeTableName, saOrderExt, retailAwardsMap, cuMemberAwardsList, targetMember);
 | 
			
		||||
 | 
			
		||||
            targetMember = memberRangeExtMap.get(targetMember.getPkParent());
 | 
			
		||||
        }
 | 
			
		||||
        return cuMemberAwardsList;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -13,6 +13,9 @@ public interface ICuMemberAwardsService extends IService<CuMemberAwards> {
 | 
			
		|||
 | 
			
		||||
    /**
 | 
			
		||||
     * 回退极差奖衔,每日重新结算,先把奖衔回退到前一天
 | 
			
		||||
     *
 | 
			
		||||
     * @param period         结算期间
 | 
			
		||||
     * @param rangeTableName 结算表
 | 
			
		||||
     */
 | 
			
		||||
    void calculateCuMemberRetailRangeAwardsInit(String settleDate, Integer period, String rangeTableName);
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -432,52 +432,71 @@
 | 
			
		|||
        <include refid="CuMemberTableTrig"></include>
 | 
			
		||||
    </update>
 | 
			
		||||
 | 
			
		||||
    <!-- 回退会员奖衔 -->
 | 
			
		||||
    <update id="updateBackCuMemberRetailRangeAward">
 | 
			
		||||
        merge into ${rangeTableName} a
 | 
			
		||||
            using (
 | 
			
		||||
                select ca.pk_member, max(old_level) pk_awards
 | 
			
		||||
                from cu_member_awards ca
 | 
			
		||||
                         inner join ${rangeTableName} cm
 | 
			
		||||
                                    on ca.pk_member = cm.pk_member
 | 
			
		||||
                where ca.period = #{period}
 | 
			
		||||
                  and ca.up_type = 1
 | 
			
		||||
                  and ca.del_flag = 0
 | 
			
		||||
                  and cm.pk_awards <= ca.new_level
 | 
			
		||||
                group by ca.pk_member
 | 
			
		||||
            ) b
 | 
			
		||||
            on (a.pk_member = b.pk_member)
 | 
			
		||||
            when matched then
 | 
			
		||||
                update set
 | 
			
		||||
                    a.pk_awards = b.pk_awards
 | 
			
		||||
        using (
 | 
			
		||||
        select ca.pk_member, max(old_level) pk_awards
 | 
			
		||||
        from cu_member_awards ca
 | 
			
		||||
        inner join ${rangeTableName} cm
 | 
			
		||||
        on ca.pk_member = cm.pk_member
 | 
			
		||||
        where ca.period = #{period}
 | 
			
		||||
        and ca.up_type = 1
 | 
			
		||||
        and ca.award_type = #{awardType}
 | 
			
		||||
        and ca.del_flag = 0
 | 
			
		||||
        <if test="awardType == 1">
 | 
			
		||||
            and cm.pk_awards <= ca.new_level
 | 
			
		||||
        </if>
 | 
			
		||||
        <if test="awardType == 2">
 | 
			
		||||
            and cm.pk_share_awards <= ca.new_level
 | 
			
		||||
        </if>
 | 
			
		||||
        group by ca.pk_member
 | 
			
		||||
        ) b
 | 
			
		||||
        on (a.pk_member = b.pk_member)
 | 
			
		||||
        when matched then
 | 
			
		||||
        update set
 | 
			
		||||
        <if test="awardType == 1">
 | 
			
		||||
            a.pk_awards = b.pk_awards
 | 
			
		||||
        </if>
 | 
			
		||||
        <if test="awardType == 2">
 | 
			
		||||
            a.pk_share_awards=b.pk_awards
 | 
			
		||||
        </if>
 | 
			
		||||
    </update>
 | 
			
		||||
 | 
			
		||||
    <!-- 回退会员奖衔 -->
 | 
			
		||||
    <update id="updateCuMemberRetailRangeAwardByDate">
 | 
			
		||||
        merge into ${rangeTableName} a
 | 
			
		||||
            using (
 | 
			
		||||
                select y.pk_member, y.pk_awards
 | 
			
		||||
                from ${rangeTableName} x
 | 
			
		||||
                         inner join (
 | 
			
		||||
                    select a.pk_member, a.new_level pk_awards
 | 
			
		||||
                    from cu_member_awards a
 | 
			
		||||
                             inner join (
 | 
			
		||||
                        select pk_member, max(pk_id) pk_id
 | 
			
		||||
                        from cu_member_awards
 | 
			
		||||
                        where del_flag = 0
 | 
			
		||||
                          and up_type = 2
 | 
			
		||||
                          and end_validity_date <= #{settleDate, jdbcType=DATE}
 | 
			
		||||
                        group by pk_member) b
 | 
			
		||||
                                        on a.pk_id = b.pk_id
 | 
			
		||||
                    where a.del_flag = 0
 | 
			
		||||
                ) y
 | 
			
		||||
                                    on x.pk_member = y.pk_member
 | 
			
		||||
                where x.pk_awards < y.pk_awards
 | 
			
		||||
            ) b
 | 
			
		||||
            on (a.pk_member = b.pk_member)
 | 
			
		||||
            when matched then
 | 
			
		||||
                update set
 | 
			
		||||
                    a.pk_awards = b.pk_awards
 | 
			
		||||
        using (
 | 
			
		||||
        select y.pk_member,y.pk_awards from ${rangeTableName} x
 | 
			
		||||
        inner join (
 | 
			
		||||
        select a.pk_member,a.new_level pk_awards
 | 
			
		||||
        from cu_member_awards a
 | 
			
		||||
        inner join (
 | 
			
		||||
        select pk_member, max(pk_id) pk_id
 | 
			
		||||
        from cu_member_awards
 | 
			
		||||
        where del_flag = 0 and up_type = 2
 | 
			
		||||
        and end_validity_date <= #{settleDate, jdbcType=DATE}
 | 
			
		||||
        and award_type = #{awardType}
 | 
			
		||||
        group by pk_member) b
 | 
			
		||||
        on a.pk_id = b.pk_id
 | 
			
		||||
        where a.del_flag = 0
 | 
			
		||||
        ) y
 | 
			
		||||
        on x.pk_member = y.pk_member
 | 
			
		||||
        where
 | 
			
		||||
        <if test="awardType == 1">
 | 
			
		||||
            x.pk_awards < y.pk_awards
 | 
			
		||||
        </if>
 | 
			
		||||
        <if test="awardType == 2">
 | 
			
		||||
            x.pk_share_awards < y.pk_awards
 | 
			
		||||
        </if>
 | 
			
		||||
        ) b
 | 
			
		||||
        on (a.pk_member = b.pk_member)
 | 
			
		||||
        when matched then
 | 
			
		||||
        update set
 | 
			
		||||
        <if test="awardType == 1">
 | 
			
		||||
            a.pk_awards = b.pk_awards
 | 
			
		||||
        </if>
 | 
			
		||||
        <if test="awardType == 2">
 | 
			
		||||
            a.pk_share_awards = b.pk_awards
 | 
			
		||||
        </if>
 | 
			
		||||
    </update>
 | 
			
		||||
 | 
			
		||||
    <update id="createCuMemberRetailRangeSecondTable">
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -123,52 +123,94 @@
 | 
			
		|||
                update set a.pk_max_awards = b.pk_awards, a.modified_time = sysdate
 | 
			
		||||
    </update>
 | 
			
		||||
 | 
			
		||||
    <!-- 更新会员奖衔根据临时表 -->
 | 
			
		||||
 | 
			
		||||
    <update id="updateBackCuMemberRetailRangeAward">
 | 
			
		||||
        merge into cu_member a
 | 
			
		||||
            using (select pk_member, max(old_level) pk_awards
 | 
			
		||||
                   from cu_member_awards ca
 | 
			
		||||
                            inner join cu_member cm
 | 
			
		||||
                                       on ca.pk_member = cm.pk_id
 | 
			
		||||
                   where ca.period = #{period}
 | 
			
		||||
                     and ca.up_type = 1
 | 
			
		||||
                     and ca.del_flag = 0
 | 
			
		||||
                     and cm.pk_awards < ca.new_level
 | 
			
		||||
                   group by ca.pk_member) b
 | 
			
		||||
            on (a.pk_id = b.pk_member)
 | 
			
		||||
            when matched then
 | 
			
		||||
                update set
 | 
			
		||||
                    a.pk_awards = b.pk_awards,
 | 
			
		||||
                    a.modified_time = sysdate
 | 
			
		||||
        using (select pk_member, max(old_level) pk_awards
 | 
			
		||||
        from cu_member_awards ca
 | 
			
		||||
        inner join cu_member cm
 | 
			
		||||
        on ca.pk_member = cm.pk_id
 | 
			
		||||
        where ca.period = #{period}
 | 
			
		||||
        and ca.up_type = 1
 | 
			
		||||
        and award_type = #{awardType}
 | 
			
		||||
        and ca.del_flag = 0
 | 
			
		||||
        <if test="awardType == 1">
 | 
			
		||||
            and cm.pk_awards < ca.new_level
 | 
			
		||||
        </if>
 | 
			
		||||
        <if test="awardType == 2">
 | 
			
		||||
            and cm.pk_range_awards < ca.new_level
 | 
			
		||||
        </if>
 | 
			
		||||
        group by ca.pk_member) b
 | 
			
		||||
        on (a.pk_id = b.pk_member)
 | 
			
		||||
        when matched then
 | 
			
		||||
        update set
 | 
			
		||||
        <if test="awardType == 1">
 | 
			
		||||
            a.pk_awards = b.pk_awards,
 | 
			
		||||
        </if>
 | 
			
		||||
        <if test="awardType == 2">
 | 
			
		||||
            a.pk_range_awards = b.pk_awards,
 | 
			
		||||
        </if>
 | 
			
		||||
        a.modified_time = sysdate
 | 
			
		||||
    </update>
 | 
			
		||||
 | 
			
		||||
    <!-- 更新会员奖衔根据临时表 -->
 | 
			
		||||
    <update id="updateCuMemberRetailRangeAwardByDate">
 | 
			
		||||
        merge into cu_member a
 | 
			
		||||
            using (
 | 
			
		||||
                select y.pk_member, y.pk_awards
 | 
			
		||||
                from cu_member x
 | 
			
		||||
                         inner join (
 | 
			
		||||
                    select a.pk_member, a.new_level pk_awards
 | 
			
		||||
                    from cu_member_awards a
 | 
			
		||||
                             inner join (
 | 
			
		||||
                        select pk_member, max(pk_id) pk_id
 | 
			
		||||
                        from cu_member_awards
 | 
			
		||||
                        where del_flag = 0
 | 
			
		||||
                          and up_type = 2
 | 
			
		||||
                          and end_validity_date <= #{settleDate, jdbcType=DATE}
 | 
			
		||||
                        group by pk_member) b
 | 
			
		||||
                                        on a.pk_id = b.pk_id
 | 
			
		||||
                    where a.del_flag = 0
 | 
			
		||||
                ) y
 | 
			
		||||
                                    on x.pk_id = y.pk_member
 | 
			
		||||
                where x.pk_awards < y.pk_awards
 | 
			
		||||
            ) b
 | 
			
		||||
            on (a.pk_id = b.pk_member)
 | 
			
		||||
            when matched then
 | 
			
		||||
                update set
 | 
			
		||||
                    a.pk_awards = b.pk_awards,
 | 
			
		||||
                    a.modified_time = sysdate
 | 
			
		||||
        using (
 | 
			
		||||
        select y.pk_member, y.pk_awards
 | 
			
		||||
        from cu_member x
 | 
			
		||||
        inner join (
 | 
			
		||||
        select a.pk_member,a.new_level pk_awards
 | 
			
		||||
        from cu_member_awards a
 | 
			
		||||
        inner join (
 | 
			
		||||
        select pk_member, max(pk_id) pk_id
 | 
			
		||||
        from cu_member_awards
 | 
			
		||||
        where del_flag = 0
 | 
			
		||||
        and up_type = 2
 | 
			
		||||
        and end_validity_date <= #{settleDate, jdbcType=DATE}
 | 
			
		||||
        and award_type = #{awardType}
 | 
			
		||||
        group by pk_member) b
 | 
			
		||||
        on a.pk_id = b.pk_id
 | 
			
		||||
        where a.del_flag = 0
 | 
			
		||||
        ) y
 | 
			
		||||
        on x.pk_id = y.pk_member
 | 
			
		||||
        where
 | 
			
		||||
        <if test="awardType == 1">
 | 
			
		||||
            x.pk_awards < y.pk_awards
 | 
			
		||||
        </if>
 | 
			
		||||
        <if test="awardType == 2">
 | 
			
		||||
            x.pk_range_awards < y.pk_awards
 | 
			
		||||
        </if>
 | 
			
		||||
        ) b
 | 
			
		||||
        on (a.pk_id = b.pk_member)
 | 
			
		||||
        when matched then
 | 
			
		||||
        update set
 | 
			
		||||
        <if test="awardType == 1">
 | 
			
		||||
            a.pk_awards = b.pk_awards,
 | 
			
		||||
        </if>
 | 
			
		||||
        <if test="awardType == 2">
 | 
			
		||||
            a.pk_range_awards = b.pk_awards,
 | 
			
		||||
        </if>
 | 
			
		||||
        a.modified_time = sysdate
 | 
			
		||||
    </update>
 | 
			
		||||
 | 
			
		||||
    <!-- 初始化会员奖衔 -->
 | 
			
		||||
    <update id="updateCuMemberRetailRangeInitAward">
 | 
			
		||||
        update cu_member
 | 
			
		||||
        set pk_awards = (select pk_id from bd_awards where awards_value = 0),
 | 
			
		||||
            pk_range_awards = (select pk_id from bd_awards where awards_value = 0)
 | 
			
		||||
    </update>
 | 
			
		||||
 | 
			
		||||
    <!-- 初始化会员V5奖衔 -->
 | 
			
		||||
    <update id="updateCuMemberRetailRangeInitV5Award">
 | 
			
		||||
        update cu_member
 | 
			
		||||
        set pk_awards       = (select pk_id from bd_awards where awards_value = 5),
 | 
			
		||||
            pk_range_awards = (select pk_id from bd_awards where awards_value = 5)
 | 
			
		||||
        where pk_settle_grade = (
 | 
			
		||||
            select pk_id
 | 
			
		||||
            from bd_grade
 | 
			
		||||
            where grade_value = 70
 | 
			
		||||
              and del_flag = 0
 | 
			
		||||
        )
 | 
			
		||||
    </update>
 | 
			
		||||
 | 
			
		||||
    <update id="updateCuMemberRetailRangeByList">
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -98,10 +98,16 @@
 | 
			
		|||
    <!-- 删除自动升级的奖衔升级记录 -->
 | 
			
		||||
    <delete id="deleteCuMemberAwards">
 | 
			
		||||
        update cu_member_awards cma
 | 
			
		||||
        set cma.del_flag      = 1,
 | 
			
		||||
            cma.modified_time = sysdate
 | 
			
		||||
        set cma.del_flag = 1,
 | 
			
		||||
        cma.modified_time = sysdate
 | 
			
		||||
        where period = #{period}
 | 
			
		||||
        and up_type = 1
 | 
			
		||||
 | 
			
		||||
        <!--
 | 
			
		||||
        delete from cu_member_awards
 | 
			
		||||
        where period = #{period}
 | 
			
		||||
          and up_type = 1
 | 
			
		||||
          -->
 | 
			
		||||
    </delete>
 | 
			
		||||
 | 
			
		||||
    <!-- 删除升级的奖衔 -->
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,5 +1,6 @@
 | 
			
		|||
package com.hzs.common.core.enums;
 | 
			
		||||
 | 
			
		||||
import com.hzs.common.core.constant.EnumsPrefixConstants;
 | 
			
		||||
import lombok.AllArgsConstructor;
 | 
			
		||||
import lombok.Getter;
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -11,9 +12,9 @@ import lombok.Getter;
 | 
			
		|||
public enum EAwardsType {
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 荣誉奖衔
 | 
			
		||||
     * 当月奖衔
 | 
			
		||||
     */
 | 
			
		||||
    RANGE_TYPE(1, "荣誉奖衔", 0),
 | 
			
		||||
    RANGE_TYPE(1, "当月奖衔", 0),
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 分红奖衔
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -25,15 +25,14 @@ public enum EBonusItems {
 | 
			
		|||
     * 阶段收益 -- 精品专区、商城专区
 | 
			
		||||
     */
 | 
			
		||||
    STAGE_INCOME(21, "阶段收益", 0),
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 领导奖金收益 -- 精品专区、商城专区
 | 
			
		||||
     * 级差收益 -- 精品专区、商城专区
 | 
			
		||||
     */
 | 
			
		||||
    RANGE_INCOME(22, "领导奖金收益", 0),
 | 
			
		||||
    RANGE_INCOME(22, "级差收益", 0),
 | 
			
		||||
    /**
 | 
			
		||||
     * 平级奖金收益 -- 精品专区、商城专区
 | 
			
		||||
     * 平级收益 -- 精品专区、商城专区
 | 
			
		||||
     */
 | 
			
		||||
    SAME_LEVEL_INCOME(23, "平级奖金收益", 0),
 | 
			
		||||
    SAME_LEVEL_INCOME(23, "平级收益", 0),
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 见点收益 -- 商城专区
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue