From 1dde630c1c04cab7a25cbfed2034cb53ffae98b3 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Wed, 2 Jul 2025 15:19:54 +0800 Subject: [PATCH 01/16] =?UTF-8?q?##=20=E7=A7=92=E7=BB=93=E3=80=81=E6=97=A5?= =?UTF-8?q?=E7=BB=93=E9=92=88=E5=AF=B9=E6=9C=AA=E6=BF=80=E6=B4=BB=E4=BC=9A?= =?UTF-8?q?=E5=91=98=E6=B7=BB=E5=8A=A0=E5=AD=97=E6=AE=B5=E7=B4=AF=E8=AE=A1?= =?UTF-8?q?=E5=9B=A2=E9=98=9F=E6=95=B0=E6=8D=AE=EF=BC=8C=E4=B8=BA=E6=8E=A8?= =?UTF-8?q?=E8=8D=90=E4=BA=BA=E5=A4=84=E7=90=86=E5=A4=A7=E5=B0=8F=E5=B8=82?= =?UTF-8?q?=E5=9C=BA=E5=A4=84=E7=90=86=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/CuMemberTreeServiceImpl.java | 2 +- .../service/impl/BonusSettleRangeHandle.java | 65 +++++-- .../achieve/CuMemberRetailRangeMapper.xml | 171 ++++++++---------- .../bonus/achieve/CuMemberTreeMapper.xml | 6 +- .../achieve/ext/CuMemberRetailRangeExt.java | 27 ++- 5 files changed, 151 insertions(+), 120 deletions(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberTreeServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberTreeServiceImpl.java index 3eb97515..0c2ef6e4 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberTreeServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberTreeServiceImpl.java @@ -42,7 +42,7 @@ public class CuMemberTreeServiceImpl extends ServiceImpl memberRetailRangeExtList; 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()); @@ -274,9 +276,12 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { sourceMemberRangeExt.setNewConsumePv(ComputeUtil.computeSubtract(sourceMemberRangeExt.getNewConsumePv(), orderAchieve)); sourceMemberRangeExt.setConsumePv(ComputeUtil.computeSubtract(sourceMemberRangeExt.getConsumePv(), orderAchieve)); sourceMemberRangeExt.setMonthConsumePv(ComputeUtil.computeSubtract(sourceMemberRangeExt.getMonthConsumePv(), orderAchieve)); - // 累计盒数、业绩,不管激活不激活都处理,兼容不激活判断显示有问题 - sourceMemberRangeExt.setAllNewBoxNum(sourceMemberRangeExt.getAllNewBoxNum().subtract(boxNum)); - sourceMemberRangeExt.setAllNewConsumePv(sourceMemberRangeExt.getAllNewConsumePv().subtract(orderAchieve)); + if (isSecond) { + // 当天 + // 累计盒数、业绩,不管激活不激活都处理,兼容不激活判断显示有问题 + sourceMemberRangeExt.setAllNewBoxNum(sourceMemberRangeExt.getAllNewBoxNum().subtract(boxNum)); + sourceMemberRangeExt.setAllNewConsumePv(sourceMemberRangeExt.getAllNewConsumePv().subtract(orderAchieve)); + } // 会员等级map Map cuMemberGradeMap = new HashMap<>(); @@ -289,7 +294,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { cuMemberGradeMap, cuMemberAwardsMap, cuMemberShareAwardsMap, sourceMemberRangeExt); // 计算团队业绩、盒数,计算等级、奖衔 List cuMemberRetailRangeExtList = calculateRetailBackRangeGradeAwards(currentPeriod, memberRangeExtMap, rangeTableName, saOrderExt, retailTeamGradeMap, retailAwardsMap, - secondRangeTableName, boxNum, cuMemberGradeMap, cuMemberAwardsMap, cuMemberShareAwardsMap); + secondRangeTableName, boxNum, cuMemberGradeMap, cuMemberAwardsMap, cuMemberShareAwardsMap, isSecond); cuMemberRetailRangeExtList.add(sourceMemberRangeExt); // 查询期间的等级 @@ -532,6 +537,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { sourceMemberRangeExt.setNewConsumePv(ComputeUtil.computeAdd(sourceMemberRangeExt.getNewConsumePv(), orderAchieve)); sourceMemberRangeExt.setConsumePv(ComputeUtil.computeAdd(sourceMemberRangeExt.getConsumePv(), orderAchieve)); sourceMemberRangeExt.setMonthConsumePv(ComputeUtil.computeAdd(sourceMemberRangeExt.getMonthConsumePv(), orderAchieve)); + // 计算自己等级、奖衔等 calculateGradeAwards(period, memberRangeExtMap, rangeTableName, saOrderExt, retailTeamGradeMap, retailAwardsMap, null, cuMemberGradeList, cuMemberAwardsList, sourceMemberRangeExt, activateMap); @@ -631,8 +637,19 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { } // 累计盒数、业绩,不管激活不激活都处理,兼容不激活判断显示有问题 - targetMemberRangeExt.setAllTeamNewBoxNum(targetMemberRangeExt.getAllTeamNewBoxNum().add(boxNum)); - targetMemberRangeExt.setAllTeamNewPv(targetMemberRangeExt.getAllTeamNewPv().add(orderAchieve)); + if (null != secondRangeTableName) { + // 秒结处理 + 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()) { @@ -658,7 +675,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { } /** - * 计算等级、奖衔 + * 计算等级、奖衔 -- 日结、秒结 */ private void calculateGradeAwards(Integer period, Map memberRangeExtMap, String rangeTableName, SaOrderExt saOrderExt, Map retailTeamGradeMap, Map retailAwardsMap, @@ -674,7 +691,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { for (Integer gradeValue : retailTeamGradeMap.keySet()) { BdGrade bdGrade = retailTeamGradeMap.get(gradeValue); - // 如果等级值 大于 当前会员等级值 并且 等级要求累计盒数 小于等于 团队累计盒数 + 累计消费盒数,则可以进行升级 + // 如果等级值 大于 当前会员等级值 并且 等级要求累计盒数 小于等于 团队累计盒数 + 累计消费盒数 + 大区注水 + 小区注水,则可以进行升级 if (bdGrade.getGradeValue() > targetMemberRangeExt.getGradeValue() && bdGrade.getBoxTotal().compareTo( targetMemberRangeExt.getTeamBoxNum().add(targetMemberRangeExt.getConsumeBoxNum()).add(targetMemberRangeExt.getBigBoxNum()).add(targetMemberRangeExt.getSmallBoxNum()) @@ -682,7 +699,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { ) { // 验证小区,计算小区累计盒数 查询伞下会员 List cuMemberRangeExtList; - if (secondRangeTableName != null) { + if (null != secondRangeTableName) { // 会员表 关联 秒结表 和 昨日结算表,查询订单会员直推数据 cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberSecondRangeExtByParent(rangeTableName, secondRangeTableName, targetMemberRangeExt.getPkMember()); } else { @@ -707,7 +724,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember()); } // 伞下团队累计盒数 + 自己消费盒数 - BigDecimal areaBoxNum = cuMemberRetailRangeExt.getTeamBoxNum().add(cuMemberRetailRangeExt.getConsumeBoxNum()); + BigDecimal areaBoxNum = cuMemberRetailRangeExt.getAllTeamBoxNum().add(cuMemberRetailRangeExt.getConsumeBoxNum()); if (areaBoxNum.compareTo(bigBoxNum) > 0) { // 实际订单累计盒数 大于 累计消费盒数,实际订单累计盒数为大区 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) { // 小区盒数 大于等于 升级小区盒数 CuMemberGrade cuMemberGrade = getCuMemberGrade(period, targetMemberRangeExt, bdGrade); @@ -822,11 +839,12 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { } /** - * 计算团队极差奖衔 + * 计算团队极差奖衔 -- 退单秒结 */ public List calculateRetailBackRangeGradeAwards(Integer period, Map memberRangeExtMap, String rangeTableName, SaOrderExt saOrderExt, Map retailTeamGradeMap, Map retailAwardsMap, String secondRangeTableName, BigDecimal boxNum, - Map cuMemberGradeMap, Map cuMemberAwardsMap, Map cuMemberShareAwardsMap) { + Map cuMemberGradeMap, Map cuMemberAwardsMap, Map cuMemberShareAwardsMap, + boolean isSecond) { List cuMemberRetailRangeExtList = new ArrayList<>(); // 订单会员 CuMemberRetailRangeExt sourceMemberRangeExt = memberRangeExtMap.get(saOrderExt.getPkMember()); @@ -837,8 +855,19 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { BigDecimal orderAmount = saOrderExt.getOrderAmount(); while (targetMemberRangeExt != null) { // 累计盒数、业绩,不管激活不激活都处理,兼容不激活判断显示有问题 - targetMemberRangeExt.setAllTeamNewBoxNum(targetMemberRangeExt.getAllTeamNewBoxNum().subtract(boxNum)); - targetMemberRangeExt.setAllTeamNewPv(targetMemberRangeExt.getAllTeamNewPv().subtract(orderAchieve)); + if (isSecond) { + // 当天,秒结处理 + 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()) { @@ -901,7 +930,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember()); } // 伞下团队累计盒数 + 自己消费盒数 - BigDecimal areaBoxNum = cuMemberRetailRangeExt.getTeamBoxNum().add(cuMemberRetailRangeExt.getConsumeBoxNum()); + BigDecimal areaBoxNum = cuMemberRetailRangeExt.getAllTeamBoxNum().add(cuMemberRetailRangeExt.getConsumeBoxNum()); if (areaBoxNum.compareTo(bigBoxNum) > 0) { // 实际订单累计盒数 大于 累计消费盒数,实际订单累计盒数为大区 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) { // 小区盒数 大于等于 升级小区盒数 CuMemberGrade cuMemberGrade = getCuMemberGrade(period, targetMemberRangeExt, bdGrade); diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml index 55e5bf42..0d9abd36 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml @@ -65,8 +65,13 @@ + + + + + @@ -142,7 +147,10 @@ #{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.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 ) 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_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.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 @@ -218,9 +229,9 @@ #{item.pkAwards} pk_awards, #{item.pkShareAwards} pk_share_awards, #{item.newBoxNum} new_box_num, #{item.newConsumePv} new_consume_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.allTeamNewBoxNum} all_team_new_box_num, #{item.allTeamNewPv} all_team_new_pv, - #{item.teamNewAmount} team_new_amount, #{item.enableStatus} enable_status + #{item.allTeamNewBoxNum} all_team_new_box_num, #{item.allTeamNewPv} all_team_new_pv from dual ) 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.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_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_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 + a.all_team_new_box_num = b.all_team_new_box_num, a.all_team_new_pv = b.all_team_new_pv @@ -362,6 +373,12 @@ 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, bw.range_ratio, bw.month_repurchase_ratio, bw.benefit_avg_ratio, @@ -410,6 +427,10 @@ a.big_team_pv, a.small_team_pv, 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, consume_box_num, month_box_num, @@ -558,6 +579,16 @@ bw.awards_value, bw.awards_name, 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.category, bw.range_ratio, @@ -649,32 +680,36 @@ a.pk_share_awards, cm.income_status, cm.pay_time, - nvl(b.pk_rate, bt.pk_id) pk_rate, - nvl(cm.is_activate, a.enable_status) enable_status, + nvl(b.pk_rate, bt.pk_id) pk_rate, + nvl(cm.is_activate, a.enable_status) enable_status, a.new_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.consume_box_num, 0) + a.new_box_num consume_box_num, + nvl(b.month_box_num, 0) + a.new_box_num month_box_num, a.new_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.consume_pv, 0) + a.new_consume_pv consume_pv, + nvl(b.month_consume_pv, 0) + a.new_consume_pv month_consume_pv, a.team_new_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_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, a.team_new_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_consume_pv, 0) + a.team_new_pv team_consume_pv, + nvl(b.team_month_pv, 0) + a.team_new_pv team_month_pv, a.team_new_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.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, + 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.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, a.all_new_box_num, a.all_new_consume_pv, a.all_team_new_box_num, 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_name, bw.awards_value, @@ -683,9 +718,9 @@ bw.month_repurchase_ratio, bw.benefit_avg_ratio, bw.benefit_share_ratio, - bws.awards_value share_awards_value, - br.name country_name, - cr.county region_address, + bws.awards_value share_awards_value, + br.name country_name, + cr.county region_address, bv.region_vertex_pk_id from ( select * @@ -714,77 +749,25 @@ From 6f4ed94aabbe1f9b72cf4d155c7b4a4ba93d3e30 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Wed, 2 Jul 2025 15:49:40 +0800 Subject: [PATCH 03/16] =?UTF-8?q?##=20=E5=A4=8D=E8=B4=AD=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E5=8C=BA=E5=9F=9F=E5=88=86=E7=BA=A2=E6=96=B9=E5=BC=8F=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sale/wares/controller/manage/BdWaresController.java | 1 + .../main/java/com/hzs/sale/wares/param/WaresParams.java | 5 +++++ .../hzs/sale/wares/service/impl/BdWaresServiceImpl.java | 7 ------- .../src/main/resources/mapper/sale/wares/BdWaresMapper.xml | 1 + .../main/java/com/hzs/common/core/enums/ERatioType.java | 6 ------ .../java/com/hzs/common/domain/sale/wares/BdWares.java | 5 +++++ 6 files changed, 12 insertions(+), 13 deletions(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/manage/BdWaresController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/manage/BdWaresController.java index 27503121..a4ab0b76 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/manage/BdWaresController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/manage/BdWaresController.java @@ -513,6 +513,7 @@ public class BdWaresController extends BaseController { waresParams.setSortStatus(wares.getSortStatus()); waresParams.setSystemType(waresExtend.getSystemType()); waresParams.setAreaIncome(wares.getAreaIncome()); + waresParams.setAreaIncomeType(wares.getAreaIncomeType()); waresParams.setBoxNum(wares.getBoxNum()); BdAreaClassify parentAreaClassify = iBdAreaClassifyService.getAreaClassify(wares.getPkAreaClassify()); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/param/WaresParams.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/param/WaresParams.java index 64b4e14a..41fab650 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/param/WaresParams.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/param/WaresParams.java @@ -409,6 +409,11 @@ public class WaresParams implements Serializable { */ private BigDecimal areaIncome; + /** + * 复购区域分红方式(1=比率,2=比值) + */ + private BigDecimal areaIncomeType; + /** * 商品上传盒数 */ diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresServiceImpl.java index 1311563f..440668e7 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresServiceImpl.java @@ -27,9 +27,6 @@ import com.hzs.sale.wares.param.WaresDetailParams; import com.hzs.sale.wares.mapper.BdWaresMapper; import com.hzs.sale.wares.service.*; 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.ILabelServiceApi; import com.hzs.system.config.IRangeServiceApi; @@ -87,13 +84,9 @@ public class BdWaresServiceImpl extends ServiceImpl impl @DubboReference IMemberServiceApi iMemberServiceApi; @DubboReference - ICurrencyServiceApi iCurrencyServiceApi; - @DubboReference IAwardsServiceApi iAwardsServiceApi; @DubboReference IRangeServiceApi iRangeServiceApi; - @DubboReference - ITransactionServiceApi iTransactionServiceApi; @Override @Transactional(rollbackFor = Exception.class) diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml index 50f93263..fcb01e90 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml @@ -50,6 +50,7 @@ + diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ERatioType.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ERatioType.java index f4ab28a8..d744e579 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ERatioType.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ERatioType.java @@ -5,13 +5,7 @@ import lombok.AllArgsConstructor; import lombok.Getter; /** - * * 比率类型 - * @Description: - * @Author: ljc - * @Time: 2023/5/8 11:23 - * @Classname: ERatioType - * @Package_name: com.hzs.common.core.enums */ @AllArgsConstructor @Getter diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/wares/BdWares.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/wares/BdWares.java index ffe5fd20..88179cdc 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/wares/BdWares.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/wares/BdWares.java @@ -228,5 +228,10 @@ public class BdWares extends BaseEntity { @TableField("BOX_NUM") private BigDecimal boxNum; + /** + * 复购区域分红方式(1=比率,2=比值) + */ + @TableField("AREA_INCOME_TYPE") + private BigDecimal areaIncomeType; } From 97aa32d3a015bae28c259055be66879700f708c9 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Wed, 2 Jul 2025 16:46:42 +0800 Subject: [PATCH 04/16] =?UTF-8?q?##=20=E5=A4=8D=E8=B4=AD=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E5=8C=BA=E5=9F=9F=E5=88=86=E7=BA=A2=E6=96=B9=E5=BC=8F=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/hzs/sale/wares/param/WaresParams.java | 2 +- .../java/com/hzs/common/domain/sale/ext/SaOrderWaresExt.java | 4 ++++ .../main/java/com/hzs/common/domain/sale/wares/BdWares.java | 2 +- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/param/WaresParams.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/param/WaresParams.java index 41fab650..9cbc62cd 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/param/WaresParams.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/param/WaresParams.java @@ -412,7 +412,7 @@ public class WaresParams implements Serializable { /** * 复购区域分红方式(1=比率,2=比值) */ - private BigDecimal areaIncomeType; + private Integer areaIncomeType; /** * 商品上传盒数 diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/ext/SaOrderWaresExt.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/ext/SaOrderWaresExt.java index 880b6b1b..0ce59436 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/ext/SaOrderWaresExt.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/ext/SaOrderWaresExt.java @@ -19,6 +19,10 @@ public class SaOrderWaresExt extends SaOrderWares { * 复购区域分红 */ private BigDecimal areaIncome; + /** + * 复购区域分红方式 + */ + private Integer areaIncomeType; /** * 商品上传盒数 diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/wares/BdWares.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/wares/BdWares.java index 88179cdc..7e849b40 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/wares/BdWares.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/wares/BdWares.java @@ -232,6 +232,6 @@ public class BdWares extends BaseEntity { * 复购区域分红方式(1=比率,2=比值) */ @TableField("AREA_INCOME_TYPE") - private BigDecimal areaIncomeType; + private Integer areaIncomeType; } From 5be813550ef96f09011658f53d2599a42acc7923 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Wed, 2 Jul 2025 18:08:33 +0800 Subject: [PATCH 05/16] =?UTF-8?q?##=20=E5=A4=8D=E8=B4=AD=E5=8C=BA=E5=9F=9F?= =?UTF-8?q?=E5=88=86=E7=BA=A2=E6=94=B9=E4=B8=BA=E6=94=AF=E6=8C=81=E6=AF=94?= =?UTF-8?q?=E7=8E=87+=E6=AF=94=E5=80=BC=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/BonusSettleRangeHandle.java | 39 ++++++----- .../mapper/bonus/order/BonusOrderMapper.xml | 65 ++++++++++++++++++- 2 files changed, 88 insertions(+), 16 deletions(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java index f4c6c3f8..bbe9b5d4 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java @@ -552,25 +552,27 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { ) { // 注册或升级订单并且存在盒数产品,才有 直推级差收益 和 平级收益 for (SaOrderWaresExt saOrderItems : saOrderExt.getOrderWaresExtList()) { - // 直推级差 + 平级收益 - cuMemberBonusRangeList.addAll(calculateRetailRangeBonus(memberRangeExtMap, cuMemberBonusMap, gradeMap, bonusConfigDTO, period, saOrderItems, saOrderExt)); + if (RetailConstants.ALL_BOX_WARES_LIST.contains(saOrderItems.getWaresCode())) { + // 盒数商品 计算 直推级差 + 平级收益 + cuMemberBonusRangeList.addAll(calculateRetailRangeBonus(memberRangeExtMap, cuMemberBonusMap, gradeMap, bonusConfigDTO, period, saOrderItems, saOrderExt)); + } // 计算完奖金算等级 - if (EOrderType.RETAIL_REGISTER.getValue() == saOrderExt.getOrderType() - || EOrderType.RETAIL_UPGRADE.getValue() == saOrderExt.getOrderType()) { - // 订单存在升级记录 - if (memberLevelMap.containsKey(saOrderExt.getPkId())) { - CuMemberLevel cuMemberLevel = memberLevelMap.get(saOrderExt.getPkId()); - if (gradeIdMap.containsKey(cuMemberLevel.getNewLevel())) { - BdGrade bdGrade = gradeIdMap.get(cuMemberLevel.getNewLevel()); - if (bdGrade.getGradeValue() > sourceMemberRangeExt.getGradeValue()) { - sourceMemberRangeExt.setPkGrade(bdGrade.getPkId()); - sourceMemberRangeExt.setGradeValue(bdGrade.getGradeValue()); - sourceMemberRangeExt.setGradeName(bdGrade.getGradeName()); - } +// if (EOrderType.RETAIL_REGISTER.getValue() == saOrderExt.getOrderType() +// || EOrderType.RETAIL_UPGRADE.getValue() == saOrderExt.getOrderType()) { +// // 订单存在升级记录 + if (memberLevelMap.containsKey(saOrderExt.getPkId())) { + CuMemberLevel cuMemberLevel = memberLevelMap.get(saOrderExt.getPkId()); + if (gradeIdMap.containsKey(cuMemberLevel.getNewLevel())) { + BdGrade bdGrade = gradeIdMap.get(cuMemberLevel.getNewLevel()); + if (bdGrade.getGradeValue() > sourceMemberRangeExt.getGradeValue()) { + sourceMemberRangeExt.setPkGrade(bdGrade.getPkId()); + sourceMemberRangeExt.setGradeValue(bdGrade.getGradeValue()); + sourceMemberRangeExt.setGradeName(bdGrade.getGradeName()); } } } +// } } } @@ -1403,9 +1405,16 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { } else if (EOrderType.RETAIL_REPURCHASE.getValue() == saOrder.getOrderType()) { // 复购订单, 区域收益 = 复购区域分红 * 商品数量 for (SaOrderWaresExt saOrderWaresExt : saOrder.getOrderWaresExtList()) { - benefitIncome = benefitIncome.add(saOrderWaresExt.getAreaIncome().multiply(new BigDecimal(saOrderWaresExt.getWaresQuantity()))); + if (ERatioType.VALUE.getValue() == saOrderWaresExt.getAreaIncomeType()) { + // 按比值处理 + 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).multiply(new BigDecimal(saOrderWaresExt.getWaresQuantity()))); + } } } + CuMemberBonusDetail cuMemberBonusDetail = packageBenefitIncome(bonusConfigDTO, period, cuMemberBonusMap, null, RetailConstants.SAME_RATIO, benefitIncome, cuMemberRetailRangeExt, EBonusItems.RETAIL_AREA_INCOME.getValue(), BonusMsgConstants.RETAIL_AREA_INCOME); // 计算业绩以盒数做为基础 diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/order/BonusOrderMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/order/BonusOrderMapper.xml index 7b1ad32b..1ea855a1 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/order/BonusOrderMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/order/BonusOrderMapper.xml @@ -61,6 +61,7 @@ + @@ -154,9 +155,10 @@ nvl(st.pk_order,0) pk_order, nvl(st.pk_wares,0) pk_wares, nvl(st.wares_price,0) wares_price, - nvl(bw.wares_code,'~') wares_code, nvl(st.wares_quantity,0) 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 sa_order_wares st @@ -164,6 +166,67 @@ left join bd_wares bw on bw.pk_id = st.pk_wares and bw.del_flag = 0 where so.order_status = 1 + and so.order_type in (41, 42) + + and so.order_code=#{orderCode} + + 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) + + and so.order_code=#{orderCode} + + 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) and so.order_code=#{orderCode} From a2e4fe6f8bf4e85a91a51b268abfc8accd2263e1 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Thu, 3 Jul 2025 08:51:16 +0800 Subject: [PATCH 06/16] =?UTF-8?q?##=20=E5=88=9B=E5=BB=BA=E7=A7=92=E7=BB=93?= =?UTF-8?q?=E8=A1=A8=E8=AF=AD=E5=8F=A5=E8=B0=83=E6=95=B4=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml index 3599979b..d71901c4 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml @@ -478,7 +478,7 @@ all_new_box_num number(10,2) 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_pv number(17,6) default 0 not null, + all_team_new_pv number(17,6) default 0 not null ) From bf6c3198c6767b91d9052caf1611a49993168043 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Thu, 3 Jul 2025 09:06:50 +0800 Subject: [PATCH 07/16] =?UTF-8?q?##=20=E5=88=9B=E5=BB=BA=E6=97=A5=E7=BB=93?= =?UTF-8?q?=E8=A1=A8=E8=AF=AD=E5=8F=A5=E8=B0=83=E6=95=B4=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../bonus/achieve/CuMemberTreeMapper.xml | 102 +++++++++--------- 1 file changed, 52 insertions(+), 50 deletions(-) diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml index d71901c4..78dd90e6 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml @@ -485,56 +485,58 @@ create table ${tableName} ( - pk_member NUMBER(20) not null, - pk_parent NUMBER(20) not null, - member_code VARCHAR2(30) not null, - member_name VARCHAR2(100) not null, - customer_type NUMBER(2) not null, - phone VARCHAR2(40) not null, - pk_grade NUMBER(4) not null, - pk_awards number(4) default 10 not null, - pk_share_awards number(4) default 10 not null, - enable_status number(2) default 1 not null, - account_status number(1) default 0 not null, - pay_status NUMBER(2) default 0 not null, - pay_time DATE, - category number(2) default 0 not null, - purchase_status number(2) default 0 not null, - income_status number(2) default 0 not null, - pk_team_code number(20), - pk_center_code number(20), - pk_vertex number(20), - pk_settle_country number(4) not null, - is_real_name NUMBER(1) default 1 not null, - pk_country number(4) default 1 not null, - system_type NUMBER(2) default 2 not null, - pk_rate NUMBER(6), - new_box_num number(10,2) default 0 not null, - consume_box_num number(10,2) default 0 not null, - month_box_num number(10,2) default 0 not null, - new_consume_pv number(17,6) default 0 not null, - consume_pv number(17,6) default 0 not null, - month_consume_pv number(17,6) default 0 not null, - team_new_box_num number(10,2) default 0 not null, - team_box_num number(10,2) default 0 not null, - team_month_box_num number(10,2) default 0 not null, - team_new_pv number(17,6) default 0 not null, - team_consume_pv number(17,6) default 0 not null, - team_month_pv number(17,6) default 0 not null, - team_new_amount number(17,6) default 0 not null, - team_consume_amount number(17,6) default 0 not null, - team_month_amount number(17,6) default 0 not null, - recommend_num number(8) default 0 not null, - team_num number(8) default 0 not null, - region_address number(8) default 0 not null, - big_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, - 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 + pk_member NUMBER(20) not null, + pk_parent NUMBER(20) not null, + member_code VARCHAR2(30) not null, + member_name VARCHAR2(100) not null, + customer_type NUMBER(2) not null, + phone VARCHAR2(40) not null, + pk_grade NUMBER(4) not null, + pk_awards number(4) default 10 not null, + pk_share_awards number(4) default 10 not null, + enable_status number(2) default 1 not null, + account_status number(1) default 0 not null, + pay_status NUMBER(2) default 0 not null, + pay_time DATE, + category number(2) default 0 not null, + purchase_status number(2) default 0 not null, + income_status number(2) default 0 not null, + pk_team_code number(20), + pk_center_code number(20), + pk_vertex number(20), + pk_settle_country number(4) not null, + is_real_name NUMBER(1) default 1 not null, + pk_country number(4) default 1 not null, + system_type NUMBER(2) default 2 not null, + pk_rate NUMBER(6), + new_box_num number(10,2) default 0 not null, + consume_box_num number(10,2) default 0 not null, + month_box_num number(10,2) default 0 not null, + new_consume_pv number(17,6) default 0 not null, + consume_pv number(17,6) default 0 not null, + month_consume_pv number(17,6) default 0 not null, + team_new_box_num number(10,2) default 0 not null, + team_box_num number(10,2) default 0 not null, + team_month_box_num number(10,2) default 0 not null, + team_new_pv number(17,6) default 0 not null, + team_consume_pv number(17,6) default 0 not null, + team_month_pv number(17,6) default 0 not null, + team_new_amount number(17,6) default 0 not null, + team_consume_amount number(17,6) default 0 not null, + team_month_amount number(17,6) default 0 not null, + recommend_num number(8) default 0 not null, + team_num number(8) default 0 not null, + region_address number(8) default 0 not null, + big_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, + small_team_pv number(17,6) default 0 not null, + all_team_new_box_num number(10,2) default 0 not null, + all_team_box_num number(10,2) default 0 not null, + all_team_month_box_num number(10,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 ) From 6a7fac179915934e602c4b97ab3107b0d1c9db1f Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Thu, 3 Jul 2025 09:46:06 +0800 Subject: [PATCH 08/16] =?UTF-8?q?##=20=E7=A7=92=E7=BB=93=E6=9F=A5=E8=AF=A2?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E8=AF=AD=E5=8F=A5=E8=B0=83=E6=95=B4=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/bonus/achieve/CuMemberRetailRangeMapper.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml index 15cc7f96..875225af 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml @@ -760,7 +760,7 @@ 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, + nvl(b.all_team_month_pv, 0) + a.all_team_new_pv all_team_month_pv from cu_member cm left join ${secondTableName} a on cm.pk_id = a.pk_member From 297dc5fb6ccfe199c01ab670bcbfb97744dd3957 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Thu, 3 Jul 2025 09:53:23 +0800 Subject: [PATCH 09/16] =?UTF-8?q?##=20=E8=B0=83=E6=95=B4=E6=97=A5=E7=BB=93?= =?UTF-8?q?=E7=9B=92=E6=95=B0=E5=AD=97=E6=AE=B5=E9=95=BF=E5=BA=A6=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../resources/mapper/bonus/achieve/CuMemberTreeMapper.xml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml index 78dd90e6..1e31483c 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml @@ -531,9 +531,9 @@ small_box_num number(10,2) default 0 not null, big_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(10,2) default 0 not null, - all_team_box_num number(10,2) default 0 not null, - all_team_month_box_num number(10,2) 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 From d66b56ab02e7e8c4157acc445acc19bb9ad20f04 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Thu, 3 Jul 2025 10:06:01 +0800 Subject: [PATCH 10/16] =?UTF-8?q?##=20=E5=85=BC=E5=AE=B9oracle=E5=AD=97?= =?UTF-8?q?=E6=AE=B5=E4=B8=BA=E7=A9=BA=E5=A4=84=E7=90=86=E6=88=900?= =?UTF-8?q?=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../achieve/CuMemberRetailRangeMapper.xml | 68 +++++++++---------- 1 file changed, 34 insertions(+), 34 deletions(-) diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml index 875225af..90f5c15e 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml @@ -680,36 +680,36 @@ a.pk_share_awards, cm.income_status, cm.pay_time, - nvl(b.pk_rate, bt.pk_id) pk_rate, - nvl(cm.is_activate, a.enable_status) enable_status, + nvl(b.pk_rate, bt.pk_id) pk_rate, + nvl(cm.is_activate, a.enable_status) enable_status, a.new_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.consume_box_num, 0) + nvl(a.new_box_num, 0) consume_box_num, + nvl(b.month_box_num, 0) + nvl(a.new_box_num, 0) month_box_num, a.new_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.consume_pv, 0) + nvl(a.new_consume_pv, 0) consume_pv, + nvl(b.month_consume_pv, 0) + nvl(a.new_consume_pv, 0) month_consume_pv, a.team_new_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_box_num, 0) + nvl(a.team_new_box_num, 0) team_box_num, + nvl(b.team_month_box_num, 0) + nvl(a.team_new_box_num, 0) team_month_box_num, a.team_new_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_consume_pv, 0) + nvl(a.team_new_pv, 0) team_consume_pv, + nvl(b.team_month_pv, 0) + nvl(a.team_new_pv, 0) team_month_pv, a.team_new_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.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, + nvl(b.team_consume_amount, 0) + nvl(a.team_new_amount, 0) team_consume_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.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, a.all_new_box_num, a.all_new_consume_pv, a.all_team_new_box_num, 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, + 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_name, bw.awards_value, @@ -718,9 +718,9 @@ bw.month_repurchase_ratio, bw.benefit_avg_ratio, bw.benefit_share_ratio, - bws.awards_value share_awards_value, - br.name country_name, - cr.county region_address, + bws.awards_value share_awards_value, + br.name country_name, + cr.county region_address, bv.region_vertex_pk_id from ( select * @@ -749,18 +749,18 @@