## 复购、重消订单下单处理;

This commit is contained in:
cabbage 2025-06-09 15:48:48 +08:00
parent e635528d63
commit 8ddb794ada
3 changed files with 23 additions and 14 deletions

View File

@ -1525,16 +1525,17 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService {
boolean updateFlag = false; boolean updateFlag = false;
LambdaUpdateWrapper<CuMember> updateWrapper = new LambdaUpdateWrapper<>(); LambdaUpdateWrapper<CuMember> updateWrapper = new LambdaUpdateWrapper<>();
if (null != saOrder.getPkGrade()) { // if (null != saOrder.getPkGrade()) {
updateWrapper.set(CuMember::getPkSettleGrade, saOrder.getPkGrade()); // updateWrapper.set(CuMember::getPkSettleGrade, saOrder.getPkGrade());
updateFlag = true; // updateFlag = true;
//
cuMember.setPkSettleGrade(saOrder.getPkGrade()); // cuMember.setPkSettleGrade(saOrder.getPkGrade());
} // }
if (activateFlag) { if (activateFlag) {
updateWrapper.set(null != cuMember.getIsActivate(), CuMember::getIsActivate, cuMember.getIsActivate()); updateWrapper.set(null != cuMember.getIsActivate(), CuMember::getIsActivate, cuMember.getIsActivate());
updateWrapper.set(null != cuMember.getPayStatus(), CuMember::getPayStatus, cuMember.getPayStatus()); updateWrapper.set(null != cuMember.getPayStatus(), CuMember::getPayStatus, cuMember.getPayStatus());
updateWrapper.set(null != cuMember.getPayTime(), CuMember::getPayTime, cuMember.getPayTime()); updateWrapper.set(null != cuMember.getPayTime(), CuMember::getPayTime, cuMember.getPayTime());
updateFlag = true;
} }
if (updateFlag) { if (updateFlag) {
// 更新会员信息 // 更新会员信息
@ -1543,10 +1544,10 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService {
cuMemberService.update(updateWrapper); cuMemberService.update(updateWrapper);
} }
if (!cuMember.getPkSettleGrade().equals(saOrder.getPkGradeOld())) { // if (!cuMember.getPkSettleGrade().equals(saOrder.getPkGradeOld())) {
// 保存会员等级变动如果旧等级和新等级相同则不记录 // // 保存会员等级变动如果旧等级和新等级相同则不记录
saveLevelUpgrade(cuMember, EUpgradeType.BUY_UPGRADE.getValue(), saOrder, saOrder.getPkGradeOld()); // saveLevelUpgrade(cuMember, EUpgradeType.BUY_UPGRADE.getValue(), saOrder, saOrder.getPkGradeOld());
} // }
this.handleRetailMemberAccount(saOrder, cuMemberAccountExt); this.handleRetailMemberAccount(saOrder, cuMemberAccountExt);
} }

View File

@ -342,6 +342,10 @@ public class ApiRetailOrderController {
if (null == updateGradeMember) { if (null == updateGradeMember) {
throw new ServiceException("升级编号不存在,请重试"); throw new ServiceException("升级编号不存在,请重试");
} }
String otherCheckStr = this.otherOrderCheck(updateGradeMember, upgradeParam.getSpecialArea());
if (null != otherCheckStr) {
return AjaxResult.error(otherCheckStr);
}
upgradeParam.setUpgradeMember(updateGradeMember); upgradeParam.setUpgradeMember(updateGradeMember);
// 购物车中获取商品信息 // 购物车中获取商品信息
@ -375,6 +379,10 @@ public class ApiRetailOrderController {
if (null == updateGradeMember) { if (null == updateGradeMember) {
throw new ServiceException("升级编号不存在,请重试"); throw new ServiceException("升级编号不存在,请重试");
} }
String otherCheckStr = this.otherOrderCheck(updateGradeMember, payParam.getSpecialArea());
if (null != otherCheckStr) {
return AjaxResult.error(otherCheckStr);
}
// 封装订单信息 // 封装订单信息
SaOrderExt saOrderExt = iRetailOrderService.createSaOrder(upgradeParam, null, updateGradeMember); SaOrderExt saOrderExt = iRetailOrderService.createSaOrder(upgradeParam, null, updateGradeMember);
@ -710,9 +718,9 @@ public class ApiRetailOrderController {
if (null == buyMember) { if (null == buyMember) {
return "购买会员编号不存在,请重试"; return "购买会员编号不存在,请重试";
} }
if (ESpecialArea.RETAIL_REPURCHASE.getValue() != specialArea) { if (ESpecialArea.RETAIL_UPGRADE.getValue() != specialArea
// 2025.02.24 新需求升级专区取消V0可以直接购买复购专区 && ESpecialArea.RETAIL_REPURCHASE.getValue() != specialArea) {
// 判断购买会员是否是V0V0不允许下升级以外订单 // 判断购买会员是否是V0V0不允许下升级复购以外订单
GradeDTO gradeDTO = iGradeServiceApi.getGrade(buyMember.getPkSettleGrade()).getData(); GradeDTO gradeDTO = iGradeServiceApi.getGrade(buyMember.getPkSettleGrade()).getData();
if (gradeDTO.getGradeValue() == EGrade.START_UP.getValue()) { if (gradeDTO.getGradeValue() == EGrade.START_UP.getValue()) {
return "当前购买会员编号不允许下单"; return "当前购买会员编号不允许下单";

View File

@ -2673,7 +2673,7 @@ public class SaOrderServiceImpl extends ServiceImpl<SaOrderMapper, SaOrder> impl
BdGrade memberGrade = gradeList.stream().filter(tmpGrade -> tmpGrade.getPkId().equals(updateGradeMember.getPkSettleGrade())).findFirst().get(); BdGrade memberGrade = gradeList.stream().filter(tmpGrade -> tmpGrade.getPkId().equals(updateGradeMember.getPkSettleGrade())).findFirst().get();
if (memberGrade.getGradeValue().compareTo(EGrade.MAKER.getValue()) >= 0) { if (memberGrade.getGradeValue().compareTo(EGrade.MAKER.getValue()) >= 0) {
// 会员等级大于等于V3卓越不能通过升级进行购买了 // 会员等级大于等于V3卓越不能通过升级进行购买了
throw new ServiceException("当前已是最高等级"); throw new ServiceException("当前已可以购买的最高等级");
} }
// 计算等级 // 计算等级