Merge remote-tracking branch 'origin/dev' into dev
This commit is contained in:
commit
c274fba09e
|
@ -42,7 +42,7 @@ public class CuMemberTreeServiceImpl extends ServiceImpl<CuMemberTreeMapper, CuM
|
||||||
baseMapper.createCuMemberTreeParentIndex(settleTableName);
|
baseMapper.createCuMemberTreeParentIndex(settleTableName);
|
||||||
baseMapper.createCuMemberTreePlaceIndex(settleTableName);
|
baseMapper.createCuMemberTreePlaceIndex(settleTableName);
|
||||||
}
|
}
|
||||||
// 创建新零售极差结算记录表
|
// 创建新零售级差结算记录表
|
||||||
String retailRangeTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE + period;
|
String retailRangeTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE + period;
|
||||||
number = baseMapper.queryExistOracleTable(retailRangeTableName);
|
number = baseMapper.queryExistOracleTable(retailRangeTableName);
|
||||||
if (number == null || number <= 0) {
|
if (number == null || number <= 0) {
|
||||||
|
|
|
@ -204,8 +204,10 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
||||||
// 当天的撤单
|
// 当天的撤单
|
||||||
List<CuMemberRetailRangeExt> memberRetailRangeExtList;
|
List<CuMemberRetailRangeExt> memberRetailRangeExtList;
|
||||||
String rangeTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE + beforePeriod;
|
String rangeTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE + beforePeriod;
|
||||||
|
// 是否当天
|
||||||
|
boolean isSecond = DateUtils.isSameDay(saOrderExt.getPayTime(), DateUtils.currentDate());
|
||||||
|
|
||||||
if (DateUtils.isSameDay(saOrderExt.getPayTime(), DateUtils.currentDate())) {
|
if (isSecond) {
|
||||||
// 当天撤单
|
// 当天撤单
|
||||||
// 实时网体查询血缘伞上会员,更新秒结表等级、奖衔
|
// 实时网体查询血缘伞上会员,更新秒结表等级、奖衔
|
||||||
iCuMemberRetailRangeService.mergeMemberRetailGradeByMember(secondRangeTableName, saOrderExt.getPkMember(), EYesNo.YES.getIntValue());
|
iCuMemberRetailRangeService.mergeMemberRetailGradeByMember(secondRangeTableName, saOrderExt.getPkMember(), EYesNo.YES.getIntValue());
|
||||||
|
@ -274,9 +276,12 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
||||||
sourceMemberRangeExt.setNewConsumePv(ComputeUtil.computeSubtract(sourceMemberRangeExt.getNewConsumePv(), orderAchieve));
|
sourceMemberRangeExt.setNewConsumePv(ComputeUtil.computeSubtract(sourceMemberRangeExt.getNewConsumePv(), orderAchieve));
|
||||||
sourceMemberRangeExt.setConsumePv(ComputeUtil.computeSubtract(sourceMemberRangeExt.getConsumePv(), orderAchieve));
|
sourceMemberRangeExt.setConsumePv(ComputeUtil.computeSubtract(sourceMemberRangeExt.getConsumePv(), orderAchieve));
|
||||||
sourceMemberRangeExt.setMonthConsumePv(ComputeUtil.computeSubtract(sourceMemberRangeExt.getMonthConsumePv(), orderAchieve));
|
sourceMemberRangeExt.setMonthConsumePv(ComputeUtil.computeSubtract(sourceMemberRangeExt.getMonthConsumePv(), orderAchieve));
|
||||||
|
if (isSecond) {
|
||||||
|
// 当天
|
||||||
// 累计盒数、业绩,不管激活不激活都处理,兼容不激活判断显示有问题
|
// 累计盒数、业绩,不管激活不激活都处理,兼容不激活判断显示有问题
|
||||||
sourceMemberRangeExt.setAllNewBoxNum(sourceMemberRangeExt.getAllNewBoxNum().subtract(boxNum));
|
sourceMemberRangeExt.setAllNewBoxNum(sourceMemberRangeExt.getAllNewBoxNum().subtract(boxNum));
|
||||||
sourceMemberRangeExt.setAllNewConsumePv(sourceMemberRangeExt.getAllNewConsumePv().subtract(orderAchieve));
|
sourceMemberRangeExt.setAllNewConsumePv(sourceMemberRangeExt.getAllNewConsumePv().subtract(orderAchieve));
|
||||||
|
}
|
||||||
|
|
||||||
// 会员等级map
|
// 会员等级map
|
||||||
Map<String, CuMemberGrade> cuMemberGradeMap = new HashMap<>();
|
Map<String, CuMemberGrade> cuMemberGradeMap = new HashMap<>();
|
||||||
|
@ -289,7 +294,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
||||||
cuMemberGradeMap, cuMemberAwardsMap, cuMemberShareAwardsMap, sourceMemberRangeExt);
|
cuMemberGradeMap, cuMemberAwardsMap, cuMemberShareAwardsMap, sourceMemberRangeExt);
|
||||||
// 计算团队业绩、盒数,计算等级、奖衔
|
// 计算团队业绩、盒数,计算等级、奖衔
|
||||||
List<CuMemberRetailRangeExt> cuMemberRetailRangeExtList = calculateRetailBackRangeGradeAwards(currentPeriod, memberRangeExtMap, rangeTableName, saOrderExt, retailTeamGradeMap, retailAwardsMap,
|
List<CuMemberRetailRangeExt> cuMemberRetailRangeExtList = calculateRetailBackRangeGradeAwards(currentPeriod, memberRangeExtMap, rangeTableName, saOrderExt, retailTeamGradeMap, retailAwardsMap,
|
||||||
secondRangeTableName, boxNum, cuMemberGradeMap, cuMemberAwardsMap, cuMemberShareAwardsMap);
|
secondRangeTableName, boxNum, cuMemberGradeMap, cuMemberAwardsMap, cuMemberShareAwardsMap, isSecond);
|
||||||
cuMemberRetailRangeExtList.add(sourceMemberRangeExt);
|
cuMemberRetailRangeExtList.add(sourceMemberRangeExt);
|
||||||
|
|
||||||
// 查询期间的等级
|
// 查询期间的等级
|
||||||
|
@ -532,6 +537,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
||||||
sourceMemberRangeExt.setNewConsumePv(ComputeUtil.computeAdd(sourceMemberRangeExt.getNewConsumePv(), orderAchieve));
|
sourceMemberRangeExt.setNewConsumePv(ComputeUtil.computeAdd(sourceMemberRangeExt.getNewConsumePv(), orderAchieve));
|
||||||
sourceMemberRangeExt.setConsumePv(ComputeUtil.computeAdd(sourceMemberRangeExt.getConsumePv(), orderAchieve));
|
sourceMemberRangeExt.setConsumePv(ComputeUtil.computeAdd(sourceMemberRangeExt.getConsumePv(), orderAchieve));
|
||||||
sourceMemberRangeExt.setMonthConsumePv(ComputeUtil.computeAdd(sourceMemberRangeExt.getMonthConsumePv(), orderAchieve));
|
sourceMemberRangeExt.setMonthConsumePv(ComputeUtil.computeAdd(sourceMemberRangeExt.getMonthConsumePv(), orderAchieve));
|
||||||
|
|
||||||
// 计算自己等级、奖衔等
|
// 计算自己等级、奖衔等
|
||||||
calculateGradeAwards(period, memberRangeExtMap, rangeTableName, saOrderExt, retailTeamGradeMap, retailAwardsMap,
|
calculateGradeAwards(period, memberRangeExtMap, rangeTableName, saOrderExt, retailTeamGradeMap, retailAwardsMap,
|
||||||
null, cuMemberGradeList, cuMemberAwardsList, sourceMemberRangeExt, activateMap);
|
null, cuMemberGradeList, cuMemberAwardsList, sourceMemberRangeExt, activateMap);
|
||||||
|
@ -546,13 +552,15 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
||||||
) {
|
) {
|
||||||
// 注册或升级订单并且存在盒数产品,才有 直推级差收益 和 平级收益
|
// 注册或升级订单并且存在盒数产品,才有 直推级差收益 和 平级收益
|
||||||
for (SaOrderWaresExt saOrderItems : saOrderExt.getOrderWaresExtList()) {
|
for (SaOrderWaresExt saOrderItems : saOrderExt.getOrderWaresExtList()) {
|
||||||
// 直推级差 + 平级收益
|
if (RetailConstants.ALL_BOX_WARES_LIST.contains(saOrderItems.getWaresCode())) {
|
||||||
|
// 盒数商品 计算 直推级差 + 平级收益
|
||||||
cuMemberBonusRangeList.addAll(calculateRetailRangeBonus(memberRangeExtMap, cuMemberBonusMap, gradeMap, bonusConfigDTO, period, saOrderItems, saOrderExt));
|
cuMemberBonusRangeList.addAll(calculateRetailRangeBonus(memberRangeExtMap, cuMemberBonusMap, gradeMap, bonusConfigDTO, period, saOrderItems, saOrderExt));
|
||||||
|
}
|
||||||
|
|
||||||
// 计算完奖金算等级
|
// 计算完奖金算等级
|
||||||
if (EOrderType.RETAIL_REGISTER.getValue() == saOrderExt.getOrderType()
|
// if (EOrderType.RETAIL_REGISTER.getValue() == saOrderExt.getOrderType()
|
||||||
|| EOrderType.RETAIL_UPGRADE.getValue() == saOrderExt.getOrderType()) {
|
// || EOrderType.RETAIL_UPGRADE.getValue() == saOrderExt.getOrderType()) {
|
||||||
// 订单存在升级记录
|
// // 订单存在升级记录
|
||||||
if (memberLevelMap.containsKey(saOrderExt.getPkId())) {
|
if (memberLevelMap.containsKey(saOrderExt.getPkId())) {
|
||||||
CuMemberLevel cuMemberLevel = memberLevelMap.get(saOrderExt.getPkId());
|
CuMemberLevel cuMemberLevel = memberLevelMap.get(saOrderExt.getPkId());
|
||||||
if (gradeIdMap.containsKey(cuMemberLevel.getNewLevel())) {
|
if (gradeIdMap.containsKey(cuMemberLevel.getNewLevel())) {
|
||||||
|
@ -564,7 +572,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
// }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -631,8 +639,19 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
||||||
}
|
}
|
||||||
|
|
||||||
// 累计盒数、业绩,不管激活不激活都处理,兼容不激活判断显示有问题
|
// 累计盒数、业绩,不管激活不激活都处理,兼容不激活判断显示有问题
|
||||||
|
if (null != secondRangeTableName) {
|
||||||
|
// 秒结处理
|
||||||
targetMemberRangeExt.setAllTeamNewBoxNum(targetMemberRangeExt.getAllTeamNewBoxNum().add(boxNum));
|
targetMemberRangeExt.setAllTeamNewBoxNum(targetMemberRangeExt.getAllTeamNewBoxNum().add(boxNum));
|
||||||
targetMemberRangeExt.setAllTeamNewPv(targetMemberRangeExt.getAllTeamNewPv().add(orderAchieve));
|
targetMemberRangeExt.setAllTeamNewPv(targetMemberRangeExt.getAllTeamNewPv().add(orderAchieve));
|
||||||
|
} else {
|
||||||
|
// 日结处理
|
||||||
|
targetMemberRangeExt.setAllTeamNewBoxNum(targetMemberRangeExt.getAllTeamNewBoxNum().add(boxNum));
|
||||||
|
targetMemberRangeExt.setAllTeamBoxNum(targetMemberRangeExt.getAllTeamBoxNum().add(boxNum));
|
||||||
|
targetMemberRangeExt.setAllTeamMonthBoxNum(targetMemberRangeExt.getAllTeamMonthBoxNum().add(boxNum));
|
||||||
|
targetMemberRangeExt.setAllTeamNewPv(targetMemberRangeExt.getAllTeamNewPv().add(orderAchieve));
|
||||||
|
targetMemberRangeExt.setAllTeamConsumePv(targetMemberRangeExt.getAllTeamConsumePv().add(orderAchieve));
|
||||||
|
targetMemberRangeExt.setAllTeamMonthPv(targetMemberRangeExt.getAllTeamMonthPv().add(orderAchieve));
|
||||||
|
}
|
||||||
|
|
||||||
// 激活的账号才能累计业绩和盒数(有注册、升级订单)
|
// 激活的账号才能累计业绩和盒数(有注册、升级订单)
|
||||||
if (targetMemberRangeExt.getEnableStatus() == EYesNo.YES.getIntValue()) {
|
if (targetMemberRangeExt.getEnableStatus() == EYesNo.YES.getIntValue()) {
|
||||||
|
@ -658,7 +677,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 计算等级、奖衔
|
* 计算等级、奖衔 -- 日结、秒结
|
||||||
*/
|
*/
|
||||||
private void calculateGradeAwards(Integer period, Map<Long, CuMemberRetailRangeExt> memberRangeExtMap, String rangeTableName,
|
private void calculateGradeAwards(Integer period, Map<Long, CuMemberRetailRangeExt> memberRangeExtMap, String rangeTableName,
|
||||||
SaOrderExt saOrderExt, Map<Integer, BdGrade> retailTeamGradeMap, Map<Integer, BdAwards> retailAwardsMap,
|
SaOrderExt saOrderExt, Map<Integer, BdGrade> retailTeamGradeMap, Map<Integer, BdAwards> retailAwardsMap,
|
||||||
|
@ -674,7 +693,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
||||||
for (Integer gradeValue : retailTeamGradeMap.keySet()) {
|
for (Integer gradeValue : retailTeamGradeMap.keySet()) {
|
||||||
BdGrade bdGrade = retailTeamGradeMap.get(gradeValue);
|
BdGrade bdGrade = retailTeamGradeMap.get(gradeValue);
|
||||||
|
|
||||||
// 如果等级值 大于 当前会员等级值 并且 等级要求累计盒数 小于等于 团队累计盒数 + 累计消费盒数,则可以进行升级
|
// 如果等级值 大于 当前会员等级值 并且 等级要求累计盒数 小于等于 团队累计盒数 + 累计消费盒数 + 大区注水 + 小区注水,则可以进行升级
|
||||||
if (bdGrade.getGradeValue() > targetMemberRangeExt.getGradeValue()
|
if (bdGrade.getGradeValue() > targetMemberRangeExt.getGradeValue()
|
||||||
&& bdGrade.getBoxTotal().compareTo(
|
&& bdGrade.getBoxTotal().compareTo(
|
||||||
targetMemberRangeExt.getTeamBoxNum().add(targetMemberRangeExt.getConsumeBoxNum()).add(targetMemberRangeExt.getBigBoxNum()).add(targetMemberRangeExt.getSmallBoxNum())
|
targetMemberRangeExt.getTeamBoxNum().add(targetMemberRangeExt.getConsumeBoxNum()).add(targetMemberRangeExt.getBigBoxNum()).add(targetMemberRangeExt.getSmallBoxNum())
|
||||||
|
@ -682,7 +701,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
||||||
) {
|
) {
|
||||||
// 验证小区,计算小区累计盒数 查询伞下会员
|
// 验证小区,计算小区累计盒数 查询伞下会员
|
||||||
List<CuMemberRetailRangeExt> cuMemberRangeExtList;
|
List<CuMemberRetailRangeExt> cuMemberRangeExtList;
|
||||||
if (secondRangeTableName != null) {
|
if (null != secondRangeTableName) {
|
||||||
// 会员表 关联 秒结表 和 昨日结算表,查询订单会员直推数据
|
// 会员表 关联 秒结表 和 昨日结算表,查询订单会员直推数据
|
||||||
cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberSecondRangeExtByParent(rangeTableName, secondRangeTableName, targetMemberRangeExt.getPkMember());
|
cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberSecondRangeExtByParent(rangeTableName, secondRangeTableName, targetMemberRangeExt.getPkMember());
|
||||||
} else {
|
} else {
|
||||||
|
@ -707,7 +726,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
||||||
cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember());
|
cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember());
|
||||||
}
|
}
|
||||||
// 伞下团队累计盒数 + 自己消费盒数
|
// 伞下团队累计盒数 + 自己消费盒数
|
||||||
BigDecimal areaBoxNum = cuMemberRetailRangeExt.getTeamBoxNum().add(cuMemberRetailRangeExt.getConsumeBoxNum());
|
BigDecimal areaBoxNum = cuMemberRetailRangeExt.getAllTeamBoxNum().add(cuMemberRetailRangeExt.getConsumeBoxNum());
|
||||||
if (areaBoxNum.compareTo(bigBoxNum) > 0) {
|
if (areaBoxNum.compareTo(bigBoxNum) > 0) {
|
||||||
// 实际订单累计盒数 大于 累计消费盒数,实际订单累计盒数为大区
|
// 实际订单累计盒数 大于 累计消费盒数,实际订单累计盒数为大区
|
||||||
bigBoxNum = areaBoxNum;
|
bigBoxNum = areaBoxNum;
|
||||||
|
@ -715,7 +734,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
||||||
}
|
}
|
||||||
|
|
||||||
// 小区盒数(团队累计盒数 + 自消费累计盒数 + 两个注水虚拟盒数 - 大市场盒数)
|
// 小区盒数(团队累计盒数 + 自消费累计盒数 + 两个注水虚拟盒数 - 大市场盒数)
|
||||||
BigDecimal smallBoxNum = targetMemberRangeExt.getTeamBoxNum().add(targetMemberRangeExt.getConsumeBoxNum()).add(targetMemberRangeExt.getBigBoxNum()).add(targetMemberRangeExt.getSmallBoxNum()).subtract(bigBoxNum);
|
BigDecimal smallBoxNum = targetMemberRangeExt.getAllTeamBoxNum().add(targetMemberRangeExt.getConsumeBoxNum()).add(targetMemberRangeExt.getBigBoxNum()).add(targetMemberRangeExt.getSmallBoxNum()).subtract(bigBoxNum);
|
||||||
if (smallBoxNum.compareTo(bdGrade.getBoxSmallTotal()) >= 0) {
|
if (smallBoxNum.compareTo(bdGrade.getBoxSmallTotal()) >= 0) {
|
||||||
// 小区盒数 大于等于 升级小区盒数
|
// 小区盒数 大于等于 升级小区盒数
|
||||||
CuMemberGrade cuMemberGrade = getCuMemberGrade(period, targetMemberRangeExt, bdGrade);
|
CuMemberGrade cuMemberGrade = getCuMemberGrade(period, targetMemberRangeExt, bdGrade);
|
||||||
|
@ -770,7 +789,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
||||||
cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember());
|
cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember());
|
||||||
}
|
}
|
||||||
// 月累计业绩 = 本人月消费业绩 + 团队月消费业绩
|
// 月累计业绩 = 本人月消费业绩 + 团队月消费业绩
|
||||||
BigDecimal consumePv = ComputeUtil.computeAdd(cuMemberRetailRangeExt.getMonthConsumePv(), cuMemberRetailRangeExt.getTeamMonthPv());
|
BigDecimal consumePv = ComputeUtil.computeAdd(cuMemberRetailRangeExt.getMonthConsumePv(), cuMemberRetailRangeExt.getAllTeamMonthPv());
|
||||||
if (ComputeUtil.compareGreaterThan(consumePv, consumeBigPv)) {
|
if (ComputeUtil.compareGreaterThan(consumePv, consumeBigPv)) {
|
||||||
// 月累计业绩 > 大区业绩,则月累计就成为大区了
|
// 月累计业绩 > 大区业绩,则月累计就成为大区了
|
||||||
consumeBigPv = consumePv;
|
consumeBigPv = consumePv;
|
||||||
|
@ -801,7 +820,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
||||||
if (memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) {
|
if (memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) {
|
||||||
cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember());
|
cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember());
|
||||||
}
|
}
|
||||||
if (ComputeUtil.compareValue(ComputeUtil.computeAdd(cuMemberRetailRangeExt.getMonthConsumePv(), cuMemberRetailRangeExt.getTeamMonthPv()), bdAwards.getShareCommunityCheck())) {
|
if (ComputeUtil.compareValue(ComputeUtil.computeAdd(cuMemberRetailRangeExt.getMonthConsumePv(), cuMemberRetailRangeExt.getAllTeamMonthPv()), bdAwards.getShareCommunityCheck())) {
|
||||||
// 本人月消费业绩 + 团队月消费业绩 >= 小区考核业绩,则满足条件小部门 +1
|
// 本人月消费业绩 + 团队月消费业绩 >= 小区考核业绩,则满足条件小部门 +1
|
||||||
enoughNum += 1;
|
enoughNum += 1;
|
||||||
}
|
}
|
||||||
|
@ -822,11 +841,12 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 计算团队极差奖衔
|
* 计算团队极差奖衔 -- 退单秒结
|
||||||
*/
|
*/
|
||||||
public List<CuMemberRetailRangeExt> calculateRetailBackRangeGradeAwards(Integer period, Map<Long, CuMemberRetailRangeExt> memberRangeExtMap, String rangeTableName, SaOrderExt saOrderExt,
|
public List<CuMemberRetailRangeExt> calculateRetailBackRangeGradeAwards(Integer period, Map<Long, CuMemberRetailRangeExt> memberRangeExtMap, String rangeTableName, SaOrderExt saOrderExt,
|
||||||
Map<Integer, BdGrade> retailTeamGradeMap, Map<Integer, BdAwards> retailAwardsMap, String secondRangeTableName, BigDecimal boxNum,
|
Map<Integer, BdGrade> retailTeamGradeMap, Map<Integer, BdAwards> retailAwardsMap, String secondRangeTableName, BigDecimal boxNum,
|
||||||
Map<String, CuMemberGrade> cuMemberGradeMap, Map<String, CuMemberAwards> cuMemberAwardsMap, Map<String, CuMemberAwards> cuMemberShareAwardsMap) {
|
Map<String, CuMemberGrade> cuMemberGradeMap, Map<String, CuMemberAwards> cuMemberAwardsMap, Map<String, CuMemberAwards> cuMemberShareAwardsMap,
|
||||||
|
boolean isSecond) {
|
||||||
List<CuMemberRetailRangeExt> cuMemberRetailRangeExtList = new ArrayList<>();
|
List<CuMemberRetailRangeExt> cuMemberRetailRangeExtList = new ArrayList<>();
|
||||||
// 订单会员
|
// 订单会员
|
||||||
CuMemberRetailRangeExt sourceMemberRangeExt = memberRangeExtMap.get(saOrderExt.getPkMember());
|
CuMemberRetailRangeExt sourceMemberRangeExt = memberRangeExtMap.get(saOrderExt.getPkMember());
|
||||||
|
@ -837,8 +857,19 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
||||||
BigDecimal orderAmount = saOrderExt.getOrderAmount();
|
BigDecimal orderAmount = saOrderExt.getOrderAmount();
|
||||||
while (targetMemberRangeExt != null) {
|
while (targetMemberRangeExt != null) {
|
||||||
// 累计盒数、业绩,不管激活不激活都处理,兼容不激活判断显示有问题
|
// 累计盒数、业绩,不管激活不激活都处理,兼容不激活判断显示有问题
|
||||||
targetMemberRangeExt.setAllTeamNewBoxNum(targetMemberRangeExt.getAllTeamNewBoxNum().subtract(boxNum));
|
if (isSecond) {
|
||||||
targetMemberRangeExt.setAllTeamNewPv(targetMemberRangeExt.getAllTeamNewPv().subtract(orderAchieve));
|
// 当天,秒结处理
|
||||||
|
targetMemberRangeExt.setAllTeamNewBoxNum(targetMemberRangeExt.getAllTeamNewBoxNum().add(boxNum));
|
||||||
|
targetMemberRangeExt.setAllTeamNewPv(targetMemberRangeExt.getAllTeamNewPv().add(orderAchieve));
|
||||||
|
} else {
|
||||||
|
// 非当天,日结处理
|
||||||
|
targetMemberRangeExt.setAllTeamNewBoxNum(targetMemberRangeExt.getAllTeamNewBoxNum().add(boxNum));
|
||||||
|
targetMemberRangeExt.setAllTeamBoxNum(targetMemberRangeExt.getAllTeamBoxNum().add(boxNum));
|
||||||
|
targetMemberRangeExt.setAllTeamMonthBoxNum(targetMemberRangeExt.getAllTeamMonthBoxNum().add(boxNum));
|
||||||
|
targetMemberRangeExt.setAllTeamNewPv(targetMemberRangeExt.getAllTeamNewPv().add(orderAchieve));
|
||||||
|
targetMemberRangeExt.setAllTeamConsumePv(targetMemberRangeExt.getAllTeamConsumePv().add(orderAchieve));
|
||||||
|
targetMemberRangeExt.setAllTeamMonthPv(targetMemberRangeExt.getAllTeamMonthPv().add(orderAchieve));
|
||||||
|
}
|
||||||
|
|
||||||
// 激活的账号才能累计业绩和盒数(有注册、升级订单)
|
// 激活的账号才能累计业绩和盒数(有注册、升级订单)
|
||||||
if (targetMemberRangeExt.getEnableStatus() == EYesNo.YES.getIntValue()) {
|
if (targetMemberRangeExt.getEnableStatus() == EYesNo.YES.getIntValue()) {
|
||||||
|
@ -901,7 +932,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
||||||
cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember());
|
cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember());
|
||||||
}
|
}
|
||||||
// 伞下团队累计盒数 + 自己消费盒数
|
// 伞下团队累计盒数 + 自己消费盒数
|
||||||
BigDecimal areaBoxNum = cuMemberRetailRangeExt.getTeamBoxNum().add(cuMemberRetailRangeExt.getConsumeBoxNum());
|
BigDecimal areaBoxNum = cuMemberRetailRangeExt.getAllTeamBoxNum().add(cuMemberRetailRangeExt.getConsumeBoxNum());
|
||||||
if (areaBoxNum.compareTo(bigBoxNum) > 0) {
|
if (areaBoxNum.compareTo(bigBoxNum) > 0) {
|
||||||
// 实际订单累计盒数 大于 累计消费盒数,实际订单累计盒数为大区
|
// 实际订单累计盒数 大于 累计消费盒数,实际订单累计盒数为大区
|
||||||
bigBoxNum = areaBoxNum;
|
bigBoxNum = areaBoxNum;
|
||||||
|
@ -909,7 +940,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
||||||
}
|
}
|
||||||
|
|
||||||
// 小区盒数(团队累计盒数 + 自消费累计盒数 + 两个注水虚拟盒数 - 大市场盒数)
|
// 小区盒数(团队累计盒数 + 自消费累计盒数 + 两个注水虚拟盒数 - 大市场盒数)
|
||||||
BigDecimal smallBoxNum = targetMemberRangeExt.getTeamBoxNum().add(targetMemberRangeExt.getConsumeBoxNum()).add(targetMemberRangeExt.getBigBoxNum()).add(targetMemberRangeExt.getSmallBoxNum()).subtract(bigBoxNum);
|
BigDecimal smallBoxNum = targetMemberRangeExt.getAllTeamBoxNum().add(targetMemberRangeExt.getConsumeBoxNum()).add(targetMemberRangeExt.getBigBoxNum()).add(targetMemberRangeExt.getSmallBoxNum()).subtract(bigBoxNum);
|
||||||
if (smallBoxNum.compareTo(bdGrade.getBoxSmallTotal()) >= 0) {
|
if (smallBoxNum.compareTo(bdGrade.getBoxSmallTotal()) >= 0) {
|
||||||
// 小区盒数 大于等于 升级小区盒数
|
// 小区盒数 大于等于 升级小区盒数
|
||||||
CuMemberGrade cuMemberGrade = getCuMemberGrade(period, targetMemberRangeExt, bdGrade);
|
CuMemberGrade cuMemberGrade = getCuMemberGrade(period, targetMemberRangeExt, bdGrade);
|
||||||
|
@ -965,7 +996,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
||||||
cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember());
|
cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember());
|
||||||
}
|
}
|
||||||
// 月累计业绩 = 本人月消费业绩 + 团队月消费业绩
|
// 月累计业绩 = 本人月消费业绩 + 团队月消费业绩
|
||||||
BigDecimal consumePv = ComputeUtil.computeAdd(cuMemberRetailRangeExt.getMonthConsumePv(), cuMemberRetailRangeExt.getTeamMonthPv());
|
BigDecimal consumePv = ComputeUtil.computeAdd(cuMemberRetailRangeExt.getMonthConsumePv(), cuMemberRetailRangeExt.getAllTeamMonthPv());
|
||||||
if (ComputeUtil.compareGreaterThan(consumePv, consumeBigPv)) {
|
if (ComputeUtil.compareGreaterThan(consumePv, consumeBigPv)) {
|
||||||
// 月累计业绩 > 大区业绩,则月累计就成为大区了
|
// 月累计业绩 > 大区业绩,则月累计就成为大区了
|
||||||
consumeBigPv = consumePv;
|
consumeBigPv = consumePv;
|
||||||
|
@ -995,7 +1026,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
||||||
if (memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) {
|
if (memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) {
|
||||||
cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember());
|
cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember());
|
||||||
}
|
}
|
||||||
if (ComputeUtil.compareValue(ComputeUtil.computeAdd(cuMemberRetailRangeExt.getMonthConsumePv(), cuMemberRetailRangeExt.getTeamMonthPv()), bdAwards.getShareCommunityCheck())) {
|
if (ComputeUtil.compareValue(ComputeUtil.computeAdd(cuMemberRetailRangeExt.getMonthConsumePv(), cuMemberRetailRangeExt.getAllTeamMonthPv()), bdAwards.getShareCommunityCheck())) {
|
||||||
// 本人月消费业绩 + 团队月消费业绩 >= 小区考核业绩,则满足条件小部门 +1
|
// 本人月消费业绩 + 团队月消费业绩 >= 小区考核业绩,则满足条件小部门 +1
|
||||||
enoughNum += 1;
|
enoughNum += 1;
|
||||||
}
|
}
|
||||||
|
@ -1374,9 +1405,16 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
||||||
} else if (EOrderType.RETAIL_REPURCHASE.getValue() == saOrder.getOrderType()) {
|
} else if (EOrderType.RETAIL_REPURCHASE.getValue() == saOrder.getOrderType()) {
|
||||||
// 复购订单, 区域收益 = 复购区域分红 * 商品数量
|
// 复购订单, 区域收益 = 复购区域分红 * 商品数量
|
||||||
for (SaOrderWaresExt saOrderWaresExt : saOrder.getOrderWaresExtList()) {
|
for (SaOrderWaresExt saOrderWaresExt : saOrder.getOrderWaresExtList()) {
|
||||||
|
if (ERatioType.VALUE.getValue() == saOrderWaresExt.getAreaIncomeType()) {
|
||||||
|
// 按比值处理
|
||||||
benefitIncome = benefitIncome.add(saOrderWaresExt.getAreaIncome().multiply(new BigDecimal(saOrderWaresExt.getWaresQuantity())));
|
benefitIncome = benefitIncome.add(saOrderWaresExt.getAreaIncome().multiply(new BigDecimal(saOrderWaresExt.getWaresQuantity())));
|
||||||
|
} else {
|
||||||
|
// 按比率处理
|
||||||
|
benefitIncome = benefitIncome.add(saOrderWaresExt.getWaresPrice().multiply(saOrderWaresExt.getAreaIncome()).divide(new BigDecimal("100"), 6, BigDecimal.ROUND_HALF_UP));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
CuMemberBonusDetail cuMemberBonusDetail = packageBenefitIncome(bonusConfigDTO, period, cuMemberBonusMap, null, RetailConstants.SAME_RATIO, benefitIncome,
|
CuMemberBonusDetail cuMemberBonusDetail = packageBenefitIncome(bonusConfigDTO, period, cuMemberBonusMap, null, RetailConstants.SAME_RATIO, benefitIncome,
|
||||||
cuMemberRetailRangeExt, EBonusItems.RETAIL_AREA_INCOME.getValue(), BonusMsgConstants.RETAIL_AREA_INCOME);
|
cuMemberRetailRangeExt, EBonusItems.RETAIL_AREA_INCOME.getValue(), BonusMsgConstants.RETAIL_AREA_INCOME);
|
||||||
// 计算业绩以盒数做为基础
|
// 计算业绩以盒数做为基础
|
||||||
|
|
|
@ -70,11 +70,40 @@ public class CuRegionAssessServiceImpl extends ServiceImpl<CuRegionAssessMapper,
|
||||||
Map<Long, CuRegionAssess> regionAssessMap = new HashMap<>();
|
Map<Long, CuRegionAssess> regionAssessMap = new HashMap<>();
|
||||||
List<CuRegionAssessDetail> regionAssessDetailList = new ArrayList<>();
|
List<CuRegionAssessDetail> regionAssessDetailList = new ArrayList<>();
|
||||||
for (CuMemberRetailRegion cuMemberRetailRegion : memberRetailRegionList) {
|
for (CuMemberRetailRegion cuMemberRetailRegion : memberRetailRegionList) {
|
||||||
|
|
||||||
|
if (null != cuMemberRetailRegion.getEffectiveEndDate()) {
|
||||||
|
// 设置过生效结束时间
|
||||||
CuRegionAssess cuRegionAssess = CuRegionAssess.builder()
|
CuRegionAssess cuRegionAssess = CuRegionAssess.builder()
|
||||||
.pkMember(cuMemberRetailRegion.getPkMember())
|
.pkMember(cuMemberRetailRegion.getPkMember())
|
||||||
.pkRegion(cuMemberRetailRegion.getPkId())
|
.pkRegion(cuMemberRetailRegion.getPkId())
|
||||||
.assessPeriod(1)
|
.assessPeriod(1)
|
||||||
.assessStartDate(assessDate)
|
.assessStartDate(assessDate)
|
||||||
|
// 考核结束期
|
||||||
|
.assessEndDate(DateUtils.currentMonthFirstDate(DateUtils.afterMonthDate(1, cuMemberRetailRegion.getEffectiveEndDate())))
|
||||||
|
.source(cuMemberRetailRegion.getSource())
|
||||||
|
.build();
|
||||||
|
cuRegionAssess.setPkCreator(MagicNumberConstants.PK_ADMIN);
|
||||||
|
cuRegionAssess.setPkCountry(cuMemberRetailRegion.getPkCountry());
|
||||||
|
regionAssessMap.put(cuRegionAssess.getPkMember(), cuRegionAssess);
|
||||||
|
while (assessDate.compareTo(cuRegionAssess.getAssessEndDate()) <= 0) {
|
||||||
|
CuRegionAssessDetail cuRegionAssessDetail = CuRegionAssessDetail.builder()
|
||||||
|
.pkRegionAssess(cuRegionAssess.getPkMember())
|
||||||
|
.assessDate(assessDate)
|
||||||
|
.pkMember(cuRegionAssess.getPkMember())
|
||||||
|
.build();
|
||||||
|
cuRegionAssessDetail.setPkCreator(MagicNumberConstants.PK_ADMIN);
|
||||||
|
cuRegionAssessDetail.setPkCountry(cuMemberRetailRegion.getPkCountry());
|
||||||
|
regionAssessDetailList.add(cuRegionAssessDetail);
|
||||||
|
|
||||||
|
assessDate = DateUtils.afterMonthDate(1, assessDate);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
CuRegionAssess cuRegionAssess = CuRegionAssess.builder()
|
||||||
|
.pkMember(cuMemberRetailRegion.getPkMember())
|
||||||
|
.pkRegion(cuMemberRetailRegion.getPkId())
|
||||||
|
.assessPeriod(1)
|
||||||
|
.assessStartDate(assessDate)
|
||||||
|
// 考核结束期
|
||||||
.assessEndDate(DateUtils.currentMonthFirstDate(DateUtils.afterMonthDate(5, assessDate)))
|
.assessEndDate(DateUtils.currentMonthFirstDate(DateUtils.afterMonthDate(5, assessDate)))
|
||||||
.source(cuMemberRetailRegion.getSource())
|
.source(cuMemberRetailRegion.getSource())
|
||||||
.build();
|
.build();
|
||||||
|
@ -93,6 +122,8 @@ public class CuRegionAssessServiceImpl extends ServiceImpl<CuRegionAssessMapper,
|
||||||
regionAssessDetailList.add(cuRegionAssessDetail);
|
regionAssessDetailList.add(cuRegionAssessDetail);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
}
|
||||||
saveCuRegionAssess(regionAssessMap, regionAssessDetailList);
|
saveCuRegionAssess(regionAssessMap, regionAssessDetailList);
|
||||||
}
|
}
|
||||||
iCuRegionAssessDetailService.assessCuRegionAssessDetail(rangeTableName, assessDate);
|
iCuRegionAssessDetailService.assessCuRegionAssessDetail(rangeTableName, assessDate);
|
||||||
|
|
|
@ -65,8 +65,13 @@
|
||||||
|
|
||||||
<result column="all_new_box_num" property="allNewBoxNum"/>
|
<result column="all_new_box_num" property="allNewBoxNum"/>
|
||||||
<result column="all_new_consume_pv" property="allNewConsumePv"/>
|
<result column="all_new_consume_pv" property="allNewConsumePv"/>
|
||||||
|
|
||||||
<result column="all_team_new_box_num" property="allTeamNewBoxNum"/>
|
<result column="all_team_new_box_num" property="allTeamNewBoxNum"/>
|
||||||
<result column="all_team_new_pv" property="allTeamNewPv"/>
|
<result column="all_team_new_pv" property="allTeamNewPv"/>
|
||||||
|
<result column="all_team_box_num" property="allTeamBoxNum"/>
|
||||||
|
<result column="all_team_month_box_num" property="allTeamMonthBoxNum"/>
|
||||||
|
<result column="all_team_consume_pv" property="allTeamConsumePv"/>
|
||||||
|
<result column="all_team_month_pv" property="allTeamMonthPv"/>
|
||||||
</resultMap>
|
</resultMap>
|
||||||
|
|
||||||
<update id="mergeMemberRetailRangeInit">
|
<update id="mergeMemberRetailRangeInit">
|
||||||
|
@ -94,7 +99,13 @@
|
||||||
big_box_num = 0,
|
big_box_num = 0,
|
||||||
small_box_num = 0,
|
small_box_num = 0,
|
||||||
big_team_pv = 0,
|
big_team_pv = 0,
|
||||||
small_team_pv = 0
|
small_team_pv = 0,
|
||||||
|
all_team_new_box_num = 0,
|
||||||
|
all_team_box_num = 0,
|
||||||
|
all_team_month_box_num = 0,
|
||||||
|
all_team_new_pv = 0,
|
||||||
|
all_team_consume_pv = 0,
|
||||||
|
all_team_month_pv = 0
|
||||||
</update>
|
</update>
|
||||||
|
|
||||||
<update id="mergeMemberRetailRangeByYesterday">
|
<update id="mergeMemberRetailRangeByYesterday">
|
||||||
|
@ -107,7 +118,9 @@
|
||||||
team_new_pv, team_consume_pv, team_month_pv,
|
team_new_pv, team_consume_pv, team_month_pv,
|
||||||
team_new_amount, team_consume_amount, team_month_amount,
|
team_new_amount, team_consume_amount, team_month_amount,
|
||||||
recommend_num, team_num,
|
recommend_num, team_num,
|
||||||
big_box_num, small_box_num, big_team_pv, small_team_pv
|
big_box_num, small_box_num, big_team_pv, small_team_pv,
|
||||||
|
all_team_new_box_num, all_team_box_num, all_team_month_box_num,
|
||||||
|
all_team_new_pv, all_team_consume_pv, all_team_month_pv
|
||||||
from ${yesterdayRangeTableName}
|
from ${yesterdayRangeTableName}
|
||||||
) b
|
) b
|
||||||
on (a.pk_member = b.pk_member)
|
on (a.pk_member = b.pk_member)
|
||||||
|
@ -122,13 +135,19 @@
|
||||||
a.pk_grade = b.pk_grade,
|
a.pk_grade = b.pk_grade,
|
||||||
a.enable_status = b.enable_status,
|
a.enable_status = b.enable_status,
|
||||||
a.big_box_num = b.big_box_num, a.small_box_num = b.small_box_num,
|
a.big_box_num = b.big_box_num, a.small_box_num = b.small_box_num,
|
||||||
a.big_team_pv = b.big_team_pv, a.small_team_pv = b.small_team_pv
|
a.big_team_pv = b.big_team_pv, a.small_team_pv = b.small_team_pv,
|
||||||
|
a.all_team_new_box_num = b.all_team_new_box_num,
|
||||||
|
a.all_team_box_num = b.all_team_box_num,
|
||||||
|
a.all_team_new_pv = b.all_team_new_pv,
|
||||||
|
a.all_team_consume_pv = b.all_team_consume_pv
|
||||||
<if test="isSameMonth == 0">
|
<if test="isSameMonth == 0">
|
||||||
,a.month_box_num = b.month_box_num
|
,a.month_box_num = b.month_box_num
|
||||||
,a.month_consume_pv = b.month_consume_pv
|
,a.month_consume_pv = b.month_consume_pv
|
||||||
,a.team_month_box_num = b.team_month_box_num
|
,a.team_month_box_num = b.team_month_box_num
|
||||||
,a.team_month_pv = b.team_month_pv
|
,a.team_month_pv = b.team_month_pv
|
||||||
,a.team_month_amount = b.team_month_amount
|
,a.team_month_amount = b.team_month_amount
|
||||||
|
,a.all_team_month_box_num = b.all_team_month_box_num
|
||||||
|
,a.all_team_month_pv = b.all_team_month_pv
|
||||||
</if>
|
</if>
|
||||||
</update>
|
</update>
|
||||||
|
|
||||||
|
@ -142,7 +161,10 @@
|
||||||
#{item.teamNewBoxNum} team_new_box_num, #{item.teamBoxNum} team_box_num, #{item.teamMonthBoxNum} team_month_box_num,
|
#{item.teamNewBoxNum} team_new_box_num, #{item.teamBoxNum} team_box_num, #{item.teamMonthBoxNum} team_month_box_num,
|
||||||
#{item.teamNewPv} team_new_pv, #{item.teamConsumePv} team_consume_pv, #{item.teamMonthPv} team_month_pv,
|
#{item.teamNewPv} team_new_pv, #{item.teamConsumePv} team_consume_pv, #{item.teamMonthPv} team_month_pv,
|
||||||
#{item.teamNewAmount} team_new_amount, #{item.teamConsumeAmount} team_consume_amount, #{item.teamMonthAmount} team_month_amount,
|
#{item.teamNewAmount} team_new_amount, #{item.teamConsumeAmount} team_consume_amount, #{item.teamMonthAmount} team_month_amount,
|
||||||
#{item.recommendNum} recommend_num, #{item.teamNum} team_num, #{item.enableStatus} enable_status
|
#{item.recommendNum} recommend_num, #{item.teamNum} team_num, #{item.enableStatus} enable_status,
|
||||||
|
#{item.allTeamNewBoxNum} all_team_new_box_num, #{item.allTeamNewPv} all_team_new_pv,
|
||||||
|
#{item.allTeamBoxNum} all_team_box_num, #{item.allTeamConsumePv} all_team_consume_pv,
|
||||||
|
#{item.allTeamMonthBoxNum} all_team_month_box_num, #{item.allTeamMonthPv} all_team_month_pv
|
||||||
from dual
|
from dual
|
||||||
</foreach>
|
</foreach>
|
||||||
) b
|
) b
|
||||||
|
@ -154,7 +176,10 @@
|
||||||
a.team_new_box_num = b.team_new_box_num, a.team_box_num = b.team_box_num, a.team_month_box_num = b.team_month_box_num,
|
a.team_new_box_num = b.team_new_box_num, a.team_box_num = b.team_box_num, a.team_month_box_num = b.team_month_box_num,
|
||||||
a.team_new_pv = b.team_new_pv, a.team_consume_pv = b.team_consume_pv, a.team_month_pv = b.team_month_pv,
|
a.team_new_pv = b.team_new_pv, a.team_consume_pv = b.team_consume_pv, a.team_month_pv = b.team_month_pv,
|
||||||
a.team_new_amount = b.team_new_amount, a.team_consume_amount = b.team_consume_amount, a.team_month_amount = b.team_month_amount,
|
a.team_new_amount = b.team_new_amount, a.team_consume_amount = b.team_consume_amount, a.team_month_amount = b.team_month_amount,
|
||||||
a.recommend_num = b.recommend_num, a.team_num = b.team_num, a.enable_status = b.enable_status
|
a.recommend_num = b.recommend_num, a.team_num = b.team_num, a.enable_status = b.enable_status,
|
||||||
|
a.all_team_new_box_num = b.all_team_new_box_num, a.all_team_new_pv = b.all_team_new_pv,
|
||||||
|
a.all_team_box_num = b.all_team_box_num, a.all_team_consume_pv = b.all_team_consume_pv,
|
||||||
|
a.all_team_month_box_num = b.all_team_month_box_num, a.all_team_month_pv = b.all_team_month_pv
|
||||||
</update>
|
</update>
|
||||||
|
|
||||||
<!-- 当前网体更新极差秒接表 -->
|
<!-- 当前网体更新极差秒接表 -->
|
||||||
|
@ -218,9 +243,9 @@
|
||||||
#{item.pkAwards} pk_awards, #{item.pkShareAwards} pk_share_awards,
|
#{item.pkAwards} pk_awards, #{item.pkShareAwards} pk_share_awards,
|
||||||
#{item.newBoxNum} new_box_num, #{item.newConsumePv} new_consume_pv,
|
#{item.newBoxNum} new_box_num, #{item.newConsumePv} new_consume_pv,
|
||||||
#{item.teamNewBoxNum} team_new_box_num, #{item.teamNewPv} team_new_pv,
|
#{item.teamNewBoxNum} team_new_box_num, #{item.teamNewPv} team_new_pv,
|
||||||
|
#{item.teamNewAmount} team_new_amount, #{item.enableStatus} enable_status,
|
||||||
#{item.allNewBoxNum} all_new_box_num, #{item.allNewConsumePv} all_new_consume_pv,
|
#{item.allNewBoxNum} all_new_box_num, #{item.allNewConsumePv} all_new_consume_pv,
|
||||||
#{item.allTeamNewBoxNum} all_team_new_box_num, #{item.allTeamNewPv} all_team_new_pv,
|
#{item.allTeamNewBoxNum} all_team_new_box_num, #{item.allTeamNewPv} all_team_new_pv
|
||||||
#{item.teamNewAmount} team_new_amount, #{item.enableStatus} enable_status
|
|
||||||
from dual
|
from dual
|
||||||
</foreach>
|
</foreach>
|
||||||
) b
|
) b
|
||||||
|
@ -230,9 +255,9 @@
|
||||||
a.pk_grade = b.pk_grade, a.pk_awards = b.pk_awards, a.pk_share_awards = b.pk_share_awards,
|
a.pk_grade = b.pk_grade, a.pk_awards = b.pk_awards, a.pk_share_awards = b.pk_share_awards,
|
||||||
a.new_box_num = b.new_box_num, a.new_consume_pv = b.new_consume_pv,
|
a.new_box_num = b.new_box_num, a.new_consume_pv = b.new_consume_pv,
|
||||||
a.team_new_box_num = b.team_new_box_num, a.team_new_pv = b.team_new_pv,
|
a.team_new_box_num = b.team_new_box_num, a.team_new_pv = b.team_new_pv,
|
||||||
|
a.team_new_amount = b.team_new_amount, a.enable_status = b.enable_status,
|
||||||
a.all_new_box_num = b.all_new_box_num, a.all_new_consume_pv = b.all_new_consume_pv,
|
a.all_new_box_num = b.all_new_box_num, a.all_new_consume_pv = b.all_new_consume_pv,
|
||||||
a.all_team_new_box_num = b.all_team_new_box_num, a.all_team_new_pv = b.all_team_new_pv,
|
a.all_team_new_box_num = b.all_team_new_box_num, a.all_team_new_pv = b.all_team_new_pv
|
||||||
a.team_new_amount = b.team_new_amount, a.enable_status = b.enable_status
|
|
||||||
</update>
|
</update>
|
||||||
|
|
||||||
<update id="mergeMemberRetailGradeByMember">
|
<update id="mergeMemberRetailGradeByMember">
|
||||||
|
@ -362,6 +387,12 @@
|
||||||
a.small_box_num,
|
a.small_box_num,
|
||||||
a.big_team_pv,
|
a.big_team_pv,
|
||||||
a.small_team_pv,
|
a.small_team_pv,
|
||||||
|
a.all_team_new_box_num,
|
||||||
|
a.all_team_box_num,
|
||||||
|
a.all_team_month_box_num,
|
||||||
|
a.all_team_new_pv,
|
||||||
|
a.all_team_consume_pv,
|
||||||
|
a.all_team_month_pv,
|
||||||
bw.range_ratio,
|
bw.range_ratio,
|
||||||
bw.month_repurchase_ratio,
|
bw.month_repurchase_ratio,
|
||||||
bw.benefit_avg_ratio,
|
bw.benefit_avg_ratio,
|
||||||
|
@ -410,6 +441,10 @@
|
||||||
a.big_team_pv,
|
a.big_team_pv,
|
||||||
a.small_team_pv,
|
a.small_team_pv,
|
||||||
a.system_type,
|
a.system_type,
|
||||||
|
a.all_team_box_num,
|
||||||
|
a.all_team_month_box_num,
|
||||||
|
a.all_team_consume_pv,
|
||||||
|
a.all_team_month_pv,
|
||||||
new_box_num,
|
new_box_num,
|
||||||
consume_box_num,
|
consume_box_num,
|
||||||
month_box_num,
|
month_box_num,
|
||||||
|
@ -558,6 +593,16 @@
|
||||||
bw.awards_value,
|
bw.awards_value,
|
||||||
bw.awards_name,
|
bw.awards_name,
|
||||||
bwa.awards_value share_awards_value,
|
bwa.awards_value share_awards_value,
|
||||||
|
a.big_box_num,
|
||||||
|
a.small_box_num,
|
||||||
|
a.big_team_pv,
|
||||||
|
a.small_team_pv,
|
||||||
|
a.all_team_new_box_num,
|
||||||
|
a.all_team_box_num,
|
||||||
|
a.all_team_month_box_num,
|
||||||
|
a.all_team_new_pv,
|
||||||
|
a.all_team_consume_pv,
|
||||||
|
a.all_team_month_pv,
|
||||||
a.account_status,
|
a.account_status,
|
||||||
a.category,
|
a.category,
|
||||||
bw.range_ratio,
|
bw.range_ratio,
|
||||||
|
@ -652,20 +697,20 @@
|
||||||
nvl(b.pk_rate, bt.pk_id) pk_rate,
|
nvl(b.pk_rate, bt.pk_id) pk_rate,
|
||||||
nvl(cm.is_activate, a.enable_status) enable_status,
|
nvl(cm.is_activate, a.enable_status) enable_status,
|
||||||
a.new_box_num,
|
a.new_box_num,
|
||||||
nvl(b.consume_box_num, 0) + a.new_box_num consume_box_num,
|
nvl(b.consume_box_num, 0) + nvl(a.new_box_num, 0) consume_box_num,
|
||||||
nvl(b.month_box_num, 0) + a.new_box_num month_box_num,
|
nvl(b.month_box_num, 0) + nvl(a.new_box_num, 0) month_box_num,
|
||||||
a.new_consume_pv,
|
a.new_consume_pv,
|
||||||
nvl(b.consume_pv, 0) + a.new_consume_pv consume_pv,
|
nvl(b.consume_pv, 0) + nvl(a.new_consume_pv, 0) consume_pv,
|
||||||
nvl(b.month_consume_pv, 0) + a.new_consume_pv month_consume_pv,
|
nvl(b.month_consume_pv, 0) + nvl(a.new_consume_pv, 0) month_consume_pv,
|
||||||
a.team_new_box_num,
|
a.team_new_box_num,
|
||||||
nvl(b.team_box_num, 0) + a.team_new_box_num team_box_num,
|
nvl(b.team_box_num, 0) + nvl(a.team_new_box_num, 0) team_box_num,
|
||||||
nvl(b.team_month_box_num, 0) + a.team_new_box_num team_month_box_num,
|
nvl(b.team_month_box_num, 0) + nvl(a.team_new_box_num, 0) team_month_box_num,
|
||||||
a.team_new_pv,
|
a.team_new_pv,
|
||||||
nvl(b.team_consume_pv, 0) + a.team_new_pv team_consume_pv,
|
nvl(b.team_consume_pv, 0) + nvl(a.team_new_pv, 0) team_consume_pv,
|
||||||
nvl(b.team_month_pv, 0) + a.team_new_pv team_month_pv,
|
nvl(b.team_month_pv, 0) + nvl(a.team_new_pv, 0) team_month_pv,
|
||||||
a.team_new_amount,
|
a.team_new_amount,
|
||||||
nvl(b.team_consume_amount, 0) + a.team_new_amount team_consume_amount,
|
nvl(b.team_consume_amount, 0) + nvl(a.team_new_amount, 0) team_consume_amount,
|
||||||
nvl(b.team_month_amount, 0) + a.team_new_amount team_month_amount,
|
nvl(b.team_month_amount, 0) + nvl(a.team_new_amount, 0) team_month_amount,
|
||||||
nvl(b.big_box_num, 0) big_box_num,
|
nvl(b.big_box_num, 0) big_box_num,
|
||||||
nvl(b.small_box_num, 0) small_box_num,
|
nvl(b.small_box_num, 0) small_box_num,
|
||||||
nvl(b.big_team_pv, 0) big_team_pv,
|
nvl(b.big_team_pv, 0) big_team_pv,
|
||||||
|
@ -675,6 +720,10 @@
|
||||||
a.all_new_consume_pv,
|
a.all_new_consume_pv,
|
||||||
a.all_team_new_box_num,
|
a.all_team_new_box_num,
|
||||||
a.all_team_new_pv,
|
a.all_team_new_pv,
|
||||||
|
nvl(b.all_team_box_num, 0) + nvl(a.all_team_new_box_num, 0) all_team_box_num,
|
||||||
|
nvl(b.all_team_month_box_num, 0) + nvl(a.all_team_new_pv, 0) all_team_month_box_num,
|
||||||
|
nvl(b.all_team_consume_pv, 0) + nvl(a.all_team_new_box_num, 0) all_team_consume_pv,
|
||||||
|
nvl(b.all_team_month_pv, 0) + nvl(a.all_team_new_pv, 0) all_team_month_pv,
|
||||||
bg.grade_value,
|
bg.grade_value,
|
||||||
bg.grade_name,
|
bg.grade_name,
|
||||||
bw.awards_value,
|
bw.awards_value,
|
||||||
|
@ -721,7 +770,11 @@
|
||||||
nvl(b.consume_box_num, 0) + nvl(a.new_box_num, 0) consume_box_num,
|
nvl(b.consume_box_num, 0) + nvl(a.new_box_num, 0) consume_box_num,
|
||||||
nvl(b.team_box_num, 0) + nvl(a.team_new_box_num, 0) team_box_num,
|
nvl(b.team_box_num, 0) + nvl(a.team_new_box_num, 0) team_box_num,
|
||||||
nvl(b.big_box_num, 0) big_box_num,
|
nvl(b.big_box_num, 0) big_box_num,
|
||||||
nvl(b.small_box_num, 0) small_box_num
|
nvl(b.small_box_num, 0) small_box_num,
|
||||||
|
nvl(b.all_team_box_num, 0) + nvl(a.all_team_new_box_num, 0) all_team_box_num,
|
||||||
|
nvl(b.all_team_month_box_num, 0) + nvl(a.all_team_new_pv, 0) all_team_month_box_num,
|
||||||
|
nvl(b.all_team_consume_pv, 0) + nvl(a.all_team_new_box_num, 0) all_team_consume_pv,
|
||||||
|
nvl(b.all_team_month_pv, 0) + nvl(a.all_team_new_pv, 0) all_team_month_pv
|
||||||
from cu_member cm
|
from cu_member cm
|
||||||
left join ${secondTableName} a
|
left join ${secondTableName} a
|
||||||
on cm.pk_id = a.pk_member
|
on cm.pk_id = a.pk_member
|
||||||
|
@ -729,62 +782,6 @@
|
||||||
on cm.pk_id = b.pk_member
|
on cm.pk_id = b.pk_member
|
||||||
where cm.pk_parent = #{pkMember}
|
where cm.pk_parent = #{pkMember}
|
||||||
and cm.del_flag = 0
|
and cm.del_flag = 0
|
||||||
|
|
||||||
<!--
|
|
||||||
select a.pk_member,
|
|
||||||
cm.member_code,
|
|
||||||
cm.member_name,
|
|
||||||
a.pk_parent,
|
|
||||||
cm.pk_settle_country,
|
|
||||||
cm.category,
|
|
||||||
cm.account_status,
|
|
||||||
a.pk_grade,
|
|
||||||
a.pk_awards,
|
|
||||||
cm.income_status,
|
|
||||||
nvl(b.consume_box_num, 0) + a.new_box_num consume_box_num,
|
|
||||||
a.new_box_num,
|
|
||||||
nvl(b.team_box_num, 0) + a.team_new_box_num team_box_num,
|
|
||||||
nvl(b.month_box_num, 0) + a.team_new_box_num month_box_num,
|
|
||||||
a.team_new_box_num,
|
|
||||||
nvl(b.consume_pv, 0) + a.new_consume_pv consume_pv,
|
|
||||||
nvl(month_consume_pv, 0) + a.new_consume_pv month_consume_pv,
|
|
||||||
a.new_consume_pv,
|
|
||||||
nvl(b.team_consume_amount, 0) + a.team_new_amount team_consume_amount,
|
|
||||||
nvl(b.team_consume_pv, 0) + a.team_new_pv team_consume_pv,
|
|
||||||
nvl(b.team_month_amount, 0) + a.team_new_amount team_month_amount,
|
|
||||||
nvl(b.team_month_pv, 0) + a.team_new_pv team_month_pv,
|
|
||||||
a.team_new_amount,
|
|
||||||
a.team_new_pv,
|
|
||||||
bg.grade_value,
|
|
||||||
bg.grade_name,
|
|
||||||
bw.awards_value,
|
|
||||||
bw.awards_name,
|
|
||||||
nvl(b.big_box_num, 0) big_box_num,
|
|
||||||
nvl(b.small_box_num, 0) small_box_num,
|
|
||||||
nvl(b.big_team_pv, 0) big_team_pv,
|
|
||||||
nvl(b.small_team_pv, 0) small_team_pv,
|
|
||||||
a.system_type,
|
|
||||||
bw.range_ratio,
|
|
||||||
bw.benefit_avg_ratio,
|
|
||||||
bw.benefit_share_ratio,
|
|
||||||
br.name country_name
|
|
||||||
from ${secondTableName} a
|
|
||||||
left join ${rangeTableName} b
|
|
||||||
on a.pk_member = b.pk_member
|
|
||||||
inner join cu_member cm
|
|
||||||
on cm.pk_id = a.pk_member
|
|
||||||
inner join bd_awards bw
|
|
||||||
on bw.pk_id = a.pk_awards
|
|
||||||
inner join bd_grade bg
|
|
||||||
on bg.pk_id = a.pk_grade
|
|
||||||
left join cu_member_retail_region cr
|
|
||||||
on cr.pk_member = cm.pk_id and cr.effective = 0 and cr.del_flag = 0
|
|
||||||
left join bd_area br
|
|
||||||
on br.pk_id = cr.county and br.del_flag = 0
|
|
||||||
where bw.del_flag = 0
|
|
||||||
and bg.del_flag = 0
|
|
||||||
and a.pk_parent = #{pkMember}
|
|
||||||
-->
|
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="queryCuMemberRetailRangeEnoughAchieve" resultType="com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt">
|
<select id="queryCuMemberRetailRangeEnoughAchieve" resultType="com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt">
|
||||||
|
@ -808,7 +805,11 @@
|
||||||
big_box_num,
|
big_box_num,
|
||||||
small_box_num,
|
small_box_num,
|
||||||
big_team_pv,
|
big_team_pv,
|
||||||
small_team_pv
|
small_team_pv,
|
||||||
|
all_team_box_num,
|
||||||
|
all_team_month_box_num,
|
||||||
|
all_team_consume_pv,
|
||||||
|
all_team_month_pv
|
||||||
from ${tableName}
|
from ${tableName}
|
||||||
where pk_parent = #{pkParent}
|
where pk_parent = #{pkParent}
|
||||||
</select>
|
</select>
|
||||||
|
|
|
@ -478,7 +478,7 @@
|
||||||
all_new_box_num number(10,2) default 0 not null,
|
all_new_box_num number(10,2) default 0 not null,
|
||||||
all_new_consume_pv number(17,6) default 0 not null,
|
all_new_consume_pv number(17,6) default 0 not null,
|
||||||
all_team_new_box_num number(10,2) default 0 not null,
|
all_team_new_box_num number(10,2) default 0 not null,
|
||||||
all_team_new_pv number(17,6) default 0 not null,
|
all_team_new_pv number(17,6) default 0 not null
|
||||||
)
|
)
|
||||||
</update>
|
</update>
|
||||||
|
|
||||||
|
@ -530,7 +530,13 @@
|
||||||
big_box_num number(10,2) default 0 not null,
|
big_box_num number(10,2) default 0 not null,
|
||||||
small_box_num number(10,2) default 0 not null,
|
small_box_num number(10,2) default 0 not null,
|
||||||
big_team_pv number(17,6) default 0 not null,
|
big_team_pv number(17,6) default 0 not null,
|
||||||
small_team_pv number(17,6) default 0 not null
|
small_team_pv number(17,6) default 0 not null,
|
||||||
|
all_team_new_box_num number(12,2) default 0 not null,
|
||||||
|
all_team_box_num number(12,2) default 0 not null,
|
||||||
|
all_team_month_box_num number(12,2) default 0 not null,
|
||||||
|
all_team_new_pv number(17,6) default 0 not null,
|
||||||
|
all_team_consume_pv number(17,6) default 0 not null,
|
||||||
|
all_team_month_pv number(17,6) default 0 not null
|
||||||
)
|
)
|
||||||
</update>
|
</update>
|
||||||
|
|
||||||
|
|
|
@ -55,11 +55,29 @@
|
||||||
from cu_region_assess_detail cd
|
from cu_region_assess_detail cd
|
||||||
inner join cu_region_assess ca
|
inner join cu_region_assess ca
|
||||||
on cd.pk_region_assess = ca.pk_id
|
on cd.pk_region_assess = ca.pk_id
|
||||||
|
inner join cu_member_retail_region cmrr
|
||||||
|
on cmrr.pk_id = ca.pk_region
|
||||||
where cd.ASSESS_STATUS = 0
|
where cd.ASSESS_STATUS = 0
|
||||||
and cd.del_flag = 0
|
and cd.del_flag = 0
|
||||||
and ca.del_flag = 0
|
and ca.del_flag = 0
|
||||||
and ca.assess_start_date <= #{assessDate,jdbcType=DATE}
|
and ca.assess_start_date <= #{assessDate,jdbcType=DATE}
|
||||||
and ca.assess_end_date >= #{assessDate,jdbcType=DATE}
|
and ca.assess_end_date >= #{assessDate,jdbcType=DATE}
|
||||||
|
and cmrr.del_flag = 0
|
||||||
|
and cmrr.effective_end_date is null
|
||||||
|
group by cd.pk_region_assess
|
||||||
|
union
|
||||||
|
<!-- 手动开通的,只查询手效期前6个月的数据 -->
|
||||||
|
select cd.pk_region_assess, sum(1) REACH_NUM
|
||||||
|
from cu_region_assess_detail cd
|
||||||
|
inner join cu_region_assess ca
|
||||||
|
on cd.pk_region_assess = ca.pk_id
|
||||||
|
inner join CU_MEMBER_RETAIL_REGION cmrr
|
||||||
|
on cmrr.pk_id = ca.pk_region
|
||||||
|
where cd.del_flag = 0
|
||||||
|
and ca.del_flag = 0
|
||||||
|
and cmrr.del_flag = 0
|
||||||
|
and cmrr.effective_end_date is not null
|
||||||
|
and cd.assess_date > ADD_MONTHS(cmrr.effective_end_date, -6)
|
||||||
group by cd.pk_region_assess
|
group by cd.pk_region_assess
|
||||||
) b
|
) b
|
||||||
on (a.pk_id = b.pk_region_assess)
|
on (a.pk_id = b.pk_region_assess)
|
||||||
|
|
|
@ -61,6 +61,7 @@
|
||||||
<result column="WARES_PRICE" property="waresPrice"/>
|
<result column="WARES_PRICE" property="waresPrice"/>
|
||||||
<result column="WARES_CODE" property="waresCode"/>
|
<result column="WARES_CODE" property="waresCode"/>
|
||||||
<result column="AREA_INCOME" property="areaIncome"/>
|
<result column="AREA_INCOME" property="areaIncome"/>
|
||||||
|
<result column="AREA_INCOME_TYPE" property="areaIncomeType"/>
|
||||||
<result column="WARES_BOX_NUM" property="waresBoxNum"/>
|
<result column="WARES_BOX_NUM" property="waresBoxNum"/>
|
||||||
</collection>
|
</collection>
|
||||||
<collection property="orderItemsExtList" ofType="com.hzs.common.domain.sale.ext.SaOrderItemsExt">
|
<collection property="orderItemsExtList" ofType="com.hzs.common.domain.sale.ext.SaOrderItemsExt">
|
||||||
|
@ -154,9 +155,10 @@
|
||||||
nvl(st.pk_order,0) pk_order,
|
nvl(st.pk_order,0) pk_order,
|
||||||
nvl(st.pk_wares,0) pk_wares,
|
nvl(st.pk_wares,0) pk_wares,
|
||||||
nvl(st.wares_price,0) wares_price,
|
nvl(st.wares_price,0) wares_price,
|
||||||
nvl(bw.wares_code,'~') wares_code,
|
|
||||||
nvl(st.wares_quantity,0) wares_quantity,
|
nvl(st.wares_quantity,0) wares_quantity,
|
||||||
|
nvl(bw.wares_code,'~') wares_code,
|
||||||
nvl(bw.area_income, 0) area_income,
|
nvl(bw.area_income, 0) area_income,
|
||||||
|
nvl(bw.area_income_type, 0) area_income_type,
|
||||||
nvl(bw.box_num, 0) wares_box_num
|
nvl(bw.box_num, 0) wares_box_num
|
||||||
from sa_order so
|
from sa_order so
|
||||||
left join sa_order_wares st
|
left join sa_order_wares st
|
||||||
|
@ -164,6 +166,69 @@
|
||||||
left join bd_wares bw
|
left join bd_wares bw
|
||||||
on bw.pk_id = st.pk_wares and bw.del_flag = 0
|
on bw.pk_id = st.pk_wares and bw.del_flag = 0
|
||||||
where so.order_status = 1
|
where so.order_status = 1
|
||||||
|
and so.order_type in (41, 42)
|
||||||
|
<if test="orderCode != null and orderCode != ''">
|
||||||
|
and so.order_code=#{orderCode}
|
||||||
|
</if>
|
||||||
|
and so.pay_time >= #{startDate}
|
||||||
|
and so.pay_time < #{endDate}
|
||||||
|
union
|
||||||
|
select so.pk_id,
|
||||||
|
so.pk_member,
|
||||||
|
so.order_code,
|
||||||
|
so.order_type,
|
||||||
|
so.pk_rate,
|
||||||
|
so.rec_province,
|
||||||
|
so.rec_city,
|
||||||
|
so.rec_county,
|
||||||
|
so.order_amount,
|
||||||
|
so.order_achieve,
|
||||||
|
so.order_ass_achieve,
|
||||||
|
so.upload_achieve,
|
||||||
|
so.pk_reference,
|
||||||
|
so.pk_vertex,
|
||||||
|
so.pk_country,
|
||||||
|
so.del_flag,
|
||||||
|
so.pay_time,
|
||||||
|
so.pk_creator,
|
||||||
|
so.consume_amount,
|
||||||
|
so.box_num,
|
||||||
|
soi.items_id,
|
||||||
|
soi.pk_order,
|
||||||
|
soi.pk_wares,
|
||||||
|
soi.wares_price,
|
||||||
|
soi.wares_quantity,
|
||||||
|
nvl(bw.wares_code, '~') wares_code,
|
||||||
|
nvl(bw.area_income, 0) area_income,
|
||||||
|
nvl(bw.area_income_type, 0) area_income_type,
|
||||||
|
nvl(bw.box_num, 0) wares_box_num
|
||||||
|
from sa_order so
|
||||||
|
left join (
|
||||||
|
select max(soi.pk_id) items_id,
|
||||||
|
nvl(soi.pk_order, 0) pk_order,
|
||||||
|
nvl(soi.pk_wares, 0) pk_wares,
|
||||||
|
sum(soi.achievement * soi.quantity) wares_price,
|
||||||
|
max(soi.wares_quantity) wares_quantity
|
||||||
|
from sa_order so
|
||||||
|
left join sa_order_items soi
|
||||||
|
on soi.pk_order = so.pk_id
|
||||||
|
and soi.del_flag = 0
|
||||||
|
and soi.is_gift = 1
|
||||||
|
where so.order_status = 1
|
||||||
|
and so.order_type in (43)
|
||||||
|
<if test="orderCode != null and orderCode != ''">
|
||||||
|
and so.order_code=#{orderCode}
|
||||||
|
</if>
|
||||||
|
and so.pay_time >= #{startDate}
|
||||||
|
and so.pay_time < #{endDate}
|
||||||
|
group by soi.pk_order, soi.pk_wares
|
||||||
|
) soi
|
||||||
|
on soi.pk_order = so.pk_id
|
||||||
|
left join bd_wares bw
|
||||||
|
on bw.pk_id = soi.pk_wares
|
||||||
|
and bw.del_flag = 0
|
||||||
|
where so.order_status = 1
|
||||||
|
and so.order_type in (43)
|
||||||
<if test="orderCode != null and orderCode != ''">
|
<if test="orderCode != null and orderCode != ''">
|
||||||
and so.order_code=#{orderCode}
|
and so.order_code=#{orderCode}
|
||||||
</if>
|
</if>
|
||||||
|
|
|
@ -2521,10 +2521,13 @@ public class CuMemberServiceImpl extends ServiceImpl<CuMemberMapper, CuMember> i
|
||||||
Set<WaresAuthorityParentParam> waresAuthorityParentParamList = new HashSet<>();
|
Set<WaresAuthorityParentParam> waresAuthorityParentParamList = new HashSet<>();
|
||||||
// 安置查询
|
// 安置查询
|
||||||
Set<WaresAuthorityParentParam> waresAuthorityPlaceParamList = new HashSet<>();
|
Set<WaresAuthorityParentParam> waresAuthorityPlaceParamList = new HashSet<>();
|
||||||
|
// 指定会员
|
||||||
|
Set<Long> pkMemberList = new HashSet<>();
|
||||||
|
|
||||||
for (ShowWaresDTO showWaresDTO : showWaresDTOS) {
|
for (ShowWaresDTO showWaresDTO : showWaresDTOS) {
|
||||||
for (BdWaresAuthority bw : showWaresDTO.getWaresAuthorityList()) {
|
for (BdWaresAuthority bw : showWaresDTO.getWaresAuthorityList()) {
|
||||||
if (bw.getAuthorityType() == EWaresPermissionType.BLOOD_ALLOW.getValue() || bw.getAuthorityType() == EWaresPermissionType.BLOOD_STOP.getValue()) {
|
if (bw.getAuthorityType() == EWaresPermissionType.BLOOD_ALLOW.getValue() || bw.getAuthorityType() == EWaresPermissionType.BLOOD_STOP.getValue()) {
|
||||||
|
// 血缘关系
|
||||||
WaresAuthorityParentParam waresAuthorityParentParam = WaresAuthorityParentParam.builder()
|
WaresAuthorityParentParam waresAuthorityParentParam = WaresAuthorityParentParam.builder()
|
||||||
.pkMember(bw.getPkMember())
|
.pkMember(bw.getPkMember())
|
||||||
.loginMember(showWaresDTO.getLoginMember())
|
.loginMember(showWaresDTO.getLoginMember())
|
||||||
|
@ -2532,12 +2535,17 @@ public class CuMemberServiceImpl extends ServiceImpl<CuMemberMapper, CuMember> i
|
||||||
waresAuthorityParentParamList.add(waresAuthorityParentParam);
|
waresAuthorityParentParamList.add(waresAuthorityParentParam);
|
||||||
}
|
}
|
||||||
if (bw.getAuthorityType() == EWaresPermissionType.PLACE_ALLWO.getValue() || bw.getAuthorityType() == EWaresPermissionType.PLACE_STOP.getValue()) {
|
if (bw.getAuthorityType() == EWaresPermissionType.PLACE_ALLWO.getValue() || bw.getAuthorityType() == EWaresPermissionType.PLACE_STOP.getValue()) {
|
||||||
|
// 安置关系
|
||||||
WaresAuthorityParentParam waresAuthorityParentParam = WaresAuthorityParentParam.builder()
|
WaresAuthorityParentParam waresAuthorityParentParam = WaresAuthorityParentParam.builder()
|
||||||
.pkMember(bw.getPkMember())
|
.pkMember(bw.getPkMember())
|
||||||
.loginMember(showWaresDTO.getLoginMember())
|
.loginMember(showWaresDTO.getLoginMember())
|
||||||
.build();
|
.build();
|
||||||
waresAuthorityPlaceParamList.add(waresAuthorityParentParam);
|
waresAuthorityPlaceParamList.add(waresAuthorityParentParam);
|
||||||
}
|
}
|
||||||
|
if (bw.getAuthorityType() == EWaresPermissionType.MEMBER.getValue()) {
|
||||||
|
// 指定会员可见
|
||||||
|
pkMemberList.add(bw.getPkMember());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2568,6 +2576,9 @@ public class CuMemberServiceImpl extends ServiceImpl<CuMemberMapper, CuMember> i
|
||||||
} else if (bdWaresAuthority.getAuthorityType() == EWaresPermissionType.PLACE_STOP.getValue()) {
|
} else if (bdWaresAuthority.getAuthorityType() == EWaresPermissionType.PLACE_STOP.getValue()) {
|
||||||
// 安置禁止
|
// 安置禁止
|
||||||
isShowWares = !waresAuthorityPlaceList.contains(bdWaresAuthority.getPkMember());
|
isShowWares = !waresAuthorityPlaceList.contains(bdWaresAuthority.getPkMember());
|
||||||
|
} else if (bdWaresAuthority.getAuthorityType() == EWaresPermissionType.MEMBER.getValue()) {
|
||||||
|
// 指定会员可见
|
||||||
|
isShowWares = pkMemberList.contains(showWaresDTO.getLoginMember());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
resultMap.put(showWaresDTO.getPkWares(), isShowWares);
|
resultMap.put(showWaresDTO.getPkWares(), isShowWares);
|
||||||
|
|
|
@ -513,6 +513,7 @@ public class BdWaresController extends BaseController {
|
||||||
waresParams.setSortStatus(wares.getSortStatus());
|
waresParams.setSortStatus(wares.getSortStatus());
|
||||||
waresParams.setSystemType(waresExtend.getSystemType());
|
waresParams.setSystemType(waresExtend.getSystemType());
|
||||||
waresParams.setAreaIncome(wares.getAreaIncome());
|
waresParams.setAreaIncome(wares.getAreaIncome());
|
||||||
|
waresParams.setAreaIncomeType(wares.getAreaIncomeType());
|
||||||
waresParams.setBoxNum(wares.getBoxNum());
|
waresParams.setBoxNum(wares.getBoxNum());
|
||||||
|
|
||||||
BdAreaClassify parentAreaClassify = iBdAreaClassifyService.getAreaClassify(wares.getPkAreaClassify());
|
BdAreaClassify parentAreaClassify = iBdAreaClassifyService.getAreaClassify(wares.getPkAreaClassify());
|
||||||
|
|
|
@ -409,6 +409,11 @@ public class WaresParams implements Serializable {
|
||||||
*/
|
*/
|
||||||
private BigDecimal areaIncome;
|
private BigDecimal areaIncome;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 复购区域分红方式(1=比率,2=比值)
|
||||||
|
*/
|
||||||
|
private Integer areaIncomeType;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 商品上传盒数
|
* 商品上传盒数
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -27,9 +27,6 @@ import com.hzs.sale.wares.param.WaresDetailParams;
|
||||||
import com.hzs.sale.wares.mapper.BdWaresMapper;
|
import com.hzs.sale.wares.mapper.BdWaresMapper;
|
||||||
import com.hzs.sale.wares.service.*;
|
import com.hzs.sale.wares.service.*;
|
||||||
import com.hzs.sale.wares.vo.*;
|
import com.hzs.sale.wares.vo.*;
|
||||||
import com.hzs.system.base.ICurrencyServiceApi;
|
|
||||||
import com.hzs.system.base.ITransactionServiceApi;
|
|
||||||
import com.hzs.system.base.dto.CurrencyDTO;
|
|
||||||
import com.hzs.system.config.IAwardsServiceApi;
|
import com.hzs.system.config.IAwardsServiceApi;
|
||||||
import com.hzs.system.config.ILabelServiceApi;
|
import com.hzs.system.config.ILabelServiceApi;
|
||||||
import com.hzs.system.config.IRangeServiceApi;
|
import com.hzs.system.config.IRangeServiceApi;
|
||||||
|
@ -87,13 +84,9 @@ public class BdWaresServiceImpl extends ServiceImpl<BdWaresMapper, BdWares> impl
|
||||||
@DubboReference
|
@DubboReference
|
||||||
IMemberServiceApi iMemberServiceApi;
|
IMemberServiceApi iMemberServiceApi;
|
||||||
@DubboReference
|
@DubboReference
|
||||||
ICurrencyServiceApi iCurrencyServiceApi;
|
|
||||||
@DubboReference
|
|
||||||
IAwardsServiceApi iAwardsServiceApi;
|
IAwardsServiceApi iAwardsServiceApi;
|
||||||
@DubboReference
|
@DubboReference
|
||||||
IRangeServiceApi iRangeServiceApi;
|
IRangeServiceApi iRangeServiceApi;
|
||||||
@DubboReference
|
|
||||||
ITransactionServiceApi iTransactionServiceApi;
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@Transactional(rollbackFor = Exception.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
|
|
|
@ -50,6 +50,7 @@
|
||||||
<result column="SYSTEM_TYPE" property="systemType"/>
|
<result column="SYSTEM_TYPE" property="systemType"/>
|
||||||
<result column="AREA_INCOME" property="areaIncome"/>
|
<result column="AREA_INCOME" property="areaIncome"/>
|
||||||
<result column="BOX_NUM" property="boxNum"/>
|
<result column="BOX_NUM" property="boxNum"/>
|
||||||
|
<result column="AREA_INCOME_TYPE" property="areaIncomeType"/>
|
||||||
</resultMap>
|
</resultMap>
|
||||||
|
|
||||||
<resultMap id="resultMap" type="com.hzs.sale.wares.vo.WaresVo">
|
<resultMap id="resultMap" type="com.hzs.sale.wares.vo.WaresVo">
|
||||||
|
|
|
@ -750,7 +750,7 @@ public class EnumsController extends BaseController {
|
||||||
public AjaxResult getEWaresPermissionTypeList() {
|
public AjaxResult getEWaresPermissionTypeList() {
|
||||||
List<EnumEntity> enumEntityList = new ArrayList<>();
|
List<EnumEntity> enumEntityList = new ArrayList<>();
|
||||||
for (EWaresPermissionType value : EWaresPermissionType.values()) {
|
for (EWaresPermissionType value : EWaresPermissionType.values()) {
|
||||||
enumEntityList.add(new EnumEntity(value.getValue(), value.getLabel(), EnumsPrefixConstants.ENU_WARES));
|
enumEntityList.add(new EnumEntity(value.getValue(), value.getLabel()));
|
||||||
}
|
}
|
||||||
return AjaxResult.success(enumEntityList);
|
return AjaxResult.success(enumEntityList);
|
||||||
}
|
}
|
||||||
|
@ -837,7 +837,7 @@ public class EnumsController extends BaseController {
|
||||||
public AjaxResult getECycle() {
|
public AjaxResult getECycle() {
|
||||||
List<EnumEntity> enumEntityList = new ArrayList<>();
|
List<EnumEntity> enumEntityList = new ArrayList<>();
|
||||||
for (ECycle value : ECycle.values()) {
|
for (ECycle value : ECycle.values()) {
|
||||||
enumEntityList.add(new EnumEntity(value.getValue(), value.getLabel(), EnumsPrefixConstants.CYCLE));
|
enumEntityList.add(new EnumEntity(value.getValue(), value.getLabel()));
|
||||||
}
|
}
|
||||||
return AjaxResult.success(enumEntityList);
|
return AjaxResult.success(enumEntityList);
|
||||||
}
|
}
|
||||||
|
|
|
@ -580,10 +580,6 @@ public class EnumsPrefixConstants {
|
||||||
*/
|
*/
|
||||||
public static final String ENU_USER = "ENU_USER_S_";
|
public static final String ENU_USER = "ENU_USER_S_";
|
||||||
|
|
||||||
/**
|
|
||||||
* 商品权限类型枚举
|
|
||||||
*/
|
|
||||||
public static final String ENU_WARES = "ENU_WARES_P_";
|
|
||||||
/**
|
/**
|
||||||
* 商品类型枚举
|
* 商品类型枚举
|
||||||
*/
|
*/
|
||||||
|
@ -628,11 +624,6 @@ public class EnumsPrefixConstants {
|
||||||
*/
|
*/
|
||||||
public static final String EXEMPT_TYPE = "ENU_EXE_T_";
|
public static final String EXEMPT_TYPE = "ENU_EXE_T_";
|
||||||
|
|
||||||
/**
|
|
||||||
* 提现周期
|
|
||||||
*/
|
|
||||||
public static final String CYCLE = "ENU_CYCLE_";
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 提现状态
|
* 提现状态
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1,13 +1,10 @@
|
||||||
package com.hzs.common.core.enums;
|
package com.hzs.common.core.enums;
|
||||||
|
|
||||||
import com.hzs.common.core.constant.EnumsPrefixConstants;
|
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 提现周期枚举类
|
* 提现周期枚举类
|
||||||
*
|
|
||||||
* @author: hzs
|
|
||||||
*/
|
*/
|
||||||
@AllArgsConstructor
|
@AllArgsConstructor
|
||||||
@Getter
|
@Getter
|
||||||
|
@ -16,32 +13,32 @@ public enum ECycle {
|
||||||
/**
|
/**
|
||||||
* 周一
|
* 周一
|
||||||
*/
|
*/
|
||||||
MONDAY( 1, "周一", EnumsPrefixConstants.CYCLE + "1"),
|
MONDAY(1, "周一"),
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 周二
|
* 周二
|
||||||
*/
|
*/
|
||||||
TUESDAY( 2, "周二", EnumsPrefixConstants.CYCLE + "2"),
|
TUESDAY(2, "周二"),
|
||||||
/**
|
/**
|
||||||
* 周三
|
* 周三
|
||||||
*/
|
*/
|
||||||
WEDNESDAY( 3, "周三", EnumsPrefixConstants.CYCLE + "3"),
|
WEDNESDAY(3, "周三"),
|
||||||
/**
|
/**
|
||||||
* 周四
|
* 周四
|
||||||
*/
|
*/
|
||||||
THURSDAY( 4, "周四", EnumsPrefixConstants.CYCLE + "4"),
|
THURSDAY(4, "周四"),
|
||||||
/**
|
/**
|
||||||
* 周五
|
* 周五
|
||||||
*/
|
*/
|
||||||
FRIDAY( 5, "周五", EnumsPrefixConstants.CYCLE + "5"),
|
FRIDAY(5, "周五"),
|
||||||
/**
|
/**
|
||||||
* 周六
|
* 周六
|
||||||
*/
|
*/
|
||||||
SATURDAY( 6, "周六", EnumsPrefixConstants.CYCLE + "6"),
|
SATURDAY(6, "周六"),
|
||||||
/**
|
/**
|
||||||
* 周日
|
* 周日
|
||||||
*/
|
*/
|
||||||
SUNDAY( 7, "周日", EnumsPrefixConstants.CYCLE + "7"),
|
SUNDAY(7, "周日"),
|
||||||
|
|
||||||
;
|
;
|
||||||
|
|
||||||
|
@ -54,11 +51,6 @@ public enum ECycle {
|
||||||
* 显示标签
|
* 显示标签
|
||||||
*/
|
*/
|
||||||
private final String label;
|
private final String label;
|
||||||
/**
|
|
||||||
* 国际化翻译key值
|
|
||||||
*/
|
|
||||||
private final String key;
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,13 +5,7 @@ import lombok.AllArgsConstructor;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
|
||||||
* 比率类型
|
* 比率类型
|
||||||
* @Description:
|
|
||||||
* @Author: ljc
|
|
||||||
* @Time: 2023/5/8 11:23
|
|
||||||
* @Classname: ERatioType
|
|
||||||
* @Package_name: com.hzs.common.core.enums
|
|
||||||
*/
|
*/
|
||||||
@AllArgsConstructor
|
@AllArgsConstructor
|
||||||
@Getter
|
@Getter
|
||||||
|
|
|
@ -11,29 +11,33 @@ import lombok.Getter;
|
||||||
@Getter
|
@Getter
|
||||||
public enum EWaresPermissionType {
|
public enum EWaresPermissionType {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 指定会员
|
||||||
|
*/
|
||||||
|
MEMBER(6, "指定会员", 0),
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 1=血缘可见
|
* 1=血缘可见
|
||||||
*/
|
*/
|
||||||
BLOOD_ALLOW(1, "血缘可见", 0, EnumsPrefixConstants.ENU_WARES + "1"),
|
BLOOD_ALLOW(1, "血缘可见", 0),
|
||||||
/**
|
/**
|
||||||
* 2=血缘禁止
|
* 2=血缘禁止
|
||||||
*/
|
*/
|
||||||
BLOOD_STOP(2, "血缘禁止", 0, EnumsPrefixConstants.ENU_WARES + "2"),
|
BLOOD_STOP(2, "血缘禁止", 0),
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 安置可见
|
* 安置可见
|
||||||
*/
|
*/
|
||||||
PLACE_ALLWO(3, "安置可见", 0, EnumsPrefixConstants.ENU_WARES + "3"),
|
PLACE_ALLWO(3, "安置可见", 0),
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 安置禁止
|
* 安置禁止
|
||||||
*/
|
*/
|
||||||
PLACE_STOP(4, "安置禁止", 0, EnumsPrefixConstants.ENU_WARES + "4"),
|
PLACE_STOP(4, "安置禁止", 0),
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 全部
|
* 全部
|
||||||
*/
|
*/
|
||||||
AUTH_ORITY_TYPE(5, "全部", 0, EnumsPrefixConstants.ENU_WARES + "5"),
|
AUTH_ORITY_TYPE(5, "全部", 0),
|
||||||
;
|
;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -48,10 +52,6 @@ public enum EWaresPermissionType {
|
||||||
* 是否启用(0=是,1=否) -- 来源EYesNo
|
* 是否启用(0=是,1=否) -- 来源EYesNo
|
||||||
*/
|
*/
|
||||||
private final int enable;
|
private final int enable;
|
||||||
/**
|
|
||||||
* 国际化翻译key值
|
|
||||||
*/
|
|
||||||
private final String key;
|
|
||||||
|
|
||||||
public static String getEnumLabelByValue(Integer value) {
|
public static String getEnumLabelByValue(Integer value) {
|
||||||
if (null == value) {
|
if (null == value) {
|
||||||
|
|
|
@ -535,24 +535,16 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils {
|
||||||
LocalDate today = getLocalDate(date);
|
LocalDate today = getLocalDate(date);
|
||||||
return ((Long) toLocalDate(date1).until(today, ChronoUnit.DAYS)).intValue();
|
return ((Long) toLocalDate(date1).until(today, ChronoUnit.DAYS)).intValue();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 计算2个日期之间的天数
|
* 获得2个日期总共差的天数
|
||||||
*
|
*
|
||||||
* @param date1 日期
|
* @param date1 第一个日期
|
||||||
* @param date 日期2
|
* @param date 第二个日期
|
||||||
* @return Integer
|
* @return Integer
|
||||||
*/
|
*/
|
||||||
public static Boolean betweenMonth(Date date1, Date... date) {
|
public static Integer betweenMonth(Date date1, Date... date) {
|
||||||
LocalDate localDate = LocalDate.now();
|
LocalDate today = getLocalDate(date);
|
||||||
if (date.length > 0) {
|
return ((Long) toLocalDate(date1).until(today, ChronoUnit.MONTHS)).intValue();
|
||||||
localDate = toLocalDate(date[0]);
|
|
||||||
}
|
|
||||||
LocalDate localDate1 = toLocalDate(date1);
|
|
||||||
if (localDate.getMonth() == localDate1.getMonth()) {
|
|
||||||
return Boolean.TRUE;
|
|
||||||
}
|
|
||||||
return Boolean.FALSE;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -78,23 +78,38 @@ public class CuMemberRetailRangeExt extends CuMemberRetailRange {
|
||||||
private String countryName;
|
private String countryName;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 新増盒数(不管激活,全累计)
|
* 新増盒数(不管激活,全累计) -- 秒结使用
|
||||||
*/
|
*/
|
||||||
private BigDecimal allNewBoxNum;
|
private BigDecimal allNewBoxNum;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 新増业绩(不管激活,全累计)
|
* 新増业绩(不管激活,全累计) -- 秒结使用
|
||||||
*/
|
*/
|
||||||
private BigDecimal allNewConsumePv;
|
private BigDecimal allNewConsumePv;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 团队新増盒数(不管激活,全累计)
|
* 团队新増盒数(不管激活,全累计) -- 秒结、日结使用
|
||||||
*/
|
*/
|
||||||
private BigDecimal allTeamNewBoxNum;
|
private BigDecimal allTeamNewBoxNum;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 团队新増业绩(不管激活,全累计)
|
* 团队新増业绩(不管激活,全累计) -- 秒结使用
|
||||||
*/
|
*/
|
||||||
private BigDecimal allTeamNewPv;
|
private BigDecimal allTeamNewPv;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 团队累计盒数(不管激活,全累计) -- 日结使用
|
||||||
|
*/
|
||||||
|
private BigDecimal allTeamBoxNum;
|
||||||
|
/**
|
||||||
|
* 团队月累计盒数(不管激活,全累计) -- 日结使用
|
||||||
|
*/
|
||||||
|
private BigDecimal allTeamMonthBoxNum;
|
||||||
|
/**
|
||||||
|
* 团队累计消费pv(不管激活,全累计) -- 日结使用
|
||||||
|
*/
|
||||||
|
private BigDecimal allTeamConsumePv;
|
||||||
|
/**
|
||||||
|
* 团队月累计消费pv(不管激活,全累计) -- 日结使用
|
||||||
|
*/
|
||||||
|
private BigDecimal allTeamMonthPv;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -19,6 +19,10 @@ public class SaOrderWaresExt extends SaOrderWares {
|
||||||
* 复购区域分红
|
* 复购区域分红
|
||||||
*/
|
*/
|
||||||
private BigDecimal areaIncome;
|
private BigDecimal areaIncome;
|
||||||
|
/**
|
||||||
|
* 复购区域分红方式
|
||||||
|
*/
|
||||||
|
private Integer areaIncomeType;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 商品上传盒数
|
* 商品上传盒数
|
||||||
|
|
|
@ -228,5 +228,10 @@ public class BdWares extends BaseEntity {
|
||||||
@TableField("BOX_NUM")
|
@TableField("BOX_NUM")
|
||||||
private BigDecimal boxNum;
|
private BigDecimal boxNum;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 复购区域分红方式(1=比率,2=比值)
|
||||||
|
*/
|
||||||
|
@TableField("AREA_INCOME_TYPE")
|
||||||
|
private Integer areaIncomeType;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue