3
0
Fork 0

Compare commits

..

8 Commits

11 changed files with 146 additions and 80 deletions

View File

@ -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())) {
// 存在手动激活 // 存在手动激活

View File

@ -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,

View File

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

View File

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

View File

@ -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("年份和月份不能为空");

View File

@ -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;
/** /**
* 复购盒数 * 复购盒数
*/ */

View File

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

View File

@ -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,

View File

@ -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());
// 查询产品列表 // 查询产品列表

View File

@ -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 = "原订单价格和调换完货之后的价格不相同";
} }

View File

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