From fed18330b5eb7fe5621832c2191e02332f8d2120 Mon Sep 17 00:00:00 2001 From: wangw <1594593906@qq.com> Date: Mon, 27 Oct 2025 18:45:31 +0800 Subject: [PATCH] =?UTF-8?q?=E9=99=90=E6=97=B6=E6=8A=98=E6=89=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/order/service/impl/OrderInfoServiceImpl.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/cash-service/order-service/src/main/java/com/czg/service/order/service/impl/OrderInfoServiceImpl.java b/cash-service/order-service/src/main/java/com/czg/service/order/service/impl/OrderInfoServiceImpl.java index 838fca68..c9798c9f 100644 --- a/cash-service/order-service/src/main/java/com/czg/service/order/service/impl/OrderInfoServiceImpl.java +++ b/cash-service/order-service/src/main/java/com/czg/service/order/service/impl/OrderInfoServiceImpl.java @@ -793,10 +793,10 @@ public class OrderInfoServiceImpl extends ServiceImpl 0) { + if (detail.getIsTemporary() != 1 && (isAllFoods || (CollUtil.isNotEmpty(couponFoodIds) && couponFoodIds.contains(detail.getProductId()))) && detail.getUnitPrice().compareTo(BigDecimal.ZERO) > 0) { if (remaining.compareTo(BigDecimal.ZERO) > 0) { if (isTimeDiscountShare && detail.getIsTimeDiscount() == 1) { - throw new ValidateException("生成支付订单失败,商品:" + detail.getProductName() + " 抵扣券与限时折扣不可共用。"); + continue; } if (remaining.compareTo(detail.getNum().subtract(detail.getReturnNum())) >= 0) { detail.setCouponNum(detail.getNum().subtract(detail.getReturnNum()).setScale(2, RoundingMode.CEILING)); @@ -830,7 +830,7 @@ public class OrderInfoServiceImpl extends ServiceImpl 0 && detail.getNum().subtract(detail.getReturnNum()).subtract(detail.getCouponNum()).compareTo(BigDecimal.TWO) >= 0) { if (isTimeDiscountShare && detail.getIsTimeDiscount() == 1) { - throw new ValidateException("生成支付订单失败,商品:" + detail.getProductName() + " 买一送一券与限时折扣不可共用。"); + continue; } detail.setCouponNum(detail.getCouponNum().add(BigDecimal.ONE)); detail.setDiscountAmount(detail.getDiscountAmount().add(detail.getUnitPrice())); @@ -852,7 +852,7 @@ public class OrderInfoServiceImpl extends ServiceImpl 0 && detail.getNum().subtract(detail.getReturnNum()).subtract(detail.getCouponNum()).compareTo(BigDecimal.TWO) >= 0) { if (isTimeDiscountShare && detail.getIsTimeDiscount() == 1) { - throw new ValidateException("生成支付订单失败,商品:" + detail.getProductName() + " 抵扣券与限时折扣不可共用。"); + continue; } detail.setHalfPriceCouponNum(BigDecimal.ONE); BigDecimal halfPrice = detail.getUnitPrice().divide(new BigDecimal("2"), 2, RoundingMode.FLOOR);