diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java index a886a04a..0b63a535 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java @@ -275,6 +275,9 @@ public class RetailOrderServiceImpl implements IRetailOrderService { // 当前盒数 int boxNum = 0; + // 设置已经累计盒数的商品列表 + List tmpBoxWares = new ArrayList<>(); + // 2025.03.11 添加需求,复购专区、重消专区,指定盒数商品每用户每月限购50件 // this.checkWaresLimit(cuMember, orderParam.getSpecialArea(), waresDetailExtList, boxWaresList, gradeList); @@ -294,7 +297,10 @@ public class RetailOrderServiceImpl implements IRetailOrderService { if (boxWaresList.contains(waresDetailExt.getWaresCode())) { // 商品是盒数商品,需要累计数量 - boxNum += waresDetailExt.getBoxNum() * orderItems.getWaresQuantity(); + if (!tmpBoxWares.contains(waresDetailExt.getWaresCode())) { + boxNum += waresDetailExt.getBoxNum() * orderItems.getWaresQuantity(); + tmpBoxWares.add(waresDetailExt.getWaresCode()); + } } } }