## Opt - 分享注册会员-奖衔

This commit is contained in:
sangelxiu1 2025-10-28 18:12:54 +08:00
parent 352492796e
commit 0f2e6c9c9a
1 changed files with 36 additions and 12 deletions

View File

@ -26,6 +26,7 @@ import com.hzs.common.domain.sale.order.*;
import com.hzs.common.domain.sale.product.BdProduct;
import com.hzs.common.domain.sale.wares.BdWaresRange;
import com.hzs.common.domain.system.base.BdStorehouse;
import com.hzs.common.domain.system.config.BdAwards;
import com.hzs.common.domain.system.config.BdGrade;
import com.hzs.common.security.utils.SecurityUtils;
import com.hzs.member.account.IMemberAccountServiceApi;
@ -117,7 +118,7 @@ public class RetailOrderServiceImpl implements IRetailOrderService {
newMember.setPhone(registerParam.getPhone());
newMember.setPkSettleGrade(gradeList.get(0).getPkId());
newMember.setPkSettleCountry(1);
newMember.setPkAwards(1);
// newMember.setPkAwards(gradeList.get(0).getPkAwards());
// 封装订单信息
SaOrderExt saOrderExt = this.createSaOrder(registerParam, gradeList, newMember);
@ -213,21 +214,44 @@ public class RetailOrderServiceImpl implements IRetailOrderService {
if (null != cuMember) {
cuMember.setPkSettleGrade(newGrade.getPkId());
cuMember.setPkAwards(newGrade.getPkAwards());
// if (null == cuMember.getPkAwards()) {
// // 新会员没有奖衔则进行赋值
// cuMember.setPkAwards(newGrade.getPkAwards());
// } else {
// // 老会员奖衔如果为无也进行赋值
// BdAwards bdAwards = iAwardsServiceApi.getAwardsOne(cuMember.getPkAwards()).getData();
// if (EAwards.MEMBER.getValue() == bdAwards.getAwardsValue()
// && EAwards.MEMBER.getValue() != newGrade.getPkAwards()) {
// cuMember.setPkAwards(newGrade.getPkAwards());
// }
// }
if (null == cuMember.getPkAwards()) {
// 新会员没有奖衔则进行赋值
cuMember.setPkAwards(newGrade.getPkAwards());
} else {
// 老会员奖衔如果为无也进行赋值
BdAwards bdAwards = iAwardsServiceApi.getAwardsOne(cuMember.getPkAwards()).getData();
if (EAwards.MEMBER.getValue() == bdAwards.getAwardsValue()
&& EAwards.MEMBER.getValue() != newGrade.getPkAwards()) {
cuMember.setPkAwards(newGrade.getPkAwards());
}
}
}
} else if (ESpecialArea.RETAIL_REPURCHASE.getValue() == orderParam.getSpecialArea()) {
// saOrderExt.setOrderAmount(saOrderExt.getOrderAmount().add(orderParam.getPostage()));
saOrderExt.setPostage(orderParam.getPostage());
// 注册升级订单计算会员等级
BdGrade newGrade = this.calculateGrade(orderParam.getSpecialArea(), orderParam.getOrderItemsParams(),
gradeList, cuMember, orderAchieve);
if (null == newGrade) {
throw new ServiceException("会员不满足升级条件");
}
saOrderExt.setPkGrade(newGrade.getPkId());
// 会员信息
if (null != cuMember) {
cuMember.setPkSettleGrade(newGrade.getPkId());
cuMember.setPkAwards(newGrade.getPkAwards());
if (null == cuMember.getPkAwards()) {
// 新会员没有奖衔则进行赋值
cuMember.setPkAwards(newGrade.getPkAwards());
} else {
// 老会员奖衔如果为无也进行赋值
BdAwards bdAwards = iAwardsServiceApi.getAwardsOne(cuMember.getPkAwards()).getData();
if (EAwards.MEMBER.getValue() == bdAwards.getAwardsValue()
&& EAwards.MEMBER.getValue() != newGrade.getPkAwards()) {
cuMember.setPkAwards(newGrade.getPkAwards());
}
}
}
} else if (ESpecialArea.RETAIL_UPGRADE.getValue() == orderParam.getSpecialArea()) {
saOrderExt.setSpecialArea(ESpecialArea.RETAIL_UPGRADE.getValue());
saOrderExt.setOrderType(ESpecialArea.RETAIL_UPGRADE.getValue());