From 5ae87bebb0d47ce4142f7a9a6257d9c678afd4c4 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Wed, 3 Sep 2025 14:37:53 +0800 Subject: [PATCH] =?UTF-8?q?##=201980=E5=8D=87=E7=BA=A7=E7=9A=849900?= =?UTF-8?q?=E5=8F=AF=E4=BB=A5=E5=86=8D=E8=B4=AD=E4=B9=B09900=E4=BD=86?= =?UTF-8?q?=E6=98=AF=E7=AD=89=E7=BA=A7=E4=B8=8D=E5=8F=98=EF=BC=88363?= =?UTF-8?q?=EF=BC=89=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sale/order/service/impl/SaOrderServiceImpl.java | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java index cc676191..735e357d 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java @@ -872,7 +872,17 @@ public class SaOrderServiceImpl extends ServiceImpl impl } // 验证等级,原等级<新等级,才可以进行升级 或者 累计升级 String upgradeWay = querySystemConfigByKey(saOrderExt.getPkCountry(), ESystemConfig.UPGRADE_WAY.getKey()); + boolean checkUpgrade = false; if (oldGradeDTO.getGradeValue() >= cuMember.getPkSettleGradeValue() && !Objects.equals(Integer.toString(EUpgradeWay.TOTAL.getValue()), upgradeWay)) { + if (EGrade.VIP.getValue() == oldGradeDTO.getGradeValue()) { + SaOrderExt gradeOrder = baseMapper.getLastOrderGrade(cuMember.getPkId()); + if (EGrade.MAKER.getValue() == gradeOrder.getGradeValue()) { + // 如果是1980赠送升级的9900,可以再买一个9900,但是等级不变 + checkUpgrade = true; + } + } + } + if (!checkUpgrade) { return false; } // 封装保存订单数据 @@ -1120,7 +1130,7 @@ public class SaOrderServiceImpl extends ServiceImpl impl if (grade.getGradeValue() < gradeDTO.getGradeValue()) { orderReturn.setIsEnough(Boolean.TRUE); } else { - // TODO 2025.07.17 为兼容注册送等级逻辑,此处需要查询一下会员的实际订单对应等级 + // 2025.07.17 为兼容注册送等级逻辑,此处需要查询一下会员的实际订单对应等级 SaOrderExt gradeOrder = baseMapper.getLastOrderGrade(member.getPkId()); if (null != gradeOrder) { if (gradeOrder.getGradeValue() < gradeDTO.getGradeValue()