## 延缓收益发放添加会员收益状态判断;
This commit is contained in:
parent
09e38e81fe
commit
146e5897d5
|
@ -1372,31 +1372,19 @@ public class BonusSettleFirstPurchaseHandle extends BonusSettleHandle {
|
|||
|
||||
// 获取拓展收益奖项
|
||||
Integer pkBonusItems = getPkBonusItems(bonusConfigDTO, cuMemberBonusDelayAddDetail.getPkCountry(), EBonusItems.EXPANSION_INCOME.getValue());
|
||||
BdGrade bdGrade = gradeMap.get(cuMemberSettleExt.getPkGrade());
|
||||
// 创建一条拓展收益明细
|
||||
CuMemberBonusExpand cuMemberBonusExpand = CuMemberBonusExpand.builder()
|
||||
.pkBonus(pkMember)
|
||||
.pkBonusItems(pkBonusItems)
|
||||
.incomeStatus(EBonusIncomeStatus.NORMAL.getValue())
|
||||
.pkOrder(0L)
|
||||
.calType(null != cuMemberBonusDelayAddDetail.getFirCalType() ? cuMemberBonusDelayAddDetail.getFirCalType() : cuMemberBonusDelayAddDetail.getRepCalType())
|
||||
.calValue(null != cuMemberBonusDelayAddDetail.getFirCalValue() ? cuMemberBonusDelayAddDetail.getFirCalValue() : cuMemberBonusDelayAddDetail.getRepCalValue())
|
||||
.calAchieve(BigDecimal.ZERO)
|
||||
.pretaxIncome(pretaxIncome)
|
||||
.expandNoCapping(pretaxIncome)
|
||||
.expandCapping(cuMemberBonusDelayAddDetail.getExpandCapping())
|
||||
.expandNormalHalf(ComputeUtil.computeMultiplyHalf(cuMemberBonusDelayAddDetail.getExpandCapping()))
|
||||
.expandNormalReal(ComputeUtil.computeMultiplyHalf(pretaxIncome))
|
||||
.remark(String.format(BonusMsgConstants.BONUS_EXPAND_DELAY, cuMemberSettleExt.getMemberCode() + cuMemberSettleExt.getMemberName()))
|
||||
.currentTouch(0)
|
||||
.expandTouch(0)
|
||||
.addTouch(BigDecimal.ZERO)
|
||||
.incomeRatio(BigDecimal.ZERO)
|
||||
.incomeDialRatio(BigDecimal.ZERO)
|
||||
.orderDialRatio(BigDecimal.ZERO)
|
||||
.build();
|
||||
cuMemberBonusExpand.setPkCreator(cuMemberBonusDelayAddDetail.getPkCreator());
|
||||
cuMemberBonusExpand.setPkCountry(cuMemberBonusDelayAddDetail.getPkCountry());
|
||||
cuMemberBonusExpand.setPkModified(pkMember);
|
||||
CuMemberBonusExpand cuMemberBonusExpand = this.getCuMemberBonusExpandDelay(cuMemberSettleExt, cuMemberBonus, bdGrade.getExpandRatio(),
|
||||
pkBonusItems, bdGrade);
|
||||
cuMemberBonusExpand.setCalType(null != cuMemberBonusDelayAddDetail.getFirCalType() ? cuMemberBonusDelayAddDetail.getFirCalType() : cuMemberBonusDelayAddDetail.getRepCalType());
|
||||
cuMemberBonusExpand.setCalValue(null != cuMemberBonusDelayAddDetail.getFirCalValue() ? cuMemberBonusDelayAddDetail.getFirCalValue() : cuMemberBonusDelayAddDetail.getRepCalValue());
|
||||
cuMemberBonusExpand.setPretaxIncome(pretaxIncome);
|
||||
cuMemberBonusExpand.setExpandNoCapping(pretaxIncome);
|
||||
cuMemberBonusExpand.setExpandCapping(cuMemberBonusDelayAddDetail.getExpandCapping());
|
||||
cuMemberBonusExpand.setExpandNormalHalf(ComputeUtil.computeMultiplyHalf(cuMemberBonusDelayAddDetail.getExpandCapping()));
|
||||
cuMemberBonusExpand.setExpandNormalReal(ComputeUtil.computeMultiplyHalf(pretaxIncome));
|
||||
cuMemberBonusExpand.setRemark(String.format(BonusMsgConstants.BONUS_EXPAND_DELAY, cuMemberSettleExt.getMemberCode() + cuMemberSettleExt.getMemberName()));
|
||||
|
||||
// 处理扣项,计算最终收益
|
||||
BdBonusDeduct bdBonusDeduct = setDeplyBonusDetailDeduct(bonusConfigDTO, cuMemberBonusExpand);
|
||||
// 处理实发小计、实发收益总计
|
||||
|
@ -1509,7 +1497,6 @@ public class BonusSettleFirstPurchaseHandle extends BonusSettleHandle {
|
|||
// 结算会员信息
|
||||
getMemberSettle(cuMemberSettleExtMap, cuMemberSettleExt);
|
||||
|
||||
// TODO new 生成一条拓展收益明细,并且添加收益奖金
|
||||
// 追加会员奖金收益
|
||||
CuMemberBonus cuMemberBonus = this.getCuMemberBonus(period, cuMemberBonusMap, pkMember,
|
||||
cuMemberSettleExt.getIncomeStatus(), cuMemberSettleExt.getPkSettleCountry(), cuMemberSettleExt.getPkRate());
|
||||
|
@ -1520,30 +1507,14 @@ public class BonusSettleFirstPurchaseHandle extends BonusSettleHandle {
|
|||
// 获取拓展收益奖项
|
||||
Integer pkBonusItems = getPkBonusItems(bonusConfigDTO, cuMemberSettleExt.getPkSettleCountry(), EBonusItems.EXPANSION_INCOME.getValue());
|
||||
// 创建一条拓展收益明细
|
||||
CuMemberBonusExpand cuMemberBonusExpand = CuMemberBonusExpand.builder()
|
||||
.pkBonus(pkMember)
|
||||
.pkBonusItems(pkBonusItems)
|
||||
.incomeStatus(EBonusIncomeStatus.NORMAL.getValue())
|
||||
.pkOrder(0L)
|
||||
.calType(ECalType.RATIO.getValue())
|
||||
.calValue(bdGrade.getExpandRatio())
|
||||
.calAchieve(BigDecimal.ZERO)
|
||||
.pretaxIncome(pretaxIncome)
|
||||
.expandNoCapping(pretaxIncome)
|
||||
.expandCapping(expandCapping)
|
||||
.expandNormalHalf(ComputeUtil.computeMultiplyHalf(expandCapping))
|
||||
.expandNormalReal(ComputeUtil.computeMultiplyHalf(pretaxIncome))
|
||||
.remark(String.format(BonusMsgConstants.BONUS_EXPAND_DELAY, cuMemberSettleExt.getMemberCode() + cuMemberSettleExt.getMemberName()))
|
||||
.currentTouch(0)
|
||||
.expandTouch(0)
|
||||
.addTouch(BigDecimal.ZERO)
|
||||
.incomeRatio(BigDecimal.ZERO)
|
||||
.incomeDialRatio(BigDecimal.ZERO)
|
||||
.orderDialRatio(BigDecimal.ZERO)
|
||||
.build();
|
||||
cuMemberBonusExpand.setPkCreator(MagicNumberConstants.PK_ADMIN);
|
||||
cuMemberBonusExpand.setPkCountry(cuMemberSettleExt.getPkCountry());
|
||||
cuMemberBonusExpand.setPkModified(pkMember);
|
||||
CuMemberBonusExpand cuMemberBonusExpand = this.getCuMemberBonusExpandDelay(cuMemberSettleExt, cuMemberBonus, bdGrade.getExpandRatio(),
|
||||
pkBonusItems, bdGrade);
|
||||
cuMemberBonusExpand.setPretaxIncome(pretaxIncome);
|
||||
cuMemberBonusExpand.setExpandNoCapping(pretaxIncome);
|
||||
cuMemberBonusExpand.setExpandCapping(expandCapping);
|
||||
cuMemberBonusExpand.setExpandNormalHalf(ComputeUtil.computeMultiplyHalf(expandCapping));
|
||||
cuMemberBonusExpand.setExpandNormalReal(ComputeUtil.computeMultiplyHalf(pretaxIncome));
|
||||
cuMemberBonusExpand.setRemark(String.format(BonusMsgConstants.BONUS_EXPAND_DELAY, cuMemberSettleExt.getMemberCode() + cuMemberSettleExt.getMemberName()));
|
||||
// 处理扣项,计算最终收益
|
||||
BdBonusDeduct bdBonusDeduct = setDeplyBonusDetailDeduct(bonusConfigDTO, cuMemberBonusExpand);
|
||||
// 处理实发小计、实发收益总计
|
||||
|
|
|
@ -840,6 +840,9 @@ public abstract class BonusSettleHandle {
|
|||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取会员拓展收益明细
|
||||
*/
|
||||
protected CuMemberBonusExpand getCuMemberBonusExpand(SaOrderExt saOrderExt, int touchNum, int i, CuMemberSettleExt targetMemberSettleExt, BigDecimal countryExpandRatio,
|
||||
CuMemberBonus cuMemberBonus, BigDecimal calAchieve, Integer pkBonusItems, BigDecimal addTouch, BdGrade bdGrade) {
|
||||
CuMemberBonusExpand cuMemberBonusExpand = CuMemberBonusExpand.builder()
|
||||
|
@ -865,6 +868,7 @@ public abstract class BonusSettleHandle {
|
|||
.build();
|
||||
cuMemberBonusExpand.setPkCountry(targetMemberSettleExt.getPkSettleCountry());
|
||||
cuMemberBonusExpand.setPkCreator(MagicNumberConstants.PK_ADMIN);
|
||||
cuMemberBonusExpand.setPkModified(targetMemberSettleExt.getPkMember());
|
||||
if (EAccountStatus.STOP_PROFIT.getValue() == targetMemberSettleExt.getAccountStatus()) {
|
||||
cuMemberBonusExpand.setIncomeStatus(EBonusIncomeStatus.STOP_INCOME.getValue());
|
||||
}
|
||||
|
@ -878,7 +882,44 @@ public abstract class BonusSettleHandle {
|
|||
cuMemberBonusExpand.setIncomeStatus(EBonusIncomeStatus.DELAY_GRANT.getValue());
|
||||
}
|
||||
}
|
||||
return cuMemberBonusExpand;
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取会员拓展收益延缓明细
|
||||
*/
|
||||
protected CuMemberBonusExpand getCuMemberBonusExpandDelay(CuMemberSettleExt targetMemberSettleExt, CuMemberBonus cuMemberBonus,
|
||||
BigDecimal expandRatio, Integer pkBonusItems, BdGrade bdGrade) {
|
||||
CuMemberBonusExpand cuMemberBonusExpand = CuMemberBonusExpand.builder()
|
||||
.pkBonus(cuMemberBonus.getPkId())
|
||||
.pkBonusItems(pkBonusItems)
|
||||
.incomeStatus(targetMemberSettleExt.getIncomeStatus())
|
||||
.pkOrder(0L)
|
||||
.calType(ECalType.RATIO.getValue())
|
||||
.calValue(expandRatio)
|
||||
.calAchieve(BigDecimal.ZERO)
|
||||
.currentTouch(0)
|
||||
.expandTouch(0)
|
||||
.addTouch(BigDecimal.ZERO)
|
||||
.pretaxIncome(BigDecimal.ZERO)
|
||||
.incomeRatio(BigDecimal.ZERO)
|
||||
.incomeDialRatio(BigDecimal.ZERO)
|
||||
.orderDialRatio(BigDecimal.ZERO)
|
||||
.incomeTax(BigDecimal.ZERO)
|
||||
.realIncome(BigDecimal.ZERO)
|
||||
.pkMember(targetMemberSettleExt.getPkMember())
|
||||
.delayExpandCapping(bdGrade.getExpandCapping())
|
||||
.unGrantIncome(null != targetMemberSettleExt.getUnGrantIncome() ? targetMemberSettleExt.getUnGrantIncome() : BigDecimal.ZERO)
|
||||
.build();
|
||||
cuMemberBonusExpand.setPkCountry(targetMemberSettleExt.getPkSettleCountry());
|
||||
cuMemberBonusExpand.setPkCreator(MagicNumberConstants.PK_ADMIN);
|
||||
cuMemberBonusExpand.setPkModified(targetMemberSettleExt.getPkMember());
|
||||
if (EAccountStatus.STOP_PROFIT.getValue() == targetMemberSettleExt.getAccountStatus()) {
|
||||
cuMemberBonusExpand.setIncomeStatus(EBonusIncomeStatus.STOP_INCOME.getValue());
|
||||
}
|
||||
if (EExpireStatus.TERMINATED.getValue() == targetMemberSettleExt.getExpireStatus()) {
|
||||
cuMemberBonusExpand.setIncomeStatus(EBonusIncomeStatus.FIRE_BURN.getValue());
|
||||
}
|
||||
return cuMemberBonusExpand;
|
||||
}
|
||||
|
||||
|
|
|
@ -5,11 +5,7 @@ import lombok.AllArgsConstructor;
|
|||
import lombok.Getter;
|
||||
|
||||
/**
|
||||
* @Description: 奖金收益状态 奖金明细表
|
||||
* @Author: sui q
|
||||
* @Time: 2022/11/10 16:03
|
||||
* @Classname: EBonusIncomeStatus
|
||||
* @PackageName: com.hzs.common.core.enums
|
||||
* @Description: 奖金收益状态 奖金明细表(cu_member_bonus_XX)
|
||||
*/
|
||||
@AllArgsConstructor
|
||||
@Getter
|
||||
|
|
|
@ -5,10 +5,6 @@ import lombok.Getter;
|
|||
|
||||
/**
|
||||
* @Description: 会员有效状态
|
||||
* @Author: jiang chao
|
||||
* @Time: 2024/6/4 11:07
|
||||
* @Classname: EExpireStatus
|
||||
* @PackageName: com.hzs.common.core.enums
|
||||
*/
|
||||
@AllArgsConstructor
|
||||
@Getter
|
||||
|
|
|
@ -5,17 +5,13 @@ import lombok.AllArgsConstructor;
|
|||
import lombok.Getter;
|
||||
|
||||
/**
|
||||
* @Description: 会员收益状态 会员表,会员网体表,奖金汇总表
|
||||
* @Author: sui q
|
||||
* @Time: 2022/11/4 11:03
|
||||
* @Classname: EIncomeStatus
|
||||
* @PackageName: com.hzs.common.core.enums
|
||||
* @Description: 会员收益状态 会员表(cu_member),会员网体表(cu_member_tree),奖金汇总表(cu_member_bonus)
|
||||
*/
|
||||
@AllArgsConstructor
|
||||
@Getter
|
||||
public enum EIncomeStatus {
|
||||
/**
|
||||
*正常
|
||||
* 正常
|
||||
*/
|
||||
NORMAL(0, "正常", 0, EnumsPrefixConstants.INCOME_STATUS + "0"),
|
||||
|
||||
|
|
|
@ -5,11 +5,7 @@ import lombok.AllArgsConstructor;
|
|||
import lombok.Getter;
|
||||
|
||||
/**
|
||||
* Description: 修改收益状态枚举
|
||||
* Author: zhangjing
|
||||
* Time: 2022/9/1 9:06
|
||||
* Classname: EProfitState
|
||||
* PackageName: com.hzs.common.core.enums
|
||||
* Description: 修改收益状态枚举 -- 办理业务使用
|
||||
*/
|
||||
@AllArgsConstructor
|
||||
@Getter
|
||||
|
@ -25,7 +21,6 @@ public enum EProfitState {
|
|||
PROHIBIT(1, "禁止收益", 0, EnumsPrefixConstants.EPROFIT_STATE + "1"),
|
||||
|
||||
|
||||
|
||||
;
|
||||
|
||||
/**
|
||||
|
|
Loading…
Reference in New Issue