소스 검색

【功能修复】MALL:优惠劵的折扣计算不正确

YunaiV 10 달 전
부모
커밋
3d9ec1966f

+ 1 - 1
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()); // 优惠上限
         }