## 秒结、日结针对未激活会员添加字段累计团队数据,为推荐人处理大小市场处理;

This commit is contained in:
cabbage 2025-07-02 15:19:54 +08:00
parent ce36d07ddc
commit 4e4452365f
5 changed files with 151 additions and 120 deletions

View File

@ -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) {

View File

@ -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.setAllNewConsumePv(sourceMemberRangeExt.getAllNewConsumePv().subtract(orderAchieve)); // 累计盒数业绩不管激活不激活都处理兼容不激活判断显示有问题
sourceMemberRangeExt.setAllNewBoxNum(sourceMemberRangeExt.getAllNewBoxNum().subtract(boxNum));
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);
@ -631,8 +637,19 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
} }
// 累计盒数业绩不管激活不激活都处理兼容不激活判断显示有问题 // 累计盒数业绩不管激活不激活都处理兼容不激活判断显示有问题
targetMemberRangeExt.setAllTeamNewBoxNum(targetMemberRangeExt.getAllTeamNewBoxNum().add(boxNum)); if (null != secondRangeTableName) {
targetMemberRangeExt.setAllTeamNewPv(targetMemberRangeExt.getAllTeamNewPv().add(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()) {
@ -658,7 +675,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 +691,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 +699,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 +724,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 +732,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);
@ -822,11 +839,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 +855,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 +930,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 +938,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);

View File

@ -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">
@ -142,7 +147,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 +162,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 +229,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 +241,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 +373,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 +427,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 +579,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,
@ -649,32 +680,36 @@
a.pk_share_awards, a.pk_share_awards,
cm.income_status, cm.income_status,
cm.pay_time, cm.pay_time,
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) + a.new_box_num consume_box_num,
nvl(b.month_box_num, 0) + a.new_box_num month_box_num, nvl(b.month_box_num, 0) + a.new_box_num 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) + a.new_consume_pv consume_pv,
nvl(b.month_consume_pv, 0) + a.new_consume_pv month_consume_pv, nvl(b.month_consume_pv, 0) + a.new_consume_pv 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) + a.team_new_box_num 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) + a.team_new_box_num 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) + a.team_new_pv team_consume_pv,
nvl(b.team_month_pv, 0) + a.team_new_pv team_month_pv, nvl(b.team_month_pv, 0) + a.team_new_pv 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) + a.team_new_amount team_consume_amount,
nvl(b.team_month_amount, 0) + a.team_new_amount team_month_amount, nvl(b.team_month_amount, 0) + a.team_new_amount 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,
nvl(b.small_team_pv, 0) small_team_pv, nvl(b.small_team_pv, 0) small_team_pv,
a.system_type, a.system_type,
a.all_new_box_num, a.all_new_box_num,
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) + a.all_team_new_box_num all_team_box_num,
nvl(b.all_team_month_box_num, 0) + a.all_team_new_pv all_team_month_box_num,
nvl(b.all_team_consume_pv, 0) + a.all_team_new_box_num all_team_consume_pv,
nvl(b.all_team_month_pv, 0) + a.all_team_new_pv all_team_month_pv,
bg.grade_value, bg.grade_value,
bg.grade_name, bg.grade_name,
bw.awards_value, bw.awards_value,
@ -683,9 +718,9 @@
bw.month_repurchase_ratio, bw.month_repurchase_ratio,
bw.benefit_avg_ratio, bw.benefit_avg_ratio,
bw.benefit_share_ratio, bw.benefit_share_ratio,
bws.awards_value share_awards_value, bws.awards_value share_awards_value,
br.name country_name, br.name country_name,
cr.county region_address, cr.county region_address,
bv.region_vertex_pk_id bv.region_vertex_pk_id
from ( from (
select * select *
@ -714,77 +749,25 @@
</select> </select>
<select id="queryCuMemberSecondRangeExtByParent" resultMap="CuMemberRetailRangeExt"> <select id="queryCuMemberSecondRangeExtByParent" resultMap="CuMemberRetailRangeExt">
select cm.pk_id pk_member, select cm.pk_id pk_member,
cm.pk_parent, cm.pk_parent,
nvl(b.month_consume_pv, 0) + nvl(a.new_consume_pv, 0) month_consume_pv, nvl(b.month_consume_pv, 0) + nvl(a.new_consume_pv, 0) month_consume_pv,
nvl(b.team_month_pv, 0) + nvl(a.team_new_pv, 0) team_month_pv, nvl(b.team_month_pv, 0) + nvl(a.team_new_pv, 0) team_month_pv,
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) + a.all_team_new_box_num all_team_box_num,
nvl(b.all_team_month_box_num, 0) + a.all_team_new_pv all_team_month_box_num,
nvl(b.all_team_consume_pv, 0) + a.all_team_new_box_num all_team_consume_pv,
nvl(b.all_team_month_pv, 0) + a.all_team_new_pv 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
left join ${rangeTableName} b
on cm.pk_id = b.pk_member
where cm.pk_parent = #{pkMember}
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 left join ${rangeTableName} b
on a.pk_member = b.pk_member on cm.pk_id = b.pk_member
inner join cu_member cm where cm.pk_parent = #{pkMember}
on cm.pk_id = a.pk_member and cm.del_flag = 0
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">

View File

@ -530,7 +530,11 @@
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_consume_box_num number(10,2) default 0 not null,
all_consume_pv number(17,6) default 0 not null,
all_team_box_num number(10,2) default 0 not null,
all_team_consume_pv number(17,6) default 0 not null
) )
</update> </update>

View File

@ -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;
} }