## 月度分红处理;
This commit is contained in:
parent
6e0f502f53
commit
8e4be48e0f
|
@ -905,7 +905,6 @@ public abstract class BonusSettleHandle {
|
||||||
setBonusDeduct(bdBonusDeduct, cuMemberBonus, bonusDetail);
|
setBonusDeduct(bdBonusDeduct, cuMemberBonus, bonusDetail);
|
||||||
BigDecimal realIncome = ReflectUtils.invokeGetter(bonusDetail, BonusFieldConstants.REAL_INCOME);
|
BigDecimal realIncome = ReflectUtils.invokeGetter(bonusDetail, BonusFieldConstants.REAL_INCOME);
|
||||||
cuMemberBonus.setRepurCouponSubtotal(ComputeUtil.computeAdd(cuMemberBonus.getRepurCouponSubtotal(), realIncome));
|
cuMemberBonus.setRepurCouponSubtotal(ComputeUtil.computeAdd(cuMemberBonus.getRepurCouponSubtotal(), realIncome));
|
||||||
// cuMemberBonus.setRealIncomeTotal(ComputeUtil.computeAdd(cuMemberBonus.getRealIncomeTotal(), realIncome));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -1823,7 +1823,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
||||||
|
|
||||||
// 月订单列表
|
// 月订单列表
|
||||||
List<SaOrder> totalMonthOrderList = new ArrayList<>();
|
List<SaOrder> totalMonthOrderList = new ArrayList<>();
|
||||||
// 级差收益
|
// 级差收益(月度级差、复购级差)
|
||||||
List<CuMemberBonusRange> memberBonusRangeList = new ArrayList<>();
|
List<CuMemberBonusRange> memberBonusRangeList = new ArrayList<>();
|
||||||
// 分红收益
|
// 分红收益
|
||||||
List<CuMemberBonusDetail> memberBonusDetailList = new ArrayList<>();
|
List<CuMemberBonusDetail> memberBonusDetailList = new ArrayList<>();
|
||||||
|
@ -2005,101 +2005,125 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// // CAR_AWARD_POINTS 福利平均收益 SHARE_INCOME 福利收益
|
// 查询 v5 等级 且 分红奖衔 >=S4
|
||||||
// // 查询v5 等级 且奖衔>=S4的
|
List<CuMemberRetailRangeExt> memberRetailRangeExtList = iCuMemberRetailRangeService.batchQueryMemberRetailRangeByAwards(rangeTableName);
|
||||||
// List<CuMemberRetailRangeExt> memberRetailRangeExtList = iCuMemberRetailRangeService.batchQueryMemberRetailRangeByAwards(rangeTableName);
|
if (memberRetailRangeExtList.size() > 0) {
|
||||||
// if (memberRetailRangeExtList.size() > 0) {
|
// 查询月度分红会员的直推
|
||||||
// List<CuMemberRetailRangeExt> retailRangeExtList = iCuMemberRetailRangeService.batchQueryMemberRetailRangeByParent(rangeTableName, memberRetailRangeExtList);
|
List<CuMemberRetailRangeExt> retailRangeExtList = iCuMemberRetailRangeService.batchQueryMemberRetailRangeByParent(rangeTableName, memberRetailRangeExtList);
|
||||||
// Map<Long, List<CuMemberRetailRangeExt>> parentMemberRangeExtMap = new HashMap<>();
|
// 推荐会员列表(key:推荐人,value:推荐会员列表)
|
||||||
// for (CuMemberRetailRangeExt cuMemberRetailRangeExt : retailRangeExtList) {
|
Map<Long, List<CuMemberRetailRangeExt>> parentMemberRangeExtMap = new HashMap<>();
|
||||||
// if (parentMemberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkParent())) {
|
for (CuMemberRetailRangeExt cuMemberRetailRangeExt : retailRangeExtList) {
|
||||||
// parentMemberRangeExtMap.get(cuMemberRetailRangeExt.getPkParent()).add(cuMemberRetailRangeExt);
|
if (parentMemberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkParent())) {
|
||||||
// } else {
|
parentMemberRangeExtMap.get(cuMemberRetailRangeExt.getPkParent()).add(cuMemberRetailRangeExt);
|
||||||
// List<CuMemberRetailRangeExt> cuMemberRangeExtList = new ArrayList<>();
|
} else {
|
||||||
// cuMemberRangeExtList.add(cuMemberRetailRangeExt);
|
List<CuMemberRetailRangeExt> cuMemberRangeExtList = new ArrayList<>();
|
||||||
// parentMemberRangeExtMap.put(cuMemberRetailRangeExt.getPkParent(), cuMemberRangeExtList);
|
cuMemberRangeExtList.add(cuMemberRetailRangeExt);
|
||||||
// }
|
parentMemberRangeExtMap.put(cuMemberRetailRangeExt.getPkParent(), cuMemberRangeExtList);
|
||||||
// }
|
}
|
||||||
// // 分类,分为4 5 6 7 8 9
|
}
|
||||||
// List<CuMemberRetailRangeExt> firstAwardsRetailRangeList = new ArrayList<>();
|
// 奖衔分红分类
|
||||||
// BigDecimal benefitAvgRatio = BigDecimal.ZERO;
|
// 4 5 6 级奖衔会员
|
||||||
// BigDecimal benefitShareRatio = BigDecimal.ZERO;
|
List<CuMemberRetailRangeExt> firstAwardsRetailRangeList = new ArrayList<>();
|
||||||
// BigDecimal firstConsumePv = BigDecimal.ZERO;
|
// 4 5 6 级奖衔累计业绩
|
||||||
// BigDecimal secondBenefitAvgRatio = BigDecimal.ZERO;
|
BigDecimal firstConsumePv = BigDecimal.ZERO;
|
||||||
// BigDecimal secondBenefitShareRatio = BigDecimal.ZERO;
|
// 4 5 6 月度分红平均 比例
|
||||||
// BigDecimal secondConsumePv = BigDecimal.ZERO;
|
BigDecimal benefitAvgRatio = BigDecimal.ZERO;
|
||||||
// List<CuMemberRetailRangeExt> secondAwardsRetailRangeList = new ArrayList<>();
|
// 4 5 6 月度分红加权 比例
|
||||||
// for (CuMemberRetailRangeExt cuMemberRetailRangeExt : memberRetailRangeExtList) {
|
BigDecimal benefitShareRatio = BigDecimal.ZERO;
|
||||||
// if (parentMemberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) {
|
|
||||||
// List<CuMemberRetailRangeExt> rangeExtList = parentMemberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember());
|
// 7 8 9 级奖衔会员
|
||||||
// // 计算小区
|
List<CuMemberRetailRangeExt> secondAwardsRetailRangeList = new ArrayList<>();
|
||||||
// BigDecimal bigConsumePv = BigDecimal.ZERO;
|
// 7 8 9 级奖衔累计业绩
|
||||||
// for (CuMemberRetailRangeExt memberRetailRangeExt : rangeExtList) {
|
BigDecimal secondConsumePv = BigDecimal.ZERO;
|
||||||
// BigDecimal monthConsumePv = ComputeUtil.computeAdd(memberRetailRangeExt.getMonthConsumePv(), memberRetailRangeExt.getTeamMonthPv());
|
// 7 8 9 月度分红平均 比例
|
||||||
// if (ComputeUtil.compareGreaterThan(monthConsumePv, bigConsumePv)) {
|
BigDecimal secondBenefitAvgRatio = BigDecimal.ZERO;
|
||||||
// bigConsumePv = monthConsumePv;
|
// 7 8 9 月度分红加权 比例
|
||||||
// }
|
BigDecimal secondBenefitShareRatio = BigDecimal.ZERO;
|
||||||
// }
|
|
||||||
// cuMemberRetailRangeExt.setSmallAreaConsumePv(ComputeUtil.computeSubtract(cuMemberRetailRangeExt.getTeamMonthPv(), bigConsumePv));
|
for (CuMemberRetailRangeExt cuMemberRetailRangeExt : memberRetailRangeExtList) {
|
||||||
// } else {
|
if (parentMemberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) {
|
||||||
// cuMemberRetailRangeExt.setSmallAreaConsumePv(BigDecimal.ZERO);
|
// 获取会员的推荐数据
|
||||||
// }
|
List<CuMemberRetailRangeExt> rangeExtList = parentMemberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember());
|
||||||
// if (cuMemberRetailRangeExt.getShareAwardsValue() >= EAwards.SENIOR_MANAGER.getValue() &&
|
// 计算小区(本人月消费默认为大区)
|
||||||
// cuMemberRetailRangeExt.getShareAwardsValue() <= EAwards.HIGH_CHIEF.getValue()) {
|
BigDecimal bigConsumePv = cuMemberRetailRangeExt.getMonthConsumePv();
|
||||||
// firstAwardsRetailRangeList.add(cuMemberRetailRangeExt);
|
for (CuMemberRetailRangeExt memberRetailRangeExt : rangeExtList) {
|
||||||
// benefitAvgRatio = cuMemberRetailRangeExt.getBenefitAvgRatio();
|
// 本人消费 + 团队消费
|
||||||
// benefitShareRatio = cuMemberRetailRangeExt.getBenefitShareRatio();
|
BigDecimal monthConsumePv = ComputeUtil.computeAdd(memberRetailRangeExt.getMonthConsumePv(), memberRetailRangeExt.getTeamMonthPv());
|
||||||
// firstConsumePv = ComputeUtil.computeAdd(cuMemberRetailRangeExt.getSmallAreaConsumePv(), firstConsumePv);
|
if (ComputeUtil.compareGreaterThan(monthConsumePv, bigConsumePv)) {
|
||||||
// } else {
|
bigConsumePv = monthConsumePv;
|
||||||
// secondAwardsRetailRangeList.add(cuMemberRetailRangeExt);
|
}
|
||||||
// secondBenefitAvgRatio = cuMemberRetailRangeExt.getBenefitAvgRatio();
|
}
|
||||||
// secondBenefitShareRatio = cuMemberRetailRangeExt.getBenefitShareRatio();
|
// 小区业绩 = 本人月团队 + 本人月消费 - 大区业绩
|
||||||
// secondConsumePv = ComputeUtil.computeAdd(cuMemberRetailRangeExt.getSmallAreaConsumePv(), secondConsumePv);
|
cuMemberRetailRangeExt.setSmallAreaConsumePv(ComputeUtil.computeSubtract(cuMemberRetailRangeExt.getTeamMonthPv().add(cuMemberRetailRangeExt.getMonthConsumePv()), bigConsumePv));
|
||||||
// }
|
} else {
|
||||||
// }
|
cuMemberRetailRangeExt.setSmallAreaConsumePv(BigDecimal.ZERO);
|
||||||
// if (firstAwardsRetailRangeList.size() > 0) {
|
}
|
||||||
// BigDecimal benefitAvgIncome = ComputeUtil.computeDivide(ComputeUtil.computeBonusMultiply(totalMonthConsumePv, benefitAvgRatio), BigDecimal.valueOf(firstAwardsRetailRangeList.size()));
|
if (cuMemberRetailRangeExt.getShareAwardsValue() >= EAwards.SENIOR_MANAGER.getValue()
|
||||||
// BigDecimal benefitShareIncome = ComputeUtil.computeBonusMultiply(totalMonthConsumePv, benefitShareRatio);
|
&& cuMemberRetailRangeExt.getShareAwardsValue() <= EAwards.HIGH_CHIEF.getValue()) {
|
||||||
// for (CuMemberRetailRangeExt cuMemberRetailRangeExt : firstAwardsRetailRangeList) {
|
// 奖衔 4 5 6 级数据处理
|
||||||
// if (ECategory.NORMAL.getValue() != cuMemberRetailRangeExt.getCategory() ||
|
firstAwardsRetailRangeList.add(cuMemberRetailRangeExt);
|
||||||
// EAccountStatus.STOP_INCOME.getValue() == cuMemberRetailRangeExt.getAccountStatus() ||
|
benefitAvgRatio = cuMemberRetailRangeExt.getBenefitAvgRatio();
|
||||||
// EIncomeStatus.STOP_INCOME.getValue() == cuMemberRetailRangeExt.getIncomeStatus()) {
|
benefitShareRatio = cuMemberRetailRangeExt.getBenefitShareRatio();
|
||||||
// continue;
|
firstConsumePv = ComputeUtil.computeAdd(cuMemberRetailRangeExt.getSmallAreaConsumePv(), firstConsumePv);
|
||||||
// }
|
} else {
|
||||||
// // 验证是否有奖金
|
// 奖衔 7 8 9 级数据处理
|
||||||
// if (validatePkBonusItems(bonusConfigDTO, cuMemberRetailRangeExt.getPkSettleCountry(), EBonusItems.RETAIL_BENEFIT_AVG_INCOME.getValue())) {
|
secondAwardsRetailRangeList.add(cuMemberRetailRangeExt);
|
||||||
// continue;
|
secondBenefitAvgRatio = cuMemberRetailRangeExt.getBenefitAvgRatio();
|
||||||
// }
|
secondBenefitShareRatio = cuMemberRetailRangeExt.getBenefitShareRatio();
|
||||||
// memberBonusDetailList.add(packageBenefitIncome(bonusConfigDTO, period, cuMemberBonusMap, month, benefitAvgRatio,
|
secondConsumePv = ComputeUtil.computeAdd(cuMemberRetailRangeExt.getSmallAreaConsumePv(), secondConsumePv);
|
||||||
// benefitAvgIncome, cuMemberRetailRangeExt, EBonusItems.RETAIL_BENEFIT_AVG_INCOME.getValue(), BonusMsgConstants.RETAIL_BENEFIT_AVG_INCOME));
|
}
|
||||||
// BigDecimal bonusIncome = ComputeUtil.computeDivide(ComputeUtil.computeMultiply(benefitShareIncome, cuMemberRetailRangeExt.getSmallAreaConsumePv()), firstConsumePv);
|
}
|
||||||
// CuMemberBonusDetail cuMemberBonusDetail = packageBenefitIncome(bonusConfigDTO, period, cuMemberBonusMap, month, benefitShareRatio,
|
if (firstAwardsRetailRangeList.size() > 0) {
|
||||||
// bonusIncome, cuMemberRetailRangeExt, EBonusItems.RETAIL_BENEFIT_INCOME.getValue(), BonusMsgConstants.RETAIL_BENEFIT_INCOME);
|
// 月度分红平均收益 = 订单总业绩 乘 分红平均比例 除 奖衔人数
|
||||||
// memberBonusDetailList.add(cuMemberBonusDetail);
|
BigDecimal benefitAvgIncome = ComputeUtil.computeDivide(ComputeUtil.computeBonusMultiply(totalMonthConsumePv, benefitAvgRatio), BigDecimal.valueOf(firstAwardsRetailRangeList.size()));
|
||||||
// }
|
// 月度分红加权总收益 = 订单总业绩 乘 分红加权比例
|
||||||
// }
|
BigDecimal benefitShareIncome = ComputeUtil.computeBonusMultiply(totalMonthConsumePv, benefitShareRatio);
|
||||||
// if (secondAwardsRetailRangeList.size() > 0) {
|
for (CuMemberRetailRangeExt cuMemberRetailRangeExt : firstAwardsRetailRangeList) {
|
||||||
// BigDecimal benefitAvgIncome = ComputeUtil.computeDivide(ComputeUtil.computeBonusMultiply(totalMonthConsumePv, secondBenefitAvgRatio), BigDecimal.valueOf(secondAwardsRetailRangeList.size()));
|
if (ECategory.NORMAL.getValue() != cuMemberRetailRangeExt.getCategory()
|
||||||
// BigDecimal benefitShareIncome = ComputeUtil.computeBonusMultiply(totalMonthConsumePv, secondBenefitShareRatio);
|
|| EAccountStatus.STOP_INCOME.getValue() == cuMemberRetailRangeExt.getAccountStatus()
|
||||||
// for (CuMemberRetailRangeExt cuMemberRetailRangeExt : secondAwardsRetailRangeList) {
|
|| EIncomeStatus.STOP_INCOME.getValue() == cuMemberRetailRangeExt.getIncomeStatus()) {
|
||||||
// if (ECategory.NORMAL.getValue() != cuMemberRetailRangeExt.getCategory() ||
|
// 非正常状态、停算状态、停止收益,直接跳过
|
||||||
// EAccountStatus.STOP_INCOME.getValue() == cuMemberRetailRangeExt.getAccountStatus() ||
|
continue;
|
||||||
// EIncomeStatus.STOP_INCOME.getValue() == cuMemberRetailRangeExt.getIncomeStatus()) {
|
}
|
||||||
// continue;
|
// 验证是否有奖金
|
||||||
// }
|
if (validatePkBonusItems(bonusConfigDTO, cuMemberRetailRangeExt.getPkSettleCountry(), EBonusItems.RETAIL_BENEFIT_AVG_INCOME.getValue())) {
|
||||||
// // 验证是否有奖金
|
continue;
|
||||||
// if (validatePkBonusItems(bonusConfigDTO, cuMemberRetailRangeExt.getPkSettleCountry(), EBonusItems.RETAIL_BENEFIT_AVG_INCOME.getValue())) {
|
}
|
||||||
// continue;
|
// 月度分红 - 平均收益
|
||||||
// }
|
memberBonusDetailList.add(packageBenefitIncome(bonusConfigDTO, period, cuMemberBonusMap, month, benefitAvgRatio,
|
||||||
// memberBonusDetailList.add(packageBenefitIncome(bonusConfigDTO, period, cuMemberBonusMap, month, secondBenefitAvgRatio,
|
benefitAvgIncome, cuMemberRetailRangeExt, EBonusItems.RETAIL_BENEFIT_AVG_INCOME.getValue(), BonusMsgConstants.RETAIL_BENEFIT_AVG_INCOME));
|
||||||
// benefitAvgIncome, cuMemberRetailRangeExt, EBonusItems.RETAIL_BENEFIT_AVG_INCOME.getValue(), BonusMsgConstants.RETAIL_BENEFIT_AVG_INCOME));
|
// 月度分红加权收益 = 月度分红加权总收益 乘 小市场业绩 除 总小市场业绩
|
||||||
// BigDecimal bonusIncome = ComputeUtil.computeDivide(ComputeUtil.computeMultiply(benefitShareIncome, cuMemberRetailRangeExt.getSmallAreaConsumePv()), secondConsumePv);
|
BigDecimal bonusIncome = ComputeUtil.computeDivide(ComputeUtil.computeMultiply(benefitShareIncome, cuMemberRetailRangeExt.getSmallAreaConsumePv()), firstConsumePv);
|
||||||
// CuMemberBonusDetail cuMemberBonusDetail = packageBenefitIncome(bonusConfigDTO, period, cuMemberBonusMap, month, secondBenefitShareRatio,
|
// 月度分红 - 加权收益
|
||||||
// bonusIncome, cuMemberRetailRangeExt, EBonusItems.RETAIL_BENEFIT_INCOME.getValue(), BonusMsgConstants.RETAIL_BENEFIT_INCOME);
|
memberBonusDetailList.add(packageBenefitIncome(bonusConfigDTO, period, cuMemberBonusMap, month, benefitShareRatio,
|
||||||
// memberBonusDetailList.add(cuMemberBonusDetail);
|
bonusIncome, cuMemberRetailRangeExt, EBonusItems.RETAIL_BENEFIT_INCOME.getValue(), BonusMsgConstants.RETAIL_BENEFIT_INCOME));
|
||||||
// }
|
}
|
||||||
// }
|
}
|
||||||
// }
|
if (secondAwardsRetailRangeList.size() > 0) {
|
||||||
|
BigDecimal benefitAvgIncome = ComputeUtil.computeDivide(ComputeUtil.computeBonusMultiply(totalMonthConsumePv, secondBenefitAvgRatio), BigDecimal.valueOf(secondAwardsRetailRangeList.size()));
|
||||||
|
BigDecimal benefitShareIncome = ComputeUtil.computeBonusMultiply(totalMonthConsumePv, secondBenefitShareRatio);
|
||||||
|
for (CuMemberRetailRangeExt cuMemberRetailRangeExt : secondAwardsRetailRangeList) {
|
||||||
|
if (ECategory.NORMAL.getValue() != cuMemberRetailRangeExt.getCategory()
|
||||||
|
|| EAccountStatus.STOP_INCOME.getValue() == cuMemberRetailRangeExt.getAccountStatus()
|
||||||
|
|| EIncomeStatus.STOP_INCOME.getValue() == cuMemberRetailRangeExt.getIncomeStatus()) {
|
||||||
|
// 非正常状态、停算状态、停止收益,直接跳过
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
// 验证是否有奖金
|
||||||
|
if (validatePkBonusItems(bonusConfigDTO, cuMemberRetailRangeExt.getPkSettleCountry(), EBonusItems.RETAIL_BENEFIT_AVG_INCOME.getValue())) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
// 月度分红 - 平均收益
|
||||||
|
memberBonusDetailList.add(packageBenefitIncome(bonusConfigDTO, period, cuMemberBonusMap, month, secondBenefitAvgRatio,
|
||||||
|
benefitAvgIncome, cuMemberRetailRangeExt, EBonusItems.RETAIL_BENEFIT_AVG_INCOME.getValue(), BonusMsgConstants.RETAIL_BENEFIT_AVG_INCOME));
|
||||||
|
// 月度分红加权收益 = 月度分红加权总收益 乘 小市场业绩 除 总小市场业绩
|
||||||
|
BigDecimal bonusIncome = ComputeUtil.computeDivide(ComputeUtil.computeMultiply(benefitShareIncome, cuMemberRetailRangeExt.getSmallAreaConsumePv()), secondConsumePv);
|
||||||
|
// 月度分红 - 加权收益
|
||||||
|
memberBonusDetailList.add(packageBenefitIncome(bonusConfigDTO, period, cuMemberBonusMap, month, secondBenefitShareRatio,
|
||||||
|
bonusIncome, cuMemberRetailRangeExt, EBonusItems.RETAIL_BENEFIT_INCOME.getValue(), BonusMsgConstants.RETAIL_BENEFIT_INCOME));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (memberBonusDetailList.size() > 0) {
|
if (memberBonusDetailList.size() > 0) {
|
||||||
|
@ -2120,10 +2144,13 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
||||||
|
|
||||||
private CuMemberBonusDetail packageBenefitIncome(BonusConfigDTO bonusConfigDTO, Integer period, Map<Long, CuMemberBonus> cuMemberBonusMap, String month,
|
private CuMemberBonusDetail packageBenefitIncome(BonusConfigDTO bonusConfigDTO, Integer period, Map<Long, CuMemberBonus> cuMemberBonusMap, String month,
|
||||||
BigDecimal benefitAvgRatio, BigDecimal benefitAvgIncome, CuMemberRetailRangeExt cuMemberRetailRangeExt, Integer bonusItemsValue, String msg) {
|
BigDecimal benefitAvgRatio, BigDecimal benefitAvgIncome, CuMemberRetailRangeExt cuMemberRetailRangeExt, Integer bonusItemsValue, String msg) {
|
||||||
|
// 获取会员奖金数据
|
||||||
CuMemberBonus cuMemberBonus = getCuMemberBonus(period, cuMemberBonusMap, cuMemberRetailRangeExt.getPkMember(),
|
CuMemberBonus cuMemberBonus = getCuMemberBonus(period, cuMemberBonusMap, cuMemberRetailRangeExt.getPkMember(),
|
||||||
cuMemberRetailRangeExt.getIncomeStatus(), cuMemberRetailRangeExt.getPkSettleCountry(), cuMemberRetailRangeExt.getPkRate());
|
cuMemberRetailRangeExt.getIncomeStatus(), cuMemberRetailRangeExt.getPkSettleCountry(), cuMemberRetailRangeExt.getPkRate());
|
||||||
|
|
||||||
SaOrder saOrderExt = SaOrder.builder().pkId(0L).orderAchieve(BigDecimal.ZERO).build();
|
SaOrder saOrderExt = SaOrder.builder().pkId(0L).orderAchieve(BigDecimal.ZERO).build();
|
||||||
CuMemberBonusDetail cuMemberBonusDetail = getCuMemberBonusDetail(saOrderExt, cuMemberRetailRangeExt.getIncomeStatus(), cuMemberRetailRangeExt.getPkSettleCountry(), cuMemberBonus);
|
CuMemberBonusDetail cuMemberBonusDetail = getCuMemberBonusDetail(saOrderExt, cuMemberRetailRangeExt.getIncomeStatus(), cuMemberRetailRangeExt.getPkSettleCountry(), cuMemberBonus);
|
||||||
|
|
||||||
// 计算比例
|
// 计算比例
|
||||||
cuMemberBonusDetail.setCalValue(benefitAvgRatio);
|
cuMemberBonusDetail.setCalValue(benefitAvgRatio);
|
||||||
cuMemberBonusDetail.setPretaxIncome(benefitAvgIncome);
|
cuMemberBonusDetail.setPretaxIncome(benefitAvgIncome);
|
||||||
|
@ -2134,6 +2161,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
||||||
String remark = String.format(msg, cuMemberBonusDetail.getPretaxIncome(), month);
|
String remark = String.format(msg, cuMemberBonusDetail.getPretaxIncome(), month);
|
||||||
cuMemberBonusDetail.setRemark(remark);
|
cuMemberBonusDetail.setRemark(remark);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusDetail.getIncomeStatus()) {
|
if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusDetail.getIncomeStatus()) {
|
||||||
if (bonusItemsValue == EBonusItems.RETAIL_AREA_INCOME.getValue()) {
|
if (bonusItemsValue == EBonusItems.RETAIL_AREA_INCOME.getValue()) {
|
||||||
cuMemberBonus.setRetailAreaIncome(ComputeUtil.computeAdd(cuMemberBonus.getRetailAreaIncome(), cuMemberBonusDetail.getPretaxIncome()));
|
cuMemberBonus.setRetailAreaIncome(ComputeUtil.computeAdd(cuMemberBonus.getRetailAreaIncome(), cuMemberBonusDetail.getPretaxIncome()));
|
||||||
|
|
|
@ -188,7 +188,7 @@ public class BonusSettleServiceImpl implements IBonusSettleService {
|
||||||
// 保存当日计算的奖金
|
// 保存当日计算的奖金
|
||||||
insertCuMemberBonus(settleDate, period, cuMemberBonusMap, recordDetailVO);
|
insertCuMemberBonus(settleDate, period, cuMemberBonusMap, recordDetailVO);
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
e.printStackTrace();
|
log.error("奖金结算异常", e);
|
||||||
throw new RuntimeException(e);
|
throw new RuntimeException(e);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -144,28 +144,24 @@ public class CuRegionAssessServiceImpl extends ServiceImpl<CuRegionAssessMapper,
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @description: 定时处理会员收益区域(处理前三天)
|
* 定时处理会员收益区域(处理前三天)
|
||||||
* @author: zhang jing
|
|
||||||
* @date: 2025/3/7 9:56
|
|
||||||
* @param: [startDate]
|
|
||||||
* @return: void
|
|
||||||
**/
|
**/
|
||||||
@Override
|
@Override
|
||||||
public void validateHandAreaAssess(Date startDate,Date endDate) {
|
public void validateHandAreaAssess(Date startDate, Date endDate) {
|
||||||
List<Long> cancelRegionList = new ArrayList<>();
|
List<Long> cancelRegionList = new ArrayList<>();
|
||||||
List<CuMemberRetailRegion> dueRetailRegionList = baseMapper.queryDueCuMemberRetailRegion(startDate, endDate);
|
List<CuMemberRetailRegion> dueRetailRegionList = baseMapper.queryDueCuMemberRetailRegion(startDate, endDate);
|
||||||
if(dueRetailRegionList.size() > 0) {
|
if (dueRetailRegionList.size() > 0) {
|
||||||
Date assessDate = DateUtils.currentMonthFirstDate(startDate);
|
Date assessDate = DateUtils.currentMonthFirstDate(startDate);
|
||||||
// 查询期初日期 beforeMonthFirstDate startDate 考核期间结束日期
|
// 查询期初日期 beforeMonthFirstDate startDate 考核期间结束日期
|
||||||
Date assMonthStartDate = DateUtils.beforeMonthFirstDate(5, assessDate);
|
Date assMonthStartDate = DateUtils.beforeMonthFirstDate(5, assessDate);
|
||||||
// assessDate assessDate 查询考核记录
|
// assessDate assessDate 查询考核记录
|
||||||
Map<Long,CuRegionAssessExt> regionAssessExtMap = new HashMap<>();
|
Map<Long, CuRegionAssessExt> regionAssessExtMap = new HashMap<>();
|
||||||
List<CuRegionAssessExt> cuRegionAssessExtList = baseMapper.queryRegionAssessByDate(dueRetailRegionList, assMonthStartDate, assessDate);
|
List<CuRegionAssessExt> cuRegionAssessExtList = baseMapper.queryRegionAssessByDate(dueRetailRegionList, assMonthStartDate, assessDate);
|
||||||
cuRegionAssessExtList.forEach(cuRegionAssessExt -> regionAssessExtMap.put(cuRegionAssessExt.getPkMember(), cuRegionAssessExt));
|
cuRegionAssessExtList.forEach(cuRegionAssessExt -> regionAssessExtMap.put(cuRegionAssessExt.getPkMember(), cuRegionAssessExt));
|
||||||
for (CuMemberRetailRegion cuMemberRetailRegion : dueRetailRegionList) {
|
for (CuMemberRetailRegion cuMemberRetailRegion : dueRetailRegionList) {
|
||||||
if(regionAssessExtMap.containsKey(cuMemberRetailRegion.getPkMember())){
|
if (regionAssessExtMap.containsKey(cuMemberRetailRegion.getPkMember())) {
|
||||||
CuRegionAssessExt cuRegionAssessExt = regionAssessExtMap.get(cuMemberRetailRegion.getPkMember());
|
CuRegionAssessExt cuRegionAssessExt = regionAssessExtMap.get(cuMemberRetailRegion.getPkMember());
|
||||||
if(cuRegionAssessExt.getPkId() >=3){
|
if (cuRegionAssessExt.getPkId() >= 3) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -494,18 +494,23 @@
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="batchQueryMemberRetailRangeByParent" resultMap="CuMemberRetailRangeExt">
|
<select id="batchQueryMemberRetailRangeByParent" resultMap="CuMemberRetailRangeExt">
|
||||||
select pk_member,pk_parent,member_code,member_name,a.pk_awards,a.pk_grade,a.pk_rate,
|
select pk_member, pk_parent, member_code, member_name,
|
||||||
a.income_status,a.pk_country,a.pk_settle_country,a.account_status,a.category,
|
a.pk_awards, a.pk_grade, a.pk_rate,
|
||||||
bg.grade_value,bg.grade_name,bw.awards_value,bw.awards_name,a.month_consume_pv,
|
a.income_status, a.pk_country, a.pk_settle_country,
|
||||||
a.team_month_pv,
|
a.account_status, a.category,
|
||||||
bw.range_ratio, bw.month_repurchase_ratio, bw.benefit_avg_ratio,bw.benefit_share_ratio
|
bg.grade_value, bg.grade_name,
|
||||||
|
bw.awards_value, bw.awards_name,
|
||||||
|
a.month_consume_pv, a.team_month_pv,
|
||||||
|
bw.range_ratio, bw.month_repurchase_ratio,
|
||||||
|
bw.benefit_avg_ratio, bw.benefit_share_ratio
|
||||||
from ${rangeTableName} a
|
from ${rangeTableName} a
|
||||||
inner join bd_awards bw
|
inner join bd_awards bw
|
||||||
on bw.pk_id=a.pk_awards
|
on bw.pk_id = a.pk_awards
|
||||||
|
and bw.del_flag = 0
|
||||||
inner join bd_grade bg
|
inner join bd_grade bg
|
||||||
on bg.pk_id=a.pk_grade
|
on bg.pk_id = a.pk_grade
|
||||||
where bw.del_flag=0 and bg.del_flag=0
|
and bg.del_flag = 0
|
||||||
and a.pk_parent in
|
where a.pk_parent in
|
||||||
<foreach collection="memberRetailRangeExtList" item="item" open="(" close=")" separator=",">
|
<foreach collection="memberRetailRangeExtList" item="item" open="(" close=")" separator=",">
|
||||||
#{item.pkMember}
|
#{item.pkMember}
|
||||||
</foreach>
|
</foreach>
|
||||||
|
|
|
@ -61,6 +61,7 @@ public class RetailMemberController extends BaseController {
|
||||||
|
|
||||||
@DubboReference
|
@DubboReference
|
||||||
IAreaServiceApi iAreaServiceApi;
|
IAreaServiceApi iAreaServiceApi;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取登录会员信息
|
* 获取登录会员信息
|
||||||
*
|
*
|
||||||
|
|
|
@ -131,14 +131,15 @@ public class CommonServiceProvider implements ICommonServiceApi {
|
||||||
memberDataDTO.setGradeVal(bdGrade.getGradeName());
|
memberDataDTO.setGradeVal(bdGrade.getGradeName());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
BdAwards monthAwards = null;
|
||||||
// 当月奖衔
|
// 当月奖衔
|
||||||
if (null != memberDataDTO.getPkAwards()) {
|
if (null != memberDataDTO.getPkAwards()) {
|
||||||
BdAwards bdAwards = iBdAwardsService.getBdAwardsOne(memberDataDTO.getPkAwards());
|
monthAwards = iBdAwardsService.getBdAwardsOne(memberDataDTO.getPkAwards());
|
||||||
if (null != bdAwards) {
|
if (null != monthAwards) {
|
||||||
memberDataDTO.setAwardsVal(bdAwards.getAwardsName());
|
memberDataDTO.setAwardsVal(monthAwards.getAwardsName());
|
||||||
if (EAwards.MEMBER.getValue() != bdAwards.getAwardsValue()) {
|
if (EAwards.MEMBER.getValue() != monthAwards.getAwardsValue()) {
|
||||||
// 奖衔如果是会员级别不返回图标
|
// 奖衔如果是会员级别不返回图标
|
||||||
memberDataDTO.setAwardsIcon(bdAwards.getImage());
|
memberDataDTO.setAwardsIcon(monthAwards.getImage());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -146,7 +147,8 @@ public class CommonServiceProvider implements ICommonServiceApi {
|
||||||
if (null != memberDataDTO.getPkMaxAwards()) {
|
if (null != memberDataDTO.getPkMaxAwards()) {
|
||||||
BdAwards bdAwards = iBdAwardsService.getBdAwardsOne(memberDataDTO.getPkMaxAwards());
|
BdAwards bdAwards = iBdAwardsService.getBdAwardsOne(memberDataDTO.getPkMaxAwards());
|
||||||
if (null != bdAwards) {
|
if (null != bdAwards) {
|
||||||
if (EAwards.MEMBER.getValue() == bdAwards.getAwardsValue()) {
|
if (null != monthAwards && monthAwards.getAwardsValue() > bdAwards.getAwardsValue()) {
|
||||||
|
// 月奖衔 大于 荣誉奖衔,显示月奖衔
|
||||||
memberDataDTO.setMaxAwardsVal(memberDataDTO.getAwardsVal());
|
memberDataDTO.setMaxAwardsVal(memberDataDTO.getAwardsVal());
|
||||||
memberDataDTO.setMaxAwardsIcon(memberDataDTO.getAwardsIcon());
|
memberDataDTO.setMaxAwardsIcon(memberDataDTO.getAwardsIcon());
|
||||||
} else {
|
} else {
|
||||||
|
|
|
@ -8,7 +8,6 @@ public class BonusMsgConstants {
|
||||||
/**
|
/**
|
||||||
* 直推收益备注 -- 当前是第%d轮,第%d次,订单编号%s,%s为%s贡献了推荐收益,计算业绩%f,直推比例%f。
|
* 直推收益备注 -- 当前是第%d轮,第%d次,订单编号%s,%s为%s贡献了推荐收益,计算业绩%f,直推比例%f。
|
||||||
*/
|
*/
|
||||||
// public static String RECOMMEND = "MSG_BONUS_001";
|
|
||||||
public static String RECOMMEND = "当前是第%d轮,第%d次,订单编号%s,%s为%s贡献了推荐收益,计算业绩%f,直推比例%f。";
|
public static String RECOMMEND = "当前是第%d轮,第%d次,订单编号%s,%s为%s贡献了推荐收益,计算业绩%f,直推比例%f。";
|
||||||
|
|
||||||
public static String RANGE_RECOMMEND = "当前是第%d代,第%d次,订单编号%s,%s为%s贡献了推互助收益,计算业绩%f。";
|
public static String RANGE_RECOMMEND = "当前是第%d代,第%d次,订单编号%s,%s为%s贡献了推互助收益,计算业绩%f。";
|
||||||
|
@ -16,31 +15,26 @@ public class BonusMsgConstants {
|
||||||
/**
|
/**
|
||||||
* 直推收益备注 -- 订单编号%s,%s为%s贡献了推荐收益,推荐收益为%f。
|
* 直推收益备注 -- 订单编号%s,%s为%s贡献了推荐收益,推荐收益为%f。
|
||||||
*/
|
*/
|
||||||
// public static String RECOMMEND_DIRECT = "MSG_BONUS_002";
|
|
||||||
public static String RECOMMEND_DIRECT = "订单编号%s,%s为%s贡献了推荐收益,推荐收益为%f。";
|
public static String RECOMMEND_DIRECT = "订单编号%s,%s为%s贡献了推荐收益,推荐收益为%f。";
|
||||||
public static String RECOMMEND_SPECIAL_DIRECT = "订单编号%s,%s为%s贡献了乐学易考推荐极差收益,推荐极差收益为%f。";
|
public static String RECOMMEND_SPECIAL_DIRECT = "订单编号%s,%s为%s贡献了乐学易考推荐极差收益,推荐极差收益为%f。";
|
||||||
/**
|
/**
|
||||||
* 拓展收益备注 -- 当前是第%d碰,共%d碰,订单编号%s,%s为%s贡献了拓展收益,计算业绩%f,拓展比例%f。
|
* 拓展收益备注 -- 当前是第%d碰,共%d碰,订单编号%s,%s为%s贡献了拓展收益,计算业绩%f,拓展比例%f。
|
||||||
*/
|
*/
|
||||||
// public static String EXPAND = "MSG_BONUS_003";
|
|
||||||
public static String EXPAND = "当前是第%d碰,共%d碰,订单编号%s,%s为%s贡献了拓展收益,计算业绩%f,拓展比例%f。";
|
public static String EXPAND = "当前是第%d碰,共%d碰,订单编号%s,%s为%s贡献了拓展收益,计算业绩%f,拓展比例%f。";
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 辅导收益备注 -- 当前是第%d代,共#代,订单编号%s,%s为%s贡献了辅导收益,计算业绩%f,辅导比例%f。
|
* 辅导收益备注 -- 当前是第%d代,共#代,订单编号%s,%s为%s贡献了辅导收益,计算业绩%f,辅导比例%f。
|
||||||
*/
|
*/
|
||||||
// public static String COACH = "MSG_BONUS_004";
|
|
||||||
public static String COACH = "当前是第%d代,共#代,订单编号%s,%s为%s贡献了辅导收益,计算业绩%f,辅导比例%f。";
|
public static String COACH = "当前是第%d代,共#代,订单编号%s,%s为%s贡献了辅导收益,计算业绩%f,辅导比例%f。";
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 辅导收益备注 -- 当前是第%d代,共#代,订单编号%s,%s为%s贡献了辅导收益,计算业绩%f,辅导比例%f。
|
* 辅导收益备注 -- 当前是第%d代,共#代,订单编号%s,%s为%s贡献了辅导收益,计算业绩%f,辅导比例%f。
|
||||||
*/
|
*/
|
||||||
// public static String COACH = "MSG_BONUS_004";
|
|
||||||
public static String RANGE_COACH = "当前是第%d代,共%d代,订单编号%s,%s为%s贡献了幸运收益,计算业绩%f,计算比例%f。";
|
public static String RANGE_COACH = "当前是第%d代,共%d代,订单编号%s,%s为%s贡献了幸运收益,计算业绩%f,计算比例%f。";
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 报单服务费收益备注 -- 订单编号%s,%s为%s贡献了报单服务费收益,计算业绩%f,报单服务费比例%f。
|
* 报单服务费收益备注 -- 订单编号%s,%s为%s贡献了报单服务费收益,计算业绩%f,报单服务费比例%f。
|
||||||
*/
|
*/
|
||||||
// public static String SERVICE = "MSG_BONUS_005";
|
|
||||||
public static String SERVICE = "订单编号%s,%s为%s贡献了报单服务费收益,计算业绩%f,报单服务费比例%f。";
|
public static String SERVICE = "订单编号%s,%s为%s贡献了报单服务费收益,计算业绩%f,报单服务费比例%f。";
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -50,55 +44,55 @@ public class BonusMsgConstants {
|
||||||
|
|
||||||
public static String MONTH_SERVICE = "获得%f月报单服务费收益,结算月%s。";
|
public static String MONTH_SERVICE = "获得%f月报单服务费收益,结算月%s。";
|
||||||
|
|
||||||
public static String RETAIL_BENEFIT_AVG_INCOME = "获得%f月福利平均收益,结算月%s。";
|
/**
|
||||||
|
* 月度分红平均收益
|
||||||
|
*/
|
||||||
|
public static String RETAIL_BENEFIT_AVG_INCOME = "获得 %f 月度分红福利平均收益,结算月%s。";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 月度分红加权收益
|
||||||
|
*/
|
||||||
|
public static String RETAIL_BENEFIT_INCOME = "获得 %f 月度分红福利加权收益,结算月%s。";
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 区域分红说明
|
* 区域分红说明
|
||||||
*/
|
*/
|
||||||
public static String RETAIL_AREA_INCOME = "订单编号%s,%s为%s贡献了区域分红,区域分红%f,收益县%s。";
|
public static String RETAIL_AREA_INCOME = "订单编号%s,%s为%s贡献了区域分红,区域分红%f,收益县%s。";
|
||||||
|
|
||||||
public static String RETAIL_BENEFIT_INCOME = "获得%f月福利加权收益,结算月%s。";
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 分红收益备注 -- %s获得分红收益%f。
|
* 分红收益备注 -- %s获得分红收益%f。
|
||||||
*/
|
*/
|
||||||
// public static String SHARE = "MSG_BONUS_008";
|
|
||||||
public static String SHARE = "%s获得福利收益%f。";
|
public static String SHARE = "%s获得福利收益%f。";
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* -- 订单编号%s,%s为%s贡献了海粉推荐收益,海粉推荐收益%f。
|
* -- 订单编号%s,%s为%s贡献了海粉推荐收益,海粉推荐收益%f。
|
||||||
*/
|
*/
|
||||||
// public static String HAI_FUN = "MSG_BONUS_009";
|
|
||||||
public static String HAI_FUN = "订单编号%s,%s为%s贡献了海粉推荐收益,海粉推荐收益%f。";
|
public static String HAI_FUN = "订单编号%s,%s为%s贡献了海粉推荐收益,海粉推荐收益%f。";
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 复购券收益备注 -- %s获得复购券均分收益%f。
|
* 复购券收益备注 -- %s获得复购券均分收益%f。
|
||||||
*/
|
*/
|
||||||
// public static String SHARE_COUPON = "MSG_BONUS_010";
|
|
||||||
public static String SHARE_COUPON = "%s获得复购券均分收益%f。";
|
public static String SHARE_COUPON = "%s获得复购券均分收益%f。";
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 复购券收益备注 -- %s获得店铺收益%f。
|
* 复购券收益备注 -- %s获得店铺收益%f。
|
||||||
*/
|
*/
|
||||||
// public static String STORE = "MSG_BONUS_011";
|
|
||||||
public static String STORE = "%s获得店铺收益%f。";
|
public static String STORE = "%s获得店铺收益%f。";
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 车奖积分收益备注 -- 获得车奖积分收益%f。
|
* 车奖积分收益备注 -- 获得车奖积分收益%f。
|
||||||
*/
|
*/
|
||||||
// public static String CAR_AWARD_POINTS = "MSG_BONUS_013";
|
|
||||||
public static String CAR_AWARD_POINTS = "获得车奖积分收益%f。";
|
public static String CAR_AWARD_POINTS = "获得车奖积分收益%f。";
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 嗨粉推荐收益备注 -- 订单编号%s,%s为%s贡献了嗨粉推荐收益,获得嗨粉推荐奖金%f。
|
* 嗨粉推荐收益备注 -- 订单编号%s,%s为%s贡献了嗨粉推荐收益,获得嗨粉推荐奖金%f。
|
||||||
*/
|
*/
|
||||||
// public static String HI_FUN = "MSG_BONUS_014";
|
|
||||||
public static String HI_FUN = "订单编号%s,%s为%s贡献了嗨粉推荐收益,获得嗨粉推荐奖金%f。";
|
public static String HI_FUN = "订单编号%s,%s为%s贡献了嗨粉推荐收益,获得嗨粉推荐奖金%f。";
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 复购拓展收益备注 -- 订单编号%s,%s为%s贡献了复购推荐收益,计算业绩%f,直推比例%f。
|
* 复购拓展收益备注 -- 订单编号%s,%s为%s贡献了复购推荐收益,计算业绩%f,直推比例%f。
|
||||||
*/
|
*/
|
||||||
// public static String REPURCHASE_PUSH = "MSG_BONUS_015";
|
|
||||||
public static String REPURCHASE_PUSH = "订单编号%s,%s为%s贡献了复购推荐收益,计算业绩%f,直推比例%f。";
|
public static String REPURCHASE_PUSH = "订单编号%s,%s为%s贡献了复购推荐收益,计算业绩%f,直推比例%f。";
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -154,24 +148,24 @@ public class BonusMsgConstants {
|
||||||
/**
|
/**
|
||||||
* 奖金重算 -- 只能重算7天内的奖金!
|
* 奖金重算 -- 只能重算7天内的奖金!
|
||||||
*/
|
*/
|
||||||
public static final String SETTLE_VALIDATE_DATE = "只能重算7天内的奖金!";
|
public static final String SETTLE_VALIDATE_DATE = "只能重算7天内的奖金!";
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 奖金重算 -- 只能公布近7天的奖金!
|
* 奖金重算 -- 只能公布近7天的奖金!
|
||||||
*/
|
*/
|
||||||
public static final String PUBLISH_VALIDATE_DATE = "只能公布近7天的奖金!";
|
public static final String PUBLISH_VALIDATE_DATE = "只能公布近7天的奖金!";
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 奖金重算 -- 只能不公布近昨天的奖金!
|
* 奖金重算 -- 只能不公布近昨天的奖金!
|
||||||
*/
|
*/
|
||||||
public static final String NO_PUBLISH_VALIDATE_DATE = "只能不公布近昨天的奖金!";
|
public static final String NO_PUBLISH_VALIDATE_DATE = "只能不公布近昨天的奖金!";
|
||||||
/**
|
/**
|
||||||
* 奖金发放 -- 只能发放7天以外的奖金!
|
* 奖金发放 -- 只能发放7天以外的奖金!
|
||||||
*/
|
*/
|
||||||
public static final String GRANT_VALIDATE_DATE = "只能发放7天以外的奖金!";
|
public static final String GRANT_VALIDATE_DATE = "只能发放7天以外的奖金!";
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 奖金发放 -- 只能提现14天以外的奖金!
|
* 奖金发放 -- 只能提现14天以外的奖金!
|
||||||
*/
|
*/
|
||||||
public static final String WITHDRAW_VALIDATE_DATE = "只能提现14天以外的奖金!";
|
public static final String WITHDRAW_VALIDATE_DATE = "只能提现14天以外的奖金!";
|
||||||
}
|
}
|
||||||
|
|
|
@ -33,6 +33,7 @@ public enum EAwards {
|
||||||
* 蓝宝
|
* 蓝宝
|
||||||
*/
|
*/
|
||||||
HIGH_MANAGER(4, 15, "三级", 0, EnumsPrefixConstants.AWARDS + 15),
|
HIGH_MANAGER(4, 15, "三级", 0, EnumsPrefixConstants.AWARDS + 15),
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 钻石
|
* 钻石
|
||||||
*/
|
*/
|
||||||
|
@ -45,6 +46,7 @@ public enum EAwards {
|
||||||
* 绿钻
|
* 绿钻
|
||||||
*/
|
*/
|
||||||
HIGH_CHIEF(7, 30, "六级", 0, EnumsPrefixConstants.AWARDS + 30),
|
HIGH_CHIEF(7, 30, "六级", 0, EnumsPrefixConstants.AWARDS + 30),
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 星耀蓝钻
|
* 星耀蓝钻
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -107,11 +107,11 @@ public enum EBonusItems {
|
||||||
* 复购级差收益(新) -- 月结,月奖
|
* 复购级差收益(新) -- 月结,月奖
|
||||||
*/
|
*/
|
||||||
RETAIL_MONTH_REPURCHASE_INCOME(31, "复购级差收益", 0, EnumsPrefixConstants.BONUS_ITEMS + 31),
|
RETAIL_MONTH_REPURCHASE_INCOME(31, "复购级差收益", 0, EnumsPrefixConstants.BONUS_ITEMS + 31),
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 培育津贴(新) -- 月结,月奖
|
* 培育津贴(新) -- 月结,月奖
|
||||||
*/
|
*/
|
||||||
RETAIL_COACHING_INCOME(32, "培育津贴", 0, EnumsPrefixConstants.BONUS_ITEMS + 32),
|
RETAIL_COACHING_INCOME(32, "培育津贴", 0, EnumsPrefixConstants.BONUS_ITEMS + 32),
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 月度分红 - 平均收益(福利平均收益) -- 月结,月奖
|
* 月度分红 - 平均收益(福利平均收益) -- 月结,月奖
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -55,7 +55,6 @@ public enum EGrade {
|
||||||
*/
|
*/
|
||||||
S_VIP(6, 70, "V5", 0, EnumsPrefixConstants.GRADE + "70", MemberFrameworkConstants.S_VIP),
|
S_VIP(6, 70, "V5", 0, EnumsPrefixConstants.GRADE + "70", MemberFrameworkConstants.S_VIP),
|
||||||
|
|
||||||
|
|
||||||
;
|
;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -12,12 +12,7 @@ import lombok.EqualsAndHashCode;
|
||||||
import lombok.experimental.Accessors;
|
import lombok.experimental.Accessors;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* <p>
|
|
||||||
* 奖金扣项配置
|
* 奖金扣项配置
|
||||||
* </p>
|
|
||||||
*
|
|
||||||
* @author hzs
|
|
||||||
* @since 2022-11-04
|
|
||||||
*/
|
*/
|
||||||
@Data
|
@Data
|
||||||
@EqualsAndHashCode(callSuper = true)
|
@EqualsAndHashCode(callSuper = true)
|
||||||
|
|
|
@ -254,13 +254,13 @@ public class CuMemberBonus extends BaseEntity {
|
||||||
private BigDecimal retailMonthRepurchaseIncome;
|
private BigDecimal retailMonthRepurchaseIncome;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 新零售福利平均收益
|
* 新零售福利分红平均收益
|
||||||
*/
|
*/
|
||||||
@TableField("RETAIL_BENEFIT_AVG_INCOME")
|
@TableField("RETAIL_BENEFIT_AVG_INCOME")
|
||||||
private BigDecimal retailBenefitAvgIncome;
|
private BigDecimal retailBenefitAvgIncome;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 新零售福利加权收益 修改为福利分红收益
|
* 新零售福利分红加权收益
|
||||||
*/
|
*/
|
||||||
@TableField("RETAIL_BENEFIT_INCOME")
|
@TableField("RETAIL_BENEFIT_INCOME")
|
||||||
private BigDecimal retailBenefitIncome;
|
private BigDecimal retailBenefitIncome;
|
||||||
|
|
|
@ -198,25 +198,25 @@ public class BdAwards extends BaseEntity {
|
||||||
private BigDecimal shareTotalCheck;
|
private BigDecimal shareTotalCheck;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 福利级差比例
|
* 福利级差比例 -- 月度级差
|
||||||
*/
|
*/
|
||||||
@TableField("RANGE_RATIO")
|
@TableField("RANGE_RATIO")
|
||||||
private BigDecimal rangeRatio;
|
private BigDecimal rangeRatio;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 复购级差比例
|
* 复购级差比例 -- 月度复购级差
|
||||||
*/
|
*/
|
||||||
@TableField("MONTH_REPURCHASE_RATIO")
|
@TableField("MONTH_REPURCHASE_RATIO")
|
||||||
private BigDecimal monthRepurchaseRatio;
|
private BigDecimal monthRepurchaseRatio;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 福利平均比例
|
* 福利平均比例 -- 月度分红平均
|
||||||
*/
|
*/
|
||||||
@TableField("BENEFIT_AVG_RATIO")
|
@TableField("BENEFIT_AVG_RATIO")
|
||||||
private BigDecimal benefitAvgRatio;
|
private BigDecimal benefitAvgRatio;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 福利加权比例
|
* 福利加权比例 -- 月度分红加权
|
||||||
*/
|
*/
|
||||||
@TableField("BENEFIT_SHARE_RATIO")
|
@TableField("BENEFIT_SHARE_RATIO")
|
||||||
private BigDecimal benefitShareRatio;
|
private BigDecimal benefitShareRatio;
|
||||||
|
|
Loading…
Reference in New Issue