From 3d9ec1966f97f5deaac5a5b1ef2efaec1a2dca3c Mon Sep 17 00:00:00 2001 From: YunaiV Date: Sun, 28 Jul 2024 20:01:54 +0800 Subject: [PATCH] 【功能修复】MALL:优惠劵的折扣计算不正确 --- yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/service/price/calculator/TradeCouponPriceCalculator.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/service/price/calculator/TradeCouponPriceCalculator.java b/yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/service/price/calculator/TradeCouponPriceCalculator.java index d2b52ea..3bdfe50 100644 --- a/yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/service/price/calculator/TradeCouponPriceCalculator.java +++ b/yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/service/price/calculator/TradeCouponPriceCalculator.java @@ -90,7 +90,7 @@ public class TradeCouponPriceCalculator implements TradePriceCalculator { if (PromotionDiscountTypeEnum.PRICE.getType().equals(coupon.getDiscountType())) { // 减价 return coupon.getDiscountPrice(); } else if (PromotionDiscountTypeEnum.PERCENT.getType().equals(coupon.getDiscountType())) { // 打折 - int couponPrice = totalPayPrice * coupon.getDiscountPercent() / 100; + int couponPrice = totalPayPrice - (totalPayPrice * coupon.getDiscountPercent() / 100); return coupon.getDiscountLimitPrice() == null ? couponPrice : Math.min(couponPrice, coupon.getDiscountLimitPrice()); // 优惠上限 } -- libgit2 0.21.4