3
0
Fork 0

## 后台奖金显示处理;

This commit is contained in:
cabbage 2025-07-11 18:01:55 +08:00
parent 0bc5b3fc56
commit c1cbe71ba6
8 changed files with 41 additions and 263 deletions

View File

@ -60,13 +60,6 @@ public interface CuMemberBonusMapper extends BaseMapper<CuMemberBonus> {
*/ */
void batchInsertCuMemberBonus(@Param("cuMemberBonusList") List<?> cuMemberBonusList); void batchInsertCuMemberBonus(@Param("cuMemberBonusList") List<?> cuMemberBonusList);
/**
* 批量插入会员奖金主表
*
* @param cuMemberBonusList 会员奖金
*/
void insertOrUpdateCuMemberBonus(@Param("cuMemberBonusList") List<CuMemberBonus> cuMemberBonusList);
/** /**
* 更新奖金状态 * 更新奖金状态
* *
@ -77,9 +70,4 @@ public interface CuMemberBonusMapper extends BaseMapper<CuMemberBonus> {
@Param("oldGrantStatus") Integer oldGrantStatus, @Param("startPeriod") Integer startPeriod, @Param("oldGrantStatus") Integer oldGrantStatus, @Param("startPeriod") Integer startPeriod,
@Param("endPeriod") Integer endPeriod); @Param("endPeriod") Integer endPeriod);
/**
* 回退极差奖金
*/
void mergeBackRangeBonusIncome(@Param("pkOrder") Long pkOrder, @Param("bonusValue") Integer bonusValue);
} }

View File

@ -90,18 +90,6 @@ public interface ICuMemberBonusService extends IService<CuMemberBonus> {
*/ */
void batchInsertCuMemberBonus(List<CuMemberBonus> cuMemberBonusList); void batchInsertCuMemberBonus(List<CuMemberBonus> cuMemberBonusList);
/**
* 批量插入会员奖金主表
*
* @param cuMemberBonusList 会员奖金
*/
void insertOrUpdateCuMemberBonus(List<CuMemberBonus> cuMemberBonusList);
/**
* 查询会员奖金
*/
List<CuMemberBonus> queryCuMemberBonus(int period, List<CuMemberBonus> cuMemberBonusList);
/** /**
* 更新奖金状态 * 更新奖金状态
* *
@ -135,11 +123,6 @@ public interface ICuMemberBonusService extends IService<CuMemberBonus> {
*/ */
Set<Long> queryMemberBonusByPeriod(Integer period); Set<Long> queryMemberBonusByPeriod(Integer period);
/**
* 新零售撤单回退奖金
*/
void mergeBackMemberBonusIncome(Long pkOrder);
void calculateBonusTotal(CuMemberBonusExt cuMemberBonusExt, CuMemberBonusExt memberBonusExt); void calculateBonusTotal(CuMemberBonusExt cuMemberBonusExt, CuMemberBonusExt memberBonusExt);
CuMemberBonusExt initCuMemberBonus(); CuMemberBonusExt initCuMemberBonus();

View File

@ -5,7 +5,6 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.pagehelper.PageInfo; import com.github.pagehelper.PageInfo;
import com.hzs.bonus.achieve.service.ICuMemberSettlePeriodService;
import com.hzs.bonus.achieve.service.ICuMemberTreeService; import com.hzs.bonus.achieve.service.ICuMemberTreeService;
import com.hzs.bonus.achieve.service.impl.CuMemberBonusSettle; import com.hzs.bonus.achieve.service.impl.CuMemberBonusSettle;
import com.hzs.bonus.bonus.mapper.*; import com.hzs.bonus.bonus.mapper.*;
@ -33,8 +32,6 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
import java.time.temporal.ChronoUnit; import java.time.temporal.ChronoUnit;
import java.util.*; import java.util.*;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@ -52,49 +49,22 @@ public class CuMemberBonusServiceImpl extends ServiceImpl<CuMemberBonusMapper, C
IBonusItemsServiceApi iBonusItemsServiceApi; IBonusItemsServiceApi iBonusItemsServiceApi;
@Autowired @Autowired
private ICuMemberSettlePeriodService iCuMemberSettlePeriodService;
private CuMemberBonusDetailMapper cuMemberBonusDetailMapper; private CuMemberBonusDetailMapper cuMemberBonusDetailMapper;
@Autowired
private CuMemberBonusRangeMapper cuMemberBonusRangeMapper; private CuMemberBonusRangeMapper cuMemberBonusRangeMapper;
@Autowired
private CuMemberBonusSettle cuMemberBonusSettle; private CuMemberBonusSettle cuMemberBonusSettle;
private ICuMemberTreeService cuMemberTreeService;
private IBonusSettleService bonusSettleService;
@Autowired @Autowired
public void setBonusSettleService(IBonusSettleService bonusSettleService) { private ICuMemberTreeService iCuMemberTreeService;
this.bonusSettleService = bonusSettleService;
}
@Autowired @Autowired
public void setCuMemberTreeService(ICuMemberTreeService cuMemberTreeService) { private IBonusSettleService iBonusSettleService;
this.cuMemberTreeService = cuMemberTreeService;
}
@Autowired
public void setCuMemberBonusSettle(CuMemberBonusSettle cuMemberBonusSettle) {
this.cuMemberBonusSettle = cuMemberBonusSettle;
}
@Autowired
public void setCuMemberBonusRangeMapper(CuMemberBonusRangeMapper cuMemberBonusRangeMapper) {
this.cuMemberBonusRangeMapper = cuMemberBonusRangeMapper;
}
@Autowired
public void setCuMemberBonusDetailMapper(CuMemberBonusDetailMapper cuMemberBonusDetailMapper) {
this.cuMemberBonusDetailMapper = cuMemberBonusDetailMapper;
}
@Override @Override
public List<Long> batchQueryCuMemberBonusSeq(Integer rowNum) { public List<Long> batchQueryCuMemberBonusSeq(Integer rowNum) {
return baseMapper.batchQueryCuMemberBonusSeq(rowNum); return baseMapper.batchQueryCuMemberBonusSeq(rowNum);
} }
@Override @Override
public List<CuMemberBonusExt> queryMemberBonusVoByCondition(BonusParam bonusParam) { public List<CuMemberBonusExt> queryMemberBonusVoByCondition(BonusParam bonusParam) {
return handleMemberBonusPurchase(getCuMemberBonusExtList(bonusParam), bonusParam); return handleMemberBonusPurchase(getCuMemberBonusExtList(bonusParam), bonusParam);
@ -228,6 +198,7 @@ public class CuMemberBonusServiceImpl extends ServiceImpl<CuMemberBonusMapper, C
cuMemberBonusExt.setHaiFunIncome(ComputeUtil.computeAdd(cuMemberBonusExt.getHaiFunIncome(), memberBonusExt.getHaiFunIncome())); cuMemberBonusExt.setHaiFunIncome(ComputeUtil.computeAdd(cuMemberBonusExt.getHaiFunIncome(), memberBonusExt.getHaiFunIncome()));
cuMemberBonusExt.setRealIncomeTotal(ComputeUtil.computeAdd(cuMemberBonusExt.getRealIncomeTotal(), memberBonusExt.getRealIncomeTotal())); cuMemberBonusExt.setRealIncomeTotal(ComputeUtil.computeAdd(cuMemberBonusExt.getRealIncomeTotal(), memberBonusExt.getRealIncomeTotal()));
cuMemberBonusExt.setStoreIncome(ComputeUtil.computeAdd(cuMemberBonusExt.getStoreIncome(), memberBonusExt.getStoreIncome())); cuMemberBonusExt.setStoreIncome(ComputeUtil.computeAdd(cuMemberBonusExt.getStoreIncome(), memberBonusExt.getStoreIncome()));
cuMemberBonusExt.setRetailRangeIncome(ComputeUtil.computeAdd(cuMemberBonusExt.getRetailRangeIncome(), memberBonusExt.getRetailRangeIncome()));
} }
@Override @Override
@ -267,6 +238,7 @@ public class CuMemberBonusServiceImpl extends ServiceImpl<CuMemberBonusMapper, C
cuMemberBonusExt.setCarAwardPoints(BigDecimal.ZERO); cuMemberBonusExt.setCarAwardPoints(BigDecimal.ZERO);
cuMemberBonusExt.setHiFunIncome(BigDecimal.ZERO); cuMemberBonusExt.setHiFunIncome(BigDecimal.ZERO);
cuMemberBonusExt.setHaiFunIncome(BigDecimal.ZERO); cuMemberBonusExt.setHaiFunIncome(BigDecimal.ZERO);
cuMemberBonusExt.setRetailRangeIncome(BigDecimal.ZERO);
cuMemberBonusExt.setRealIncomeTotal(BigDecimal.ZERO); cuMemberBonusExt.setRealIncomeTotal(BigDecimal.ZERO);
return cuMemberBonusExt; return cuMemberBonusExt;
} }
@ -444,20 +416,6 @@ public class CuMemberBonusServiceImpl extends ServiceImpl<CuMemberBonusMapper, C
baseMapper.batchInsertCuMemberBonus(list)); baseMapper.batchInsertCuMemberBonus(list));
} }
@Override
public void insertOrUpdateCuMemberBonus(List<CuMemberBonus> cuMemberBonusList) {
baseMapper.insertOrUpdateCuMemberBonus(cuMemberBonusList);
}
@Override
public List<CuMemberBonus> queryCuMemberBonus(int period, List<CuMemberBonus> cuMemberBonusList) {
QueryWrapper<CuMemberBonus> queryWrapper = new QueryWrapper<>();
List<Long> memberList = cuMemberBonusList.stream().map(CuMemberBonus::getPkMember).collect(Collectors.toList());
queryWrapper.eq(MemberFieldConstants.PERIOD, period);
queryWrapper.in(MemberFieldConstants.PK_MEMBER, memberList);
return baseMapper.selectList(queryWrapper);
}
@Override @Override
public Boolean updateCuMemberBonusStatus(Integer pkCountry, Integer grantStatus, Integer oldGrantStatus, Integer startPeriod, Integer endPeriod) { public Boolean updateCuMemberBonusStatus(Integer pkCountry, Integer grantStatus, Integer oldGrantStatus, Integer startPeriod, Integer endPeriod) {
return baseMapper.updateCuMemberBonusStatus(pkCountry, grantStatus, oldGrantStatus, startPeriod, endPeriod) > 0 ? Boolean.TRUE : Boolean.FALSE; return baseMapper.updateCuMemberBonusStatus(pkCountry, grantStatus, oldGrantStatus, startPeriod, endPeriod) > 0 ? Boolean.TRUE : Boolean.FALSE;
@ -488,16 +446,16 @@ public class CuMemberBonusServiceImpl extends ServiceImpl<CuMemberBonusMapper, C
public Boolean autoCalculateBonus(Date startDate, Date endDate) { public Boolean autoCalculateBonus(Date startDate, Date endDate) {
String settleDate = DateUtils.parseDateTimeToStr(DateUtils.YYYY_MM_DD, startDate); String settleDate = DateUtils.parseDateTimeToStr(DateUtils.YYYY_MM_DD, startDate);
// 自动初始化表 // 自动初始化表
cuMemberTreeService.createCuMemberTree(settleDate); iCuMemberTreeService.createCuMemberTree(settleDate);
log.info("初始化表完成"); log.info("初始化表完成");
// 奖金结算 // 奖金结算
bonusSettleService.calculateCuMemberBonus(settleDate, null); iBonusSettleService.calculateCuMemberBonus(settleDate, null);
return Boolean.TRUE; return Boolean.TRUE;
} }
@Override @Override
public void backupsSettleBonusEveryday() { public void backupsSettleBonusEveryday() {
cuMemberTreeService.createCuMemberTree(DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, DateUtils.beforeDate(1, ChronoUnit.DAYS))); iCuMemberTreeService.createCuMemberTree(DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, DateUtils.beforeDate(1, ChronoUnit.DAYS)));
} }
@Override @Override
@ -509,14 +467,4 @@ public class CuMemberBonusServiceImpl extends ServiceImpl<CuMemberBonusMapper, C
return cuMemberBonusList.stream().distinct().map(CuMemberBonus::getPkId).collect(Collectors.toSet()); return cuMemberBonusList.stream().distinct().map(CuMemberBonus::getPkId).collect(Collectors.toSet());
} }
@Override
public void mergeBackMemberBonusIncome(Long pkOrder) {
baseMapper.mergeBackRangeBonusIncome(pkOrder, EBonusItems.RETAIL_RANGE_INCOME.getValue());
}
private String getDayTableName() {
String localDate = LocalDate.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd"));
int period = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(localDate).getPkId();
return TableNameConstants.CU_MEMBER_RETAIL_S + period;
}
} }

View File

@ -34,13 +34,11 @@ public class BonusTotalVO implements Serializable {
/** /**
* 直推收益 * 直推收益
*/ */
@Excel(name = "直推收益", scale = 2)
private BigDecimal directIncomeOri; private BigDecimal directIncomeOri;
/** /**
* 拓展收益 * 拓展收益
*/ */
@Excel(name = "拓展收益", scale = 2)
private BigDecimal expandIncomeOri; private BigDecimal expandIncomeOri;
/** /**
@ -56,43 +54,50 @@ public class BonusTotalVO implements Serializable {
/** /**
* 辅导收益 * 辅导收益
*/ */
@Excel(name = "辅导收益", scale = 2)
private BigDecimal coachIncomeOri; private BigDecimal coachIncomeOri;
/** /**
* 分红收益 * 分红收益
*/ */
@Excel(name = "分红收益", scale = 2)
private BigDecimal shareIncomeOri; private BigDecimal shareIncomeOri;
/** /**
* 报单收益 * 报单收益
*/ */
@Excel(name = "报单收益", scale = 2)
private BigDecimal serviceIncomeOri; private BigDecimal serviceIncomeOri;
/** /**
* 云代直推收益 * 云代直推收益
*/ */
@Excel(name = "云代直推收益", scale = 2)
private BigDecimal cloudDirectIncomeOri; private BigDecimal cloudDirectIncomeOri;
/** /**
* 云代首购收益 * 云代首购收益
*/ */
@Excel(name = "云代首购收益", scale = 2)
private BigDecimal cloudPurIncomeOri; private BigDecimal cloudPurIncomeOri;
/** /**
* 云代复购收益 * 云代复购收益
*/ */
@Excel(name = "云代复购收益", scale = 2)
private BigDecimal cloudRepurIncomeOri; private BigDecimal cloudRepurIncomeOri;
@Excel(name = "复购推荐收益", scale = 2)
private BigDecimal repurPushIncomeOri; private BigDecimal repurPushIncomeOri;
/**
* 直推级差收益
*/
private BigDecimal retailRangeIncome;
/**
* 直推级差收益
*/
@Excel(name = "直推级差收益", scale = 2)
private BigDecimal retailRangeIncomeOri;
/**
* 复购级差收益
*/
private BigDecimal repurRangeIncome;
/** /**
* 复购级差收益 * 复购级差收益
*/ */
@ -102,79 +107,66 @@ public class BonusTotalVO implements Serializable {
/** /**
* 复购拓展收益 * 复购拓展收益
*/ */
@Excel(name = "复购拓展收益", scale = 2)
private BigDecimal repurExpandIncomeOri; private BigDecimal repurExpandIncomeOri;
/** /**
* 复购券 * 复购券
*/ */
@Excel(name = "复购券", scale = 2)
private BigDecimal repurCouponOri; private BigDecimal repurCouponOri;
/** /**
* 复购券均分收益 * 复购券均分收益
*/ */
@Excel(name = "复购券均分", scale = 2)
private BigDecimal repurCouponShareOri; private BigDecimal repurCouponShareOri;
/** /**
* 商城重消 * 商城重消
*/ */
@Excel(name = "商城重消", scale = 2)
private BigDecimal backPointsOri; private BigDecimal backPointsOri;
/** /**
* 平台服务费 * 平台服务费
*/ */
@Excel(name = "平台服务费", scale = 2)
private BigDecimal serviceSpendOri; private BigDecimal serviceSpendOri;
/** /**
* 环球积分 * 环球积分
*/ */
@Excel(name = "直推极差", scale = 2)
private BigDecimal globalPointsOri; private BigDecimal globalPointsOri;
/** /**
* 车奖积分 * 车奖积分
*/ */
@Excel(name = "车奖积分", scale = 2)
private BigDecimal carAwardPointsOri; private BigDecimal carAwardPointsOri;
/** /**
* 店铺收益 * 店铺收益
*/ */
@Excel(name = "店铺收益", scale = 2)
private BigDecimal storeIncomeOri; private BigDecimal storeIncomeOri;
/** /**
* 嗨粉推荐收益 * 嗨粉推荐收益
*/ */
@Excel(name = "嗨粉推荐收益", scale = 2)
private BigDecimal hiFunIncomeOri; private BigDecimal hiFunIncomeOri;
/** /**
* 首购实发小计 * 首购实发小计
*/ */
@Excel(name = "首购实发小计", scale = 2)
private BigDecimal purRealSubtotalOri; private BigDecimal purRealSubtotalOri;
/** /**
* 云代实发小计 * 云代实发小计
*/ */
@Excel(name = "云代实发小计", scale = 2)
private BigDecimal cloudRealSubtotalOri; private BigDecimal cloudRealSubtotalOri;
/** /**
* 复购实发小计 * 复购实发小计
*/ */
@Excel(name = "复购实发小计", scale = 2)
private BigDecimal repurRealSubtotalOri; private BigDecimal repurRealSubtotalOri;
/** /**
* 复购券小计 * 复购券小计
*/ */
@Excel(name = "复购券实发小计", scale = 2)
private BigDecimal repurCouponSubtotalOri; private BigDecimal repurCouponSubtotalOri;
/** /**
@ -186,13 +178,11 @@ public class BonusTotalVO implements Serializable {
/** /**
* 直推收益 * 直推收益
*/ */
@Excel(name = "直推收益($)", scale = 2)
private BigDecimal directIncome; private BigDecimal directIncome;
/** /**
* 拓展收益 * 拓展收益
*/ */
@Excel(name = "拓展收益($)", scale = 2)
private BigDecimal expandIncome; private BigDecimal expandIncome;
/** /**
@ -208,130 +198,104 @@ public class BonusTotalVO implements Serializable {
/** /**
* 辅导收益 * 辅导收益
*/ */
@Excel(name = "辅导收益($)", scale = 2)
private BigDecimal coachIncome; private BigDecimal coachIncome;
/** /**
* 分红收益 * 分红收益
*/ */
@Excel(name = "分红收益($)", scale = 2)
private BigDecimal shareIncome; private BigDecimal shareIncome;
/** /**
* 报单收益 * 报单收益
*/ */
@Excel(name = "报单收益($)", scale = 2)
private BigDecimal serviceIncome; private BigDecimal serviceIncome;
/** /**
* 云代直推收益 * 云代直推收益
*/ */
@Excel(name = "云代直推收益($)", scale = 2)
private BigDecimal cloudDirectIncome; private BigDecimal cloudDirectIncome;
/** /**
* 云代首购收益 * 云代首购收益
*/ */
@Excel(name = "云代首购收益($)", scale = 2)
private BigDecimal cloudPurIncome; private BigDecimal cloudPurIncome;
/** /**
* 云代复购收益 * 云代复购收益
*/ */
@Excel(name = "云代复购收益($)", scale = 2)
private BigDecimal cloudRepurIncome; private BigDecimal cloudRepurIncome;
@Excel(name = "复购推荐($)", scale = 2)
private BigDecimal repurPushIncome; private BigDecimal repurPushIncome;
/**
* 复购级差收益
*/
@Excel(name = "复购级差收益($)", scale = 2)
private BigDecimal repurRangeIncome;
/** /**
* 复购拓展收益 * 复购拓展收益
*/ */
@Excel(name = "复购拓展收益($)", scale = 2)
private BigDecimal repurExpandIncome; private BigDecimal repurExpandIncome;
/** /**
* 复购券 * 复购券
*/ */
@Excel(name = "复购券($)", scale = 2)
private BigDecimal repurCoupon; private BigDecimal repurCoupon;
/** /**
* 复购券均分收益 * 复购券均分收益
*/ */
@Excel(name = "复购券均分($)", scale = 2)
private BigDecimal repurCouponShare; private BigDecimal repurCouponShare;
/** /**
* 商城重消 * 商城重消
*/ */
@Excel(name = "商城重消($)", scale = 2)
private BigDecimal backPoints; private BigDecimal backPoints;
/** /**
* 平台服务费 * 平台服务费
*/ */
@Excel(name = "平台服务费($)", scale = 2)
private BigDecimal serviceSpend; private BigDecimal serviceSpend;
/** /**
* 环球积分 * 环球积分
*/ */
@Excel(name = "直推极差($)", scale = 2)
private BigDecimal globalPoints; private BigDecimal globalPoints;
/** /**
* 车奖积分 * 车奖积分
*/ */
@Excel(name = "车奖积分($)", scale = 2)
private BigDecimal carAwardPoints; private BigDecimal carAwardPoints;
/** /**
* 店铺收益 * 店铺收益
*/ */
@Excel(name = "店铺收益($)", scale = 2)
private BigDecimal storeIncome; private BigDecimal storeIncome;
/** /**
* 嗨粉推荐收益 * 嗨粉推荐收益
*/ */
@Excel(name = "嗨粉推荐收益($)", scale = 2)
private BigDecimal hiFunIncome; private BigDecimal hiFunIncome;
/** /**
* 首购实发小计 * 首购实发小计
*/ */
@Excel(name = "首购实发小计($)", scale = 2)
private BigDecimal purRealSubtotal; private BigDecimal purRealSubtotal;
/** /**
* 云代实发小计 * 云代实发小计
*/ */
@Excel(name = "云代实发小计($)", scale = 2)
private BigDecimal cloudRealSubtotal; private BigDecimal cloudRealSubtotal;
/** /**
* 复购实发小计 * 复购实发小计
*/ */
@Excel(name = "复购实发小计($)", scale = 2)
private BigDecimal repurRealSubtotal; private BigDecimal repurRealSubtotal;
/** /**
* 复购券小计 * 复购券小计
*/ */
@Excel(name = "复购券实发小计($)", scale = 2)
private BigDecimal repurCouponSubtotal; private BigDecimal repurCouponSubtotal;
/** /**
* 实发收益总计 * 实发收益总计
*/ */
@Excel(name = "实发收益总计($)", scale = 2)
private BigDecimal realIncomeTotal; private BigDecimal realIncomeTotal;
/** /**

View File

@ -91,29 +91,34 @@ public class CuMemberBonusVO implements Serializable {
*/ */
public static final String[] INCOME_ARRAY = new String[]{ public static final String[] INCOME_ARRAY = new String[]{
"backPoints", "retailRangeIncome", "retailSameLevelIncome", "retailAreaIncome", "backPoints", "retailRangeIncome", "retailSameLevelIncome", "retailAreaIncome",
"retailBenefitRangeIncome", "retailBenefitAvgIncome", "retailBenefitRangeIncome", "retailBenefitAvgIncome", "repurRangeIncome",
"retailBenefitIncome", "retailRealSubtotal", "realIncomeTotal"}; "retailBenefitIncome", "retailRealSubtotal", "realIncomeTotal"};
private BigDecimal retailRangeIncome;
/** /**
* 直推收益 * 直推级差收益
*/ */
@Excel(name = "直推收益", scale = 2) private BigDecimal retailRangeIncome;
@Excel(name = "直推级差收益", scale = 2)
private BigDecimal retailRangeIncomeOri; private BigDecimal retailRangeIncomeOri;
/**
* 复购级差收益
*/
private BigDecimal repurRangeIncome;
@Excel(name = "复购级差收益", scale = 2)
private BigDecimal repurRangeIncomeOri;
private BigDecimal retailSameLevelIncome; private BigDecimal retailSameLevelIncome;
/** /**
* 平级收益 * 平级收益
*/ */
@Excel(name = "平级收益", scale = 2)
private BigDecimal retailSameLevelIncomeOri; private BigDecimal retailSameLevelIncomeOri;
private BigDecimal retailAreaIncome; private BigDecimal retailAreaIncome;
/** /**
* 区域分红 * 区域分红
*/ */
@Excel(name = "区域分红", scale = 2)
private BigDecimal retailAreaIncomeOri; private BigDecimal retailAreaIncomeOri;
/** /**
@ -121,7 +126,6 @@ public class CuMemberBonusVO implements Serializable {
*/ */
private BigDecimal retailBenefitRangeIncome; private BigDecimal retailBenefitRangeIncome;
@Excel(name = " 福利极差收益", scale = 2)
private BigDecimal retailBenefitRangeIncomeOri; private BigDecimal retailBenefitRangeIncomeOri;
/** /**
@ -129,7 +133,6 @@ public class CuMemberBonusVO implements Serializable {
*/ */
private BigDecimal retailBenefitAvgIncome; private BigDecimal retailBenefitAvgIncome;
@Excel(name = " 福利平均收益", scale = 2)
private BigDecimal retailBenefitAvgIncomeOri; private BigDecimal retailBenefitAvgIncomeOri;
/** /**
@ -137,13 +140,11 @@ public class CuMemberBonusVO implements Serializable {
*/ */
private BigDecimal retailBenefitIncome; private BigDecimal retailBenefitIncome;
@Excel(name = " 福利加权收益", scale = 2)
private BigDecimal retailBenefitIncomeOri; private BigDecimal retailBenefitIncomeOri;
/** /**
* 商城重消 * 商城重消
*/ */
@Excel(name = "商城重消", scale = 2)
private BigDecimal backPointsOri; private BigDecimal backPointsOri;
/** /**
@ -156,7 +157,6 @@ public class CuMemberBonusVO implements Serializable {
*/ */
private BigDecimal retailRealSubtotal; private BigDecimal retailRealSubtotal;
@Excel(name = " 收益小计", scale = 2)
private BigDecimal retailRealSubtotalOri; private BigDecimal retailRealSubtotalOri;
/** /**

View File

@ -74,37 +74,6 @@
</if> </if>
</update> </update>
<update id="mergeBackRangeBonusIncome">
merge into cu_member_bonus a
using(
select b.* from bd_bonus_items bt
inner join(
select pk_bonus,pk_bonus_items, sum(pretax_income) pretax_income,
sum(income_tax) income_tax, sum(real_income) real_income from
<choose>
<when test="bonusValue == 27"> cu_member_bonus_detail </when>
<otherwise> cu_member_bonus_range </otherwise>
</choose>
where del_flag=0 and pk_order= #{pkOrder}
group by pk_bonus, pk_bonus_items) b
on bt.pk_id = b.pk_bonus_items
where bt.bonus_value = #{bonusValue}) b
on (a.pk_id = b.pk_bonus)
when matched then
update set a.retail_real_subtotal=a.retail_real_subtotal-b.real_income,
a.back_points=a.back_points-b.income_tax,
a.real_income_total=a.real_income_total-b.real_income
<if test="bonusValue == 25">
,a.retail_range_income = a.retail_range_income - b.pretax_income
</if>
<if test="bonusValue == 26">
,a.retail_same_level_income = a.retail_same_level_income - b.pretax_income
</if>
<if test="bonusValue == 27">
,a.retail_area_income = a.retail_area_income - b.pretax_income
</if>
</update>
<delete id="deleteCuMemberBonus"> <delete id="deleteCuMemberBonus">
delete delete
from cu_member_bonus from cu_member_bonus
@ -168,76 +137,6 @@
b.retail_area_income,b.retail_benefit_range_income,b.retail_benefit_avg_income,b.retail_benefit_income, b.retail_area_income,b.retail_benefit_range_income,b.retail_benefit_avg_income,b.retail_benefit_income,
b.retail_real_subtotal) b.retail_real_subtotal)
</insert> </insert>
<insert id="insertOrUpdateCuMemberBonus">
merge into cu_member_bonus a
using(
select pk_id,pk_member,period,pk_rate,direct_income,expand_income,expand_no_capping,
expand_capping,coach_income,share_income,service_income,back_points,service_spend,
pur_real_subtotal,repur_push_income,repur_range_income,repur_expand_income,repur_real_subtotal,
cloud_direct_income,cloud_pur_income,cloud_repur_income,cloud_real_subtotal,
repur_coupon,repur_coupon_subtotal,global_points,
car_award_points,hi_fun_income,hai_fun_income,retail_range_income,retail_same_level_income,retail_area_income,
retail_benefit_range_income,retail_benefit_avg_income,
retail_benefit_income,retail_real_subtotal,
maker_direct_income,maker_share_income,maker_real_subtotal,real_income_total,
pk_country,pk_creator,grant_status,income_status from(
<foreach item="item" index="index" collection="cuMemberBonusList" separator=" union ">
select #{item.pkId} pk_id,#{item.pkMember} pk_member,#{item.period} period,#{item.pkRate} pk_rate,
#{item.directIncome} direct_income,#{item.expandIncome} expand_income,#{item.expandNoCapping} expand_no_capping,
#{item.expandCapping} expand_capping,#{item.coachIncome} coach_income,#{item.shareIncome} share_income,
#{item.serviceIncome} service_income,#{item.backPoints} back_points,#{item.serviceSpend} service_spend,
#{item.purRealSubtotal} pur_real_subtotal,#{item.repurPushIncome} repur_push_income,
#{item.repurRangeIncome} repur_range_income,#{item.repurExpandIncome} repur_expand_income,
#{item.repurRealSubtotal} repur_real_subtotal,#{item.cloudDirectIncome} cloud_direct_income,
#{item.cloudPurIncome} cloud_pur_income,#{item.cloudRepurIncome} cloud_repur_income,
#{item.cloudRealSubtotal} cloud_real_subtotal,#{item.repurCoupon} repur_coupon,
#{item.repurCouponSubtotal} repur_coupon_subtotal,#{item.globalPoints} global_points,
#{item.carAwardPoints} car_award_points,#{item.hiFunIncome} hi_fun_income,
#{item.haiFunIncome} hai_fun_income,#{item.makerDirectIncome} maker_direct_income,
#{item.makerShareIncome} maker_share_income,#{item.makerRealSubtotal} maker_real_subtotal,
#{item.realIncomeTotal} real_income_total,#{item.pkCountry} pk_country,#{item.pkCreator} pk_creator,
#{item.grantStatus} grant_status,#{item.incomeStatus} income_status,
#{item.retailRangeIncome} retail_range_income,#{item.retailSameLevelIncome} retail_same_level_income,
#{item.retailAreaIncome} retail_area_income,#{item.retailBenefitRangeIncome} retail_benefit_range_income,
#{item.retailBenefitAvgIncome} retail_benefit_avg_income,#{item.retailBenefitIncome} retail_benefit_income,
#{item.retailRealSubtotal} retail_real_subtotal from dual
</foreach>)
) b
on (a.pk_member = b.pk_member and a.period = b.period)
when matched then
update set
a.direct_income = a.direct_income + b.direct_income,a.expand_income=a.expand_income+b.expand_income,
a.expand_no_capping=a.expand_no_capping+b.expand_no_capping,a.expand_capping=a.expand_capping+b.expand_capping,
a.coach_income=a.coach_income+b.coach_income,a.share_income=a.share_income+b.share_income,
a.service_income=a.service_income+b.service_income,a.back_points=a.back_points+b.back_points,a.service_spend=a.service_spend+b.service_spend,
a.pur_real_subtotal=a.pur_real_subtotal+b.pur_real_subtotal,a.repur_push_income=a.repur_push_income+b.repur_push_income,
a.repur_range_income=a.repur_range_income+b.repur_range_income,a.repur_expand_income=a.repur_expand_income+b.repur_expand_income,
a.repur_real_subtotal=a.repur_real_subtotal+b.repur_real_subtotal,a.cloud_direct_income=a.cloud_direct_income+b.cloud_direct_income,
a.cloud_pur_income=a.cloud_pur_income+b.cloud_pur_income,a.cloud_repur_income=a.cloud_repur_income+b.cloud_repur_income,
a.cloud_real_subtotal=a.cloud_real_subtotal+b.cloud_real_subtotal,a.repur_coupon=a.repur_coupon+b.repur_coupon,
a.global_points=a.global_points+b.global_points,a.car_award_points=a.car_award_points+b.car_award_points,
a.hi_fun_income=a.hi_fun_income+b.hi_fun_income,a.real_income_total=a.real_income_total+b.real_income_total,
a.retail_range_income=a.retail_range_income+b.retail_range_income,a.retail_same_level_income=a.retail_same_level_income+b.retail_same_level_income,
a.retail_area_income=a.retail_area_income+b.retail_area_income,a.retail_benefit_range_income=a.retail_benefit_range_income+b.retail_benefit_range_income,
a.retail_benefit_avg_income=a.retail_benefit_avg_income+b.retail_benefit_avg_income,a.retail_benefit_income=a.retail_benefit_income+b.retail_benefit_income,
a.retail_real_subtotal=a.retail_real_subtotal+b.retail_real_subtotal
when not matched then
insert (pk_id,pk_member,period,pk_rate,direct_income,expand_income,expand_no_capping,
expand_capping,coach_income,share_income,service_income,back_points,service_spend,
pur_real_subtotal,repur_push_income,repur_range_income,repur_expand_income,repur_real_subtotal,
cloud_direct_income,cloud_pur_income,cloud_repur_income,cloud_real_subtotal,
repur_coupon,global_points,car_award_points,hi_fun_income,real_income_total,
pk_country,pk_creator,grant_status,income_status,retail_range_income,retail_same_level_income,
retail_area_income,retail_benefit_range_income,retail_benefit_avg_income,retail_benefit_income,retail_real_subtotal)
values(b.pk_id,b.pk_member,b.period,b.pk_rate,b.direct_income,b.expand_income,b.expand_no_capping,
b.expand_capping,b.coach_income,b.share_income,b.service_income,b.back_points,b.service_spend,
b.pur_real_subtotal,b.repur_push_income,b.repur_range_income,b.repur_expand_income,b.repur_real_subtotal,
b.cloud_direct_income,b.cloud_pur_income,b.cloud_repur_income,b.cloud_real_subtotal,
b.repur_coupon,b.global_points,b.car_award_points,b.hi_fun_income,b.real_income_total,
b.pk_country,b.pk_creator,b.grant_status,b.income_status,b.retail_range_income,b.retail_same_level_income,
b.retail_area_income,b.retail_benefit_range_income,b.retail_benefit_avg_income,b.retail_benefit_income,
b.retail_real_subtotal)
</insert>
<select id="queryMemberBonusByCondition" resultMap="CuMemberBonus"> <select id="queryMemberBonusByCondition" resultMap="CuMemberBonus">
select cp.settle_date, select cp.settle_date,
@ -404,6 +303,7 @@
nvl(sum(cb.global_points),0) global_points, nvl(sum(cb.global_points),0) global_points,
nvl(sum(cb.car_award_points),0) car_award_points, nvl(sum(cb.car_award_points),0) car_award_points,
nvl(sum(cb.hi_fun_income),0) hi_fun_income, nvl(sum(cb.hi_fun_income),0) hi_fun_income,
nvl(sum(cb.retail_range_income),0) retail_range_income,
bc.out_exchange_rate, bc.out_exchange_rate,
nvl(sum(cb.real_income_total),0) real_income_total nvl(sum(cb.real_income_total),0) real_income_total
from cu_member_bonus cb from cu_member_bonus cb
@ -475,12 +375,14 @@
</select> </select>
<select id="queryBonusTotalVoByConditionForServer" resultMap="CuMemberBonus"> <select id="queryBonusTotalVoByConditionForServer" resultMap="CuMemberBonus">
select cb.period,cp.settle_date,nvl(min(bc.out_exchange_rate),1) out_exchange_rate,sum(cb.direct_income) direct_income,sum(cb.expand_income) expand_income, select cb.period,cp.settle_date,nvl(min(bc.out_exchange_rate),1) out_exchange_rate,sum(cb.direct_income) direct_income,sum(cb.expand_income)
expand_income,
sum(cb.expand_no_capping) expand_no_capping,sum(cb.expand_capping) expand_capping,sum(cb.coach_income) coach_income, sum(cb.expand_no_capping) expand_no_capping,sum(cb.expand_capping) expand_capping,sum(cb.coach_income) coach_income,
sum(cb.share_income) share_income,sum(cb.service_income) service_income,sum(cb.back_points) back_points, sum(cb.share_income) share_income,sum(cb.service_income) service_income,sum(cb.back_points) back_points,
sum(cb.service_spend) service_spend,sum(cb.pur_real_subtotal) pur_real_subtotal, sum(cb.service_spend) service_spend,sum(cb.pur_real_subtotal) pur_real_subtotal,
sum(cb.repur_push_income) repur_push_income,sum(cb.repur_range_income) repur_range_income, sum(cb.repur_push_income) repur_push_income,sum(cb.repur_range_income) repur_range_income,
sum(cb.repur_expand_income) repur_expand_income,sum(cb.repur_real_subtotal) repur_real_subtotal,sum(cb.cloud_direct_income) cloud_direct_income, sum(cb.repur_expand_income) repur_expand_income,sum(cb.repur_real_subtotal) repur_real_subtotal,sum(cb.cloud_direct_income)
cloud_direct_income,
sum(cb.cloud_pur_income) cloud_pur_income,sum(cb.cloud_repur_income) cloud_repur_income,sum(cb.cloud_real_subtotal) cloud_real_subtotal, sum(cb.cloud_pur_income) cloud_pur_income,sum(cb.cloud_repur_income) cloud_repur_income,sum(cb.cloud_real_subtotal) cloud_real_subtotal,
sum(cb.repur_coupon) repur_coupon,sum(repur_coupon_share) repur_coupon_share, sum(cb.repur_coupon) repur_coupon,sum(repur_coupon_share) repur_coupon_share,
sum(cb.repur_coupon_subtotal) repur_coupon_subtotal,sum(cb.global_points) global_points, sum(cb.repur_coupon_subtotal) repur_coupon_subtotal,sum(cb.global_points) global_points,

View File

@ -28,7 +28,7 @@ public enum EOrderPrefix {
/** /**
* 充值 * 充值
*/ */
RECHARGE_CODE("RC", "充值"), RECHARGE_CODE("BLRC", "充值"),
/** /**
* 转账 * 转账

View File

@ -7,13 +7,6 @@ import lombok.EqualsAndHashCode;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.Date; import java.util.Date;
/**
* @Description:
* @Author: sui q
* @Time: 2023/2/1 10:27
* @Classname: CuMemberBonusExt
* @PackageName: com.hzs.common.domain.member.ext
*/
@EqualsAndHashCode(callSuper = true) @EqualsAndHashCode(callSuper = true)
@Data @Data
public class CuMemberBonusExt extends CuMemberBonus { public class CuMemberBonusExt extends CuMemberBonus {