|  | @@ -8,6 +8,13 @@ import cn.newfeifan.mall.module.distri.dal.dataobject.ptprofitlog.PtProfitLogDO;
 | 
	
		
			
				|  |  |  import org.apache.ibatis.annotations.Mapper;
 | 
	
		
			
				|  |  |  import cn.newfeifan.mall.module.distri.controller.app.ptprofitlog.vo.*;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +import java.util.Arrays;
 | 
	
		
			
				|  |  | +import java.util.List;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +import static cn.newfeifan.mall.module.distri.constant.DistriConstants.PT_ID;
 | 
	
		
			
				|  |  | +import static cn.newfeifan.mall.module.distri.enums.CaclEnum.*;
 | 
	
		
			
				|  |  | +import static cn.newfeifan.mall.module.distri.enums.CaclEnum.GROSS_PROFIT_ANCESTOR_QUOTA_PERC_EXCEED_MAXIMUM_LIMIT;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |  /**
 | 
	
		
			
				|  |  |   * 平台利润记录 Mapper
 | 
	
		
			
				|  |  |   *
 | 
	
	
		
			
				|  | @@ -17,24 +24,49 @@ import cn.newfeifan.mall.module.distri.controller.app.ptprofitlog.vo.*;
 | 
	
		
			
				|  |  |  public interface PtProfitLogMapper extends BaseMapperX<PtProfitLogDO> {
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      default PageResult<PtProfitLogDO> selectPage(PtProfitLogPageReqVO reqVO) {
 | 
	
		
			
				|  |  | +        //用户只能查看这些类型
 | 
	
		
			
				|  |  | +        List<Integer> profitStatus = null;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +        if (!reqVO.getIsFreeze()) {
 | 
	
		
			
				|  |  | +            profitStatus = Arrays.asList(
 | 
	
		
			
				|  |  | +                    RECOMMENDED_PERSON_QUOTA.getType(),
 | 
	
		
			
				|  |  | +                    DIRECT_REFERRAL_QUOTA.getType(),
 | 
	
		
			
				|  |  | +                    ORDER_PAY_INTEGRAL.getType(),
 | 
	
		
			
				|  |  | +                    FREEZE_CHANGE_INTEGRAL.getType(),
 | 
	
		
			
				|  |  | +                    SMALL_QUOTA_CRASH.getType());
 | 
	
		
			
				|  |  | +        } else {
 | 
	
		
			
				|  |  | +            profitStatus = Arrays.asList(
 | 
	
		
			
				|  |  | +                    DIRECT_REFERRAL_QUOTA.getType(),
 | 
	
		
			
				|  |  | +                    ORDER_PAY_INTEGRAL.getType());
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +        if (!reqVO.getIsFreeze() && reqVO.getUserId().equals(PT_ID)) {
 | 
	
		
			
				|  |  | +            profitStatus = Arrays.asList(
 | 
	
		
			
				|  |  | +                    PLATFORM_TOTAL_ADD.getType(),
 | 
	
		
			
				|  |  | +                    PLATFORM_SERVICE_FEE.getType(),
 | 
	
		
			
				|  |  | +                    PLATFORM_REVENUE.getType(),
 | 
	
		
			
				|  |  | +                    AFTER_CRASH_CALC_PT_TOTAL_QUOTA.getType(),
 | 
	
		
			
				|  |  | +                    AFTER_CRASH_CALC_PT_TOTAL_GROSS_QUOTA.getType(),
 | 
	
		
			
				|  |  | +                    GROSS_PROFIT_BONUS_QUOTA_PERC_EXCEED_MAXIMUM_LIMIT.getType(),
 | 
	
		
			
				|  |  | +                    GROSS_PROFIT_ANCESTOR_QUOTA_PERC_EXCEED_MAXIMUM_LIMIT.getType()
 | 
	
		
			
				|  |  | +            );
 | 
	
		
			
				|  |  | +            reqVO.setUserId(null);
 | 
	
		
			
				|  |  | +        } else if (reqVO.getIsFreeze() && reqVO.getUserId().equals(PT_ID)) {
 | 
	
		
			
				|  |  | +            profitStatus = Arrays.asList(
 | 
	
		
			
				|  |  | +                    DIRECT_REFERRAL_QUOTA.getType(),
 | 
	
		
			
				|  |  | +                    ORDER_PAY_INTEGRAL.getType()
 | 
	
		
			
				|  |  | +            );
 | 
	
		
			
				|  |  | +            reqVO.setUserId(null);
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |          LambdaQueryWrapperX<PtProfitLogDO> queryWrapper = new LambdaQueryWrapperX<PtProfitLogDO>()
 | 
	
		
			
				|  |  |                  .eqIfPresent(PtProfitLogDO::getAmount, reqVO.getAmount())
 | 
	
		
			
				|  |  |                  .eqIfPresent(PtProfitLogDO::getAfterAmount, reqVO.getAfterAmount())
 | 
	
		
			
				|  |  |                  .eqIfPresent(PtProfitLogDO::getOrderId, reqVO.getOrderId())
 | 
	
		
			
				|  |  |                  .eqIfPresent(PtProfitLogDO::getPercentTemplate, reqVO.getPercentTemplate())
 | 
	
		
			
				|  |  |                  .eqIfPresent(PtProfitLogDO::getUserId, reqVO.getUserId())
 | 
	
		
			
				|  |  | +                .inIfPresent(PtProfitLogDO::getProfitStatus, profitStatus)
 | 
	
		
			
				|  |  |                  .orderByDesc(PtProfitLogDO::getCreateTime);
 | 
	
		
			
				|  |  | -        if(!reqVO.getIsFreeze()){
 | 
	
		
			
				|  |  | -            queryWrapper
 | 
	
		
			
				|  |  | -                    .isNotNull(PtProfitLogDO::getAmount)
 | 
	
		
			
				|  |  | -                    .ne(PtProfitLogDO::getAmount,0)
 | 
	
		
			
				|  |  | -            ;
 | 
	
		
			
				|  |  | -        }else{
 | 
	
		
			
				|  |  | -            queryWrapper
 | 
	
		
			
				|  |  | -                    .isNotNull(PtProfitLogDO::getFreezeAmount)
 | 
	
		
			
				|  |  | -                    .ne(PtProfitLogDO::getFreezeAmount,0)
 | 
	
		
			
				|  |  | -            ;
 | 
	
		
			
				|  |  | -        }
 | 
	
		
			
				|  |  |          return selectPage(reqVO, queryWrapper);
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |  }
 |