forked from angelo/java-retail-app
Compare commits
8 Commits
75c44c959f
...
26c9daeb19
| Author | SHA1 | Date |
|---|---|---|
|
|
26c9daeb19 | |
|
|
0cc8f7161c | |
|
|
fdd71547c3 | |
|
|
242dd90758 | |
|
|
1d76aac109 | |
|
|
f95ab28f03 | |
|
|
01447b0cf5 | |
|
|
9731627e0f |
|
|
@ -212,6 +212,8 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
||||||
BigDecimal boxNum = saOrderExt.getBoxNum();
|
BigDecimal boxNum = saOrderExt.getBoxNum();
|
||||||
// 个人累计消费pv
|
// 个人累计消费pv
|
||||||
BigDecimal orderAchieve = saOrderExt.getOrderAchieve();
|
BigDecimal orderAchieve = saOrderExt.getOrderAchieve();
|
||||||
|
// 个人累计消费金额
|
||||||
|
BigDecimal orderAmount = saOrderExt.getOrderAmount();
|
||||||
// 复购、重消,盒数、业绩算个人累计数据(盒数、业绩)
|
// 复购、重消,盒数、业绩算个人累计数据(盒数、业绩)
|
||||||
sourceMemberRangeExt.setNewBoxNum(sourceMemberRangeExt.getNewBoxNum().add(boxNum));
|
sourceMemberRangeExt.setNewBoxNum(sourceMemberRangeExt.getNewBoxNum().add(boxNum));
|
||||||
sourceMemberRangeExt.setConsumeBoxNum(sourceMemberRangeExt.getConsumeBoxNum().add(boxNum));
|
sourceMemberRangeExt.setConsumeBoxNum(sourceMemberRangeExt.getConsumeBoxNum().add(boxNum));
|
||||||
|
|
@ -219,6 +221,15 @@ 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));
|
||||||
|
sourceMemberRangeExt.setNewConsumeAmount(ComputeUtil.computeAdd(sourceMemberRangeExt.getNewConsumeAmount(), orderAmount));
|
||||||
|
sourceMemberRangeExt.setConsumeAmount(ComputeUtil.computeAdd(sourceMemberRangeExt.getConsumeAmount(), orderAmount));
|
||||||
|
sourceMemberRangeExt.setMonthConsumeAmount(ComputeUtil.computeAdd(sourceMemberRangeExt.getMonthConsumeAmount(), orderAmount));
|
||||||
|
if (EOrderType.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType()) {
|
||||||
|
// 复购
|
||||||
|
sourceMemberRangeExt.setMonthRepBoxNum(ComputeUtil.computeAdd(sourceMemberRangeExt.getMonthRepBoxNum(), boxNum));
|
||||||
|
sourceMemberRangeExt.setMonthRepConsumePv(ComputeUtil.computeAdd(sourceMemberRangeExt.getMonthRepConsumePv(), orderAchieve));
|
||||||
|
sourceMemberRangeExt.setMonthRepConsumeAmount(ComputeUtil.computeAdd(sourceMemberRangeExt.getMonthRepConsumeAmount(), orderAmount));
|
||||||
|
}
|
||||||
if (EYesNo.NO.getIntValue() == sourceMemberRangeExt.getEnableStatus()
|
if (EYesNo.NO.getIntValue() == sourceMemberRangeExt.getEnableStatus()
|
||||||
&& activateMap.containsKey(sourceMemberRangeExt.getPkMember())) {
|
&& activateMap.containsKey(sourceMemberRangeExt.getPkMember())) {
|
||||||
// 存在手动激活
|
// 存在手动激活
|
||||||
|
|
|
||||||
|
|
@ -68,6 +68,9 @@
|
||||||
new_consume_pv = 0,
|
new_consume_pv = 0,
|
||||||
consume_pv = 0,
|
consume_pv = 0,
|
||||||
month_consume_pv = 0,
|
month_consume_pv = 0,
|
||||||
|
new_consume_amount = 0,
|
||||||
|
consume_amount = 0,
|
||||||
|
month_consume_amount = 0,
|
||||||
team_new_box_num = 0,
|
team_new_box_num = 0,
|
||||||
team_box_num = 0,
|
team_box_num = 0,
|
||||||
team_month_box_num = 0,
|
team_month_box_num = 0,
|
||||||
|
|
@ -77,6 +80,9 @@
|
||||||
team_new_amount = 0,
|
team_new_amount = 0,
|
||||||
team_consume_amount = 0,
|
team_consume_amount = 0,
|
||||||
team_month_amount = 0,
|
team_month_amount = 0,
|
||||||
|
month_rep_box_num = 0,
|
||||||
|
month_rep_consume_pv = 0,
|
||||||
|
month_rep_consume_amount = 0,
|
||||||
recommend_num = 0,
|
recommend_num = 0,
|
||||||
team_num = 0,
|
team_num = 0,
|
||||||
enable_status = 1,
|
enable_status = 1,
|
||||||
|
|
@ -94,9 +100,11 @@
|
||||||
select pk_member, pk_grade, pk_awards, pk_share_awards, enable_status,
|
select pk_member, pk_grade, pk_awards, pk_share_awards, enable_status,
|
||||||
new_box_num, consume_box_num, month_box_num,
|
new_box_num, consume_box_num, month_box_num,
|
||||||
new_consume_pv, consume_pv, month_consume_pv,
|
new_consume_pv, consume_pv, month_consume_pv,
|
||||||
|
new_consume_amount, consume_amount, month_consume_amount,
|
||||||
team_new_box_num, team_box_num, team_month_box_num,
|
team_new_box_num, team_box_num, team_month_box_num,
|
||||||
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,
|
||||||
|
month_rep_box_num, month_rep_consume_pv, month_rep_consume_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
|
||||||
from ${yesterdayRangeTableName}
|
from ${yesterdayRangeTableName}
|
||||||
|
|
@ -106,6 +114,7 @@
|
||||||
update set
|
update set
|
||||||
a.consume_box_num = b.consume_box_num,
|
a.consume_box_num = b.consume_box_num,
|
||||||
a.consume_pv = b.consume_pv,
|
a.consume_pv = b.consume_pv,
|
||||||
|
a.consume_amount = b.consume_amount,
|
||||||
a.team_box_num = b.team_box_num,
|
a.team_box_num = b.team_box_num,
|
||||||
a.team_consume_pv = b.team_consume_pv,
|
a.team_consume_pv = b.team_consume_pv,
|
||||||
a.team_consume_amount = b.team_consume_amount,
|
a.team_consume_amount = b.team_consume_amount,
|
||||||
|
|
@ -117,9 +126,13 @@
|
||||||
<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.month_consume_amount = b.month_consume_amount
|
||||||
,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.month_rep_box_num = b.month_rep_box_num
|
||||||
|
,a.month_rep_consume_pv = b.month_rep_consume_pv
|
||||||
|
,a.month_rep_consume_amount = b.month_rep_consume_amount
|
||||||
</if>
|
</if>
|
||||||
</update>
|
</update>
|
||||||
|
|
||||||
|
|
@ -130,9 +143,11 @@
|
||||||
select #{item.pkMember} pk_member, #{item.pkGrade} pk_grade,
|
select #{item.pkMember} pk_member, #{item.pkGrade} pk_grade,
|
||||||
#{item.newBoxNum} new_box_num, #{item.consumeBoxNum} consume_box_num, #{item.monthBoxNum} month_box_num,
|
#{item.newBoxNum} new_box_num, #{item.consumeBoxNum} consume_box_num, #{item.monthBoxNum} month_box_num,
|
||||||
#{item.newConsumePv} new_consume_pv, #{item.consumePv} consume_pv, #{item.monthConsumePv} month_consume_pv,
|
#{item.newConsumePv} new_consume_pv, #{item.consumePv} consume_pv, #{item.monthConsumePv} month_consume_pv,
|
||||||
|
#{item.newConsumeAmount} new_consume_amount, #{item.consumeAmount} consume_amount, #{item.monthConsumeAmount} month_consume_amount,
|
||||||
#{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.monthRepBoxNum} month_rep_box_num, #{item.monthRepConsumePv} month_rep_consume_pv, #{item.monthRepConsumeAmount} month_rep_consume_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
|
||||||
from dual
|
from dual
|
||||||
</foreach>
|
</foreach>
|
||||||
|
|
@ -142,9 +157,11 @@
|
||||||
update set a.pk_grade = b.pk_grade,
|
update set a.pk_grade = b.pk_grade,
|
||||||
a.new_box_num = b.new_box_num, a.consume_box_num = b.consume_box_num, a.month_box_num = b.month_box_num,
|
a.new_box_num = b.new_box_num, a.consume_box_num = b.consume_box_num, a.month_box_num = b.month_box_num,
|
||||||
a.new_consume_pv = b.new_consume_pv, a.consume_pv = b.consume_pv, a.month_consume_pv = b.month_consume_pv,
|
a.new_consume_pv = b.new_consume_pv, a.consume_pv = b.consume_pv, a.month_consume_pv = b.month_consume_pv,
|
||||||
|
a.new_consume_amount = b.new_consume_amount, a.consume_amount = b.consume_amount, a.month_consume_amount = b.month_consume_amount,
|
||||||
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.month_rep_box_num = b.month_rep_box_num, a.month_rep_consume_pv = b.month_rep_consume_pv, a.month_rep_consume_amount = b.month_rep_consume_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
|
||||||
</update>
|
</update>
|
||||||
|
|
||||||
|
|
@ -172,6 +189,9 @@
|
||||||
new_consume_pv,
|
new_consume_pv,
|
||||||
consume_pv,
|
consume_pv,
|
||||||
month_consume_pv,
|
month_consume_pv,
|
||||||
|
new_consume_amount,
|
||||||
|
consume_amount,
|
||||||
|
month_consume_amount,
|
||||||
team_new_box_num,
|
team_new_box_num,
|
||||||
team_box_num,
|
team_box_num,
|
||||||
team_month_box_num,
|
team_month_box_num,
|
||||||
|
|
@ -181,6 +201,9 @@
|
||||||
team_new_amount,
|
team_new_amount,
|
||||||
team_consume_amount,
|
team_consume_amount,
|
||||||
team_month_amount,
|
team_month_amount,
|
||||||
|
month_rep_box_num,
|
||||||
|
month_rep_consume_pv,
|
||||||
|
month_rep_consume_amount,
|
||||||
recommend_num,
|
recommend_num,
|
||||||
team_num,
|
team_num,
|
||||||
ba.grade_value,
|
ba.grade_value,
|
||||||
|
|
|
||||||
|
|
@ -440,6 +440,9 @@
|
||||||
new_consume_pv number(17,6) default 0 not null,
|
new_consume_pv number(17,6) default 0 not null,
|
||||||
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,
|
month_consume_pv number(17,6) default 0 not null,
|
||||||
|
new_consume_amount number(17,6) default 0 not null,
|
||||||
|
consume_amount number(17,6) default 0 not null,
|
||||||
|
month_consume_amount number(17,6) default 0 not null,
|
||||||
team_new_box_num number(10,2) 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_box_num number(10,2) default 0 not null,
|
||||||
team_month_box_num number(10,2) default 0 not null,
|
team_month_box_num number(10,2) default 0 not null,
|
||||||
|
|
@ -455,7 +458,10 @@
|
||||||
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,
|
||||||
|
month_rep_box_num number(17,6) default 0 not null,
|
||||||
|
month_rep_consume_pv number(17,6) default 0 not null,
|
||||||
|
month_rep_consume_amount number(17,6) default 0 not null
|
||||||
)
|
)
|
||||||
</update>
|
</update>
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -275,6 +275,8 @@ public class RetailMemberController extends BaseController {
|
||||||
List<CuMemberExt> cuMemberExtList = iCuMemberService.listRecommend(SecurityUtils.getUserId());
|
List<CuMemberExt> cuMemberExtList = iCuMemberService.listRecommend(SecurityUtils.getUserId());
|
||||||
if (CollectionUtil.isNotEmpty(cuMemberExtList)) {
|
if (CollectionUtil.isNotEmpty(cuMemberExtList)) {
|
||||||
for (CuMemberExt cuMemberExt : cuMemberExtList) {
|
for (CuMemberExt cuMemberExt : cuMemberExtList) {
|
||||||
|
// 2025.09.05 数据改为按金额显示
|
||||||
|
cuMemberExt.setConsumeAchieve(cuMemberExt.getConsumeMoney());
|
||||||
resultList.add(BeanUtil.copyProperties(cuMemberExt, RecommendListVO.class));
|
resultList.add(BeanUtil.copyProperties(cuMemberExt, RecommendListVO.class));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -524,10 +524,12 @@ public class CuMemberRetailAchieveServiceImpl extends ServiceImpl<CuMemberRetail
|
||||||
pkMemberList = baseMapper.selectDirectPushByPkMember(member.getPkId(), SecurityUtils.getSystemType());
|
pkMemberList = baseMapper.selectDirectPushByPkMember(member.getPkId(), SecurityUtils.getSystemType());
|
||||||
}
|
}
|
||||||
List<PerformanceVO> meList = baseMapper.getPerformanceList(settleTable, Collections.singletonList(member.getPkId()), targetDayStart, targetDayEnd);
|
List<PerformanceVO> meList = baseMapper.getPerformanceList(settleTable, Collections.singletonList(member.getPkId()), targetDayStart, targetDayEnd);
|
||||||
|
formatAmount(meList);
|
||||||
PageUtils.startPage(param.getPageNum(), param.getPageSize());
|
PageUtils.startPage(param.getPageNum(), param.getPageSize());
|
||||||
List<PerformanceVO> otherList = new ArrayList<>();
|
List<PerformanceVO> otherList = new ArrayList<>();
|
||||||
if(CollUtil.isNotEmpty(pkMemberList)){
|
if(CollUtil.isNotEmpty(pkMemberList)){
|
||||||
otherList = baseMapper.getPerformanceList(settleTable, pkMemberList, targetDayStart, targetDayEnd);
|
otherList = baseMapper.getPerformanceList(settleTable, pkMemberList, targetDayStart, targetDayEnd);
|
||||||
|
formatAmount(otherList);
|
||||||
}
|
}
|
||||||
PageUtils.clearPage();
|
PageUtils.clearPage();
|
||||||
if(param.getPageNum() == 1){
|
if(param.getPageNum() == 1){
|
||||||
|
|
@ -537,6 +539,18 @@ public class CuMemberRetailAchieveServiceImpl extends ServiceImpl<CuMemberRetail
|
||||||
return otherList;
|
return otherList;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
private void formatAmount(List<PerformanceVO> list){
|
||||||
|
for (PerformanceVO performanceVO : list) {
|
||||||
|
// debug
|
||||||
|
performanceVO.setCurrentMonthPv(performanceVO.getCurrentMonthAmount());
|
||||||
|
performanceVO.setRepurchasePv(performanceVO.getRepurchaseAmount());
|
||||||
|
|
||||||
|
performanceVO.setRepurchasePv(DataStatisticsUtil.formatPV(performanceVO.getRepurchasePv()));
|
||||||
|
performanceVO.setRepurchaseAmount(DataStatisticsUtil.formatPV(performanceVO.getRepurchaseAmount()));
|
||||||
|
performanceVO.setCurrentMonthPv(DataStatisticsUtil.formatPV(performanceVO.getCurrentMonthPv()));
|
||||||
|
performanceVO.setCurrentMonthAmount(DataStatisticsUtil.formatPV(performanceVO.getCurrentMonthAmount()));
|
||||||
|
}
|
||||||
|
}
|
||||||
public static boolean isCurrentMonth(String yearStr, String monthStr) {
|
public static boolean isCurrentMonth(String yearStr, String monthStr) {
|
||||||
if (yearStr == null || monthStr == null || yearStr.trim().isEmpty() || monthStr.trim().isEmpty()) {
|
if (yearStr == null || monthStr == null || yearStr.trim().isEmpty() || monthStr.trim().isEmpty()) {
|
||||||
throw new IllegalArgumentException("年份和月份不能为空");
|
throw new IllegalArgumentException("年份和月份不能为空");
|
||||||
|
|
|
||||||
|
|
@ -27,8 +27,13 @@ public class PerformanceVO implements Serializable {
|
||||||
/**
|
/**
|
||||||
* 当月业绩
|
* 当月业绩
|
||||||
*/
|
*/
|
||||||
@BigDecimalFormat
|
@BigDecimalFormat("#0.0000")
|
||||||
private BigDecimal currentMonthPv;
|
private BigDecimal currentMonthPv;
|
||||||
|
/**
|
||||||
|
* 当月金额
|
||||||
|
*/
|
||||||
|
@BigDecimalFormat("#0.0000")
|
||||||
|
private BigDecimal currentMonthAmount;
|
||||||
/**
|
/**
|
||||||
* 当月盒数
|
* 当月盒数
|
||||||
*/
|
*/
|
||||||
|
|
@ -36,8 +41,13 @@ public class PerformanceVO implements Serializable {
|
||||||
/**
|
/**
|
||||||
* 复购业绩
|
* 复购业绩
|
||||||
*/
|
*/
|
||||||
@BigDecimalFormat
|
@BigDecimalFormat("#0.0000")
|
||||||
private BigDecimal repurchasePv;
|
private BigDecimal repurchasePv;
|
||||||
|
/**
|
||||||
|
* 复购金额
|
||||||
|
*/
|
||||||
|
@BigDecimalFormat("#0.0000")
|
||||||
|
private BigDecimal repurchaseAmount;
|
||||||
/**
|
/**
|
||||||
* 复购盒数
|
* 复购盒数
|
||||||
*/
|
*/
|
||||||
|
|
|
||||||
|
|
@ -744,29 +744,16 @@
|
||||||
currentMonth.ENABLE_STATUS,
|
currentMonth.ENABLE_STATUS,
|
||||||
NVL( currentMonth.MONTH_CONSUME_PV + currentMonth.TEAM_MONTH_PV, 0 ) currentMonthPv,
|
NVL( currentMonth.MONTH_CONSUME_PV + currentMonth.TEAM_MONTH_PV, 0 ) currentMonthPv,
|
||||||
NVL( currentMonth.MONTH_BOX_NUM + currentMonth.TEAM_MONTH_BOX_NUM, 0 ) currentMonthBoxNum,
|
NVL( currentMonth.MONTH_BOX_NUM + currentMonth.TEAM_MONTH_BOX_NUM, 0 ) currentMonthBoxNum,
|
||||||
NVL( repurchasePv, 0 ) repurchasePv,
|
NVL( currentMonth.MONTH_CONSUME_AMOUNT + currentMonth.TEAM_MONTH_AMOUNT, 0 ) currentMonthAmount,
|
||||||
NVL( repurchaseBox, 0 ) repurchaseBox
|
NVL( currentMonth.MONTH_REP_CONSUME_PV, 0 ) repurchasePv,
|
||||||
|
NVL( currentMonth.MONTH_REP_CONSUME_AMOUNT, 0 ) repurchaseAmount,
|
||||||
|
NVL( currentMonth.MONTH_REP_BOX_NUM, 0 ) repurchaseBox
|
||||||
FROM
|
FROM
|
||||||
cu_member cu
|
cu_member cu
|
||||||
LEFT JOIN ${tableName} currentMonth ON cu.PK_ID = currentMonth.PK_MEMBER
|
LEFT JOIN ${tableName} currentMonth ON cu.PK_ID = currentMonth.PK_MEMBER
|
||||||
AND cu.CATEGORY = 0
|
AND cu.CATEGORY = 0
|
||||||
LEFT JOIN BD_GRADE grade ON grade.PK_ID = cu.PK_SETTLE_GRADE
|
LEFT JOIN BD_GRADE grade ON grade.PK_ID = cu.PK_SETTLE_GRADE
|
||||||
LEFT JOIN BD_AWARDS awards ON awards.PK_ID = cu.PK_AWARDS
|
LEFT JOIN BD_AWARDS awards ON awards.PK_ID = cu.PK_AWARDS
|
||||||
LEFT JOIN (
|
|
||||||
SELECT
|
|
||||||
PK_MEMBER,
|
|
||||||
sum( ORDER_ACHIEVE ) repurchasePv,
|
|
||||||
sum( BOX_NUM ) repurchaseBox
|
|
||||||
FROM
|
|
||||||
sa_order
|
|
||||||
WHERE
|
|
||||||
ORDER_TYPE = 43
|
|
||||||
AND DEL_FLAG = 0
|
|
||||||
AND ORDER_STATUS = 1
|
|
||||||
AND PAY_TIME BETWEEN #{targetDayStart} and #{targetDayEnd}
|
|
||||||
GROUP BY
|
|
||||||
PK_MEMBER
|
|
||||||
) fg ON fg.pk_member = cu.pk_id
|
|
||||||
WHERE cu.pk_id in
|
WHERE cu.pk_id in
|
||||||
<foreach collection="memberIdList" item="memberId" separator="," open="(" close=")">
|
<foreach collection="memberIdList" item="memberId" separator="," open="(" close=")">
|
||||||
#{memberId}
|
#{memberId}
|
||||||
|
|
|
||||||
|
|
@ -2332,6 +2332,7 @@
|
||||||
cm.member_name,
|
cm.member_name,
|
||||||
cm.nick_name,
|
cm.nick_name,
|
||||||
cm.consume_achieve,
|
cm.consume_achieve,
|
||||||
|
cm.consume_money,
|
||||||
cm.creation_time,
|
cm.creation_time,
|
||||||
cm.phone,
|
cm.phone,
|
||||||
bg.grade_name AS settle_grade_val,
|
bg.grade_name AS settle_grade_val,
|
||||||
|
|
|
||||||
|
|
@ -577,12 +577,12 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService {
|
||||||
// 查询订单信息
|
// 查询订单信息
|
||||||
SaOrderExt saOrder = iSaOrderService.queryOrderByCode(orderCode, pkCountry);
|
SaOrderExt saOrder = iSaOrderService.queryOrderByCode(orderCode, pkCountry);
|
||||||
if (null == saOrder) {
|
if (null == saOrder) {
|
||||||
return TransactionUtils.getContent(CommonMsgConstants.OPERATION_FAILED) + ":" + orderCode + SaOrderMsgConstants.ORDER_NOT_EXIST;
|
return CommonMsgConstants.OPERATION_FAILED + ":" + orderCode + SaOrderMsgConstants.ORDER_NOT_EXIST;
|
||||||
}
|
}
|
||||||
// 订单支付日期 < 当前日期-7天
|
// 订单支付日期 < 当前日期-7天
|
||||||
Date beforeDate = DateUtils.addDate(DateUtils.getStartTime(nowDate), -7);
|
Date beforeDate = DateUtils.addDate(DateUtils.getStartTime(nowDate), -7);
|
||||||
if (beforeDate.compareTo(saOrder.getPayTime()) > 0) {
|
if (beforeDate.compareTo(saOrder.getPayTime()) > 0) {
|
||||||
return TransactionUtils.getContent(DocumentMsgConstants.DOCUMENT_ORDER_SETTLED);
|
return DocumentMsgConstants.DOCUMENT_ORDER_SETTLED;
|
||||||
}
|
}
|
||||||
|
|
||||||
// 操作日志内容
|
// 操作日志内容
|
||||||
|
|
@ -648,16 +648,13 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService {
|
||||||
return "订单已经发货,不能进行调换货物";
|
return "订单已经发货,不能进行调换货物";
|
||||||
}
|
}
|
||||||
|
|
||||||
// 是否扣款
|
|
||||||
boolean orderCostFlag = false;
|
|
||||||
// 修改前的订单金额 + 邮费
|
// 修改前的订单金额 + 邮费
|
||||||
BigDecimal beforeAmount = saOrder.getOrderAmount().add(saOrder.getPostage()).setScale(2, BigDecimal.ROUND_HALF_UP);
|
BigDecimal beforeAmount = saOrder.getOrderAmount().add(saOrder.getPostage()).setScale(2, BigDecimal.ROUND_HALF_UP);
|
||||||
// 修改后的订单金额 + 邮费
|
// 修改后的订单金额 + 邮费
|
||||||
BigDecimal afterAmount = afterData.getOrderAmount().add(param.getPostage()).setScale(2, BigDecimal.ROUND_HALF_UP);
|
BigDecimal afterAmount = afterData.getOrderAmount().add(param.getPostage()).setScale(2, BigDecimal.ROUND_HALF_UP);
|
||||||
// 对比修改前后订单价格处理是否补差价
|
// 校验订单原订单价格和调换完货之后的价格不相同不进行换货
|
||||||
if (beforeAmount.compareTo(afterAmount) != 0) {
|
if (beforeAmount.compareTo(afterAmount) != 0) {
|
||||||
// 修改前后金额不相同则进行处理
|
return CommonMsgConstants.OPERATION_FAILED + ":" + param.getOrderCode() + SaOrderMsgConstants.PRODUCT_CONFIRM_PRICE;
|
||||||
orderCostFlag = true;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (iSaOrderChargeLogService.save(saOrderChargeLog)) {
|
if (iSaOrderChargeLogService.save(saOrderChargeLog)) {
|
||||||
|
|
@ -666,13 +663,7 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService {
|
||||||
changeIdList, noChangeIdList,
|
changeIdList, noChangeIdList,
|
||||||
userId, pkCountry, nowDate);
|
userId, pkCountry, nowDate);
|
||||||
|
|
||||||
if (orderCostFlag) {
|
if (null != dto) {
|
||||||
// 订单调换货物扣费处理
|
|
||||||
R resultR = iMemberAccountServiceApi.orderChangeProduct(saOrder, updateOrder, userId, dto);
|
|
||||||
if (!resultR.isSuccess()) {
|
|
||||||
throw new BaseException(resultR.getMsg());
|
|
||||||
}
|
|
||||||
} else if (null != dto) {
|
|
||||||
// 订单总价未变化,但是需要手续费
|
// 订单总价未变化,但是需要手续费
|
||||||
R resultR = iMemberAccountServiceApi.orderChangeProduct(null, null, userId, dto);
|
R resultR = iMemberAccountServiceApi.orderChangeProduct(null, null, userId, dto);
|
||||||
if (!resultR.isSuccess()) {
|
if (!resultR.isSuccess()) {
|
||||||
|
|
@ -705,12 +696,12 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService {
|
||||||
// 查询订单收货地址信息
|
// 查询订单收货地址信息
|
||||||
SaOrderExt saOrder = iSaOrderService.queryOrderByCode(orderCode, pkCountry);
|
SaOrderExt saOrder = iSaOrderService.queryOrderByCode(orderCode, pkCountry);
|
||||||
if (null == saOrder) {
|
if (null == saOrder) {
|
||||||
return TransactionUtils.getContent(CommonMsgConstants.OPERATION_FAILED) + ":" + orderCode + SaOrderMsgConstants.ORDER_NOT_EXIST;
|
return CommonMsgConstants.OPERATION_FAILED + ":" + orderCode + SaOrderMsgConstants.ORDER_NOT_EXIST;
|
||||||
}
|
}
|
||||||
// 订单支付日期 < 当前日期-7天
|
// 订单支付日期 < 当前日期-7天
|
||||||
Date beforeDate = DateUtils.addDate(DateUtils.getStartTime(nowDate), -7);
|
Date beforeDate = DateUtils.addDate(DateUtils.getStartTime(nowDate), -7);
|
||||||
if (beforeDate.compareTo(saOrder.getPayTime()) > 0) {
|
if (beforeDate.compareTo(saOrder.getPayTime()) > 0) {
|
||||||
return TransactionUtils.getContent(DocumentMsgConstants.DOCUMENT_ORDER_SETTLED);
|
return DocumentMsgConstants.DOCUMENT_ORDER_SETTLED;
|
||||||
}
|
}
|
||||||
|
|
||||||
// 涉及会员ID列表
|
// 涉及会员ID列表
|
||||||
|
|
@ -755,24 +746,9 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService {
|
||||||
BigDecimal beforeAmount = saOrder.getOrderAmount().add(saOrder.getPostage()).setScale(2, BigDecimal.ROUND_HALF_UP);
|
BigDecimal beforeAmount = saOrder.getOrderAmount().add(saOrder.getPostage()).setScale(2, BigDecimal.ROUND_HALF_UP);
|
||||||
// 修改后的订单金额 + 邮费
|
// 修改后的订单金额 + 邮费
|
||||||
BigDecimal afterAmount = afterData.getOrderAmount().add(param.getPostage()).setScale(2, BigDecimal.ROUND_HALF_UP);
|
BigDecimal afterAmount = afterData.getOrderAmount().add(param.getPostage()).setScale(2, BigDecimal.ROUND_HALF_UP);
|
||||||
// 对比修改前后订单价格处理是否补差价
|
//校验订单原订单价格和调换完货之后的价格不相同不进行换货
|
||||||
if (beforeAmount.compareTo(afterAmount) < 0) {
|
if (beforeAmount.compareTo(afterAmount) != 0) {
|
||||||
// 存在差额
|
return CommonMsgConstants.OPERATION_FAILED + ":" + param.getOrderCode() + SaOrderMsgConstants.PRODUCT_CONFIRM_PRICE;
|
||||||
// 封装订单数据
|
|
||||||
SaOrder updateOrder = BeanUtil.copyProperties(saOrder, SaOrder.class);
|
|
||||||
updateOrder.setPkId(saOrder.getPkId());
|
|
||||||
updateOrder.setOrderAmount(afterData.getOrderAmount());
|
|
||||||
updateOrder.setOrderAchieve(afterData.getOrderAchieve());
|
|
||||||
updateOrder.setOrderAssAchieve(afterData.getOrderAssAchieve());
|
|
||||||
updateOrder.setPostage(param.getPostage());
|
|
||||||
updateOrder.setPkModified(userId);
|
|
||||||
updateOrder.setModifiedTime(nowDate);
|
|
||||||
|
|
||||||
// 校验订单支付金额是否足够
|
|
||||||
R resultR = iMemberAccountServiceApi.orderChangeProductPre(saOrder, updateOrder);
|
|
||||||
if (!resultR.isSuccess()) {
|
|
||||||
return resultR.getMsg();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (iSaOrderChargeLogService.save(saOrderChargeLog)) {
|
if (iSaOrderChargeLogService.save(saOrderChargeLog)) {
|
||||||
|
|
@ -786,7 +762,7 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService {
|
||||||
}
|
}
|
||||||
return submitStr;
|
return submitStr;
|
||||||
}
|
}
|
||||||
return TransactionUtils.getContent(CommonMsgConstants.OPERATION_FAILED);
|
return CommonMsgConstants.OPERATION_FAILED;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Transactional(rollbackFor = Exception.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
|
|
@ -2015,7 +1991,6 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService {
|
||||||
BigDecimal afterOrderAssAchieve = BigDecimal.ZERO;
|
BigDecimal afterOrderAssAchieve = BigDecimal.ZERO;
|
||||||
// 修改后明细数据
|
// 修改后明细数据
|
||||||
List<OrderChangeProductDetailDTO> afterDetailList = new ArrayList<>();
|
List<OrderChangeProductDetailDTO> afterDetailList = new ArrayList<>();
|
||||||
|
|
||||||
// 产品ID列表
|
// 产品ID列表
|
||||||
List<Integer> productIdList = param.getItemList().stream().map(OrderProductDetailParam::getPkProduct).collect(Collectors.toList());
|
List<Integer> productIdList = param.getItemList().stream().map(OrderProductDetailParam::getPkProduct).collect(Collectors.toList());
|
||||||
// 查询产品列表
|
// 查询产品列表
|
||||||
|
|
|
||||||
|
|
@ -163,4 +163,9 @@ public class SaOrderMsgConstants {
|
||||||
*/
|
*/
|
||||||
public static final String CHECK_MEMBER_LOWER_EXIST = "该会员推荐存在会员不能撤单";
|
public static final String CHECK_MEMBER_LOWER_EXIST = "该会员推荐存在会员不能撤单";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 原订单价格和调换完货之后的价格不相同 -- 不允许货物调换
|
||||||
|
*/
|
||||||
|
public static final String PRODUCT_CONFIRM_PRICE = "原订单价格和调换完货之后的价格不相同";
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -145,6 +145,38 @@ public class CuMemberRetailRange extends BaseEntity {
|
||||||
@TableField("MONTH_CONSUME_PV")
|
@TableField("MONTH_CONSUME_PV")
|
||||||
private BigDecimal monthConsumePv;
|
private BigDecimal monthConsumePv;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 本人当天新消费金额
|
||||||
|
*/
|
||||||
|
@TableField("NEW_CONSUME_AMOUNT")
|
||||||
|
private BigDecimal newConsumeAmount;
|
||||||
|
/**
|
||||||
|
* 本人累计消费金额
|
||||||
|
*/
|
||||||
|
@TableField("CONSUME_AMOUNT")
|
||||||
|
private BigDecimal consumeAmount;
|
||||||
|
/**
|
||||||
|
* 本人月累计消费金额
|
||||||
|
*/
|
||||||
|
@TableField("MONTH_CONSUME_AMOUNT")
|
||||||
|
private BigDecimal monthConsumeAmount;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 本人月复购累计盒数
|
||||||
|
*/
|
||||||
|
@TableField("MONTH_REP_BOX_NUM")
|
||||||
|
private BigDecimal monthRepBoxNum;
|
||||||
|
/**
|
||||||
|
* 本人月复购累计消费pv
|
||||||
|
*/
|
||||||
|
@TableField("MONTH_REP_CONSUME_PV")
|
||||||
|
private BigDecimal monthRepConsumePv;
|
||||||
|
/**
|
||||||
|
* 本人月复购累计消费金额
|
||||||
|
*/
|
||||||
|
@TableField("MONTH_REP_CONSUME_AMOUNT")
|
||||||
|
private BigDecimal monthRepConsumeAmount;
|
||||||
|
|
||||||
|
|
||||||
// @TableField("own_box_num")
|
// @TableField("own_box_num")
|
||||||
// private Integer ownBoxNum;
|
// private Integer ownBoxNum;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue