Merge remote-tracking branch 'origin/test' into test

This commit is contained in:
sangelxiu1 2025-07-21 09:32:54 +08:00
commit df263fd05d
3 changed files with 21 additions and 8 deletions

View File

@ -719,8 +719,9 @@ public class RetailOrderServiceImpl implements IRetailOrderService {
}
// 封装会员信息
CuMember newMember = this.packageCuMember(registerParam);
newMember.setPkSettleGrade(registerParam.getPkGrade());
newMember.setPkAwards(registerParam.getPkAwards());
BdGrade tmpGrade = iSaOrderService.handleGradeEnd(null, registerParam.getPkGrade());
newMember.setPkSettleGrade(tmpGrade.getPkId());
newMember.setPkAwards(tmpGrade.getPkAwards());
saOrderExt.setPkMember(newMember.getPkId());
@ -734,7 +735,8 @@ public class RetailOrderServiceImpl implements IRetailOrderService {
}
if (EOrderType.RETAIL_UPGRADE.getValue() == saOrderExt.getOrderType()) {
// 升级订单
cuMember.setPkSettleGrade(saOrderExt.getPkGrade());
BdGrade tmpGrade = iSaOrderService.handleGradeEnd(null, saOrderExt.getPkGrade());
cuMember.setPkSettleGrade(tmpGrade.getPkId());
resultStr = this.payUpgOrder(saOrderExt, cuMember, null);
} else {
// 其它订单

View File

@ -642,4 +642,12 @@ public interface ISaOrderService extends IService<SaOrder> {
List<BdGrade> gradeList, CuMember updateGradeMember,
Integer systemType, Integer isPay);
/**
* 处理最终等级多送2级
* @param gradeList
* @param pkGrade
* @return
*/
BdGrade handleGradeEnd(List<BdGrade> gradeList, Integer pkGrade);
}

View File

@ -2504,7 +2504,7 @@ public class SaOrderServiceImpl extends ServiceImpl<SaOrderMapper, SaOrder> impl
// 注册专区直接算等级
bdGrade = this.getGradeByBox(boxNum, gradeList, null, true);
// 特殊等级处理
BdGrade tmpGrade = this.handleGradeEnd(gradeList, bdGrade);
BdGrade tmpGrade = this.handleGradeEnd(gradeList, bdGrade.getPkId());
if (null != isPay && EYesNo.YES.getIntValue() == isPay) {
// 支付时才进行处理
bdGrade = tmpGrade;
@ -2540,7 +2540,7 @@ public class SaOrderServiceImpl extends ServiceImpl<SaOrderMapper, SaOrder> impl
}
// 特殊等级处理
BdGrade tmpGrade = this.handleGradeEnd(gradeList, bdGrade);
BdGrade tmpGrade = this.handleGradeEnd(gradeList, bdGrade.getPkId());
if (null != isPay && EYesNo.YES.getIntValue() == isPay) {
// 支付时才进行处理
bdGrade = tmpGrade;
@ -3384,13 +3384,16 @@ public class SaOrderServiceImpl extends ServiceImpl<SaOrderMapper, SaOrder> impl
* new 2025.06.25 V1-V3升级多送两级处理
*
* @param gradeList
* @param bdGrade
* @param pkGrade
* @return
*/
private BdGrade handleGradeEnd(List<BdGrade> gradeList, BdGrade bdGrade) {
@Override
public BdGrade handleGradeEnd(List<BdGrade> gradeList, Integer pkGrade) {
if (CollectionUtil.isEmpty(gradeList)) {
gradeList = iGradeServiceApi.getRetailGradeList().getData();
}
// new 2025.06.14 添加新需求V1-V3购买多给两级
// new 2025.06.25 V1-V3升级多送两级可以继续购买升级
Integer pkGrade = bdGrade.getPkId();
// 临时处理等级
BdGrade tmpGrade = gradeList.stream().filter(tmpData -> tmpData.getPkId().equals(pkGrade)).findFirst().get();