Explorar el Código

【BUG】解决运费计算错误的问题

痴货 hace 7 meses
padre
commit
ee7d1d5017

+ 5 - 4
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/service/price/calculator/TradeDeliveryPriceCalculator.java

@@ -123,10 +123,11 @@ public class TradeDeliveryPriceCalculator implements TradePriceCalculator {
     private boolean isGlobalExpressFree(TradePriceCalculateRespBO result) {
 
         TradeConfigDO config = tradeConfigService.getTradeConfig();
-        return config == null
-                || Boolean.TRUE.equals(config.getDeliveryExpressFreeEnabled()) // 开启包邮
-                || result.getFreeDelivery() //满减包邮
-                || result.getPrice().getPayPrice() >= config.getDeliveryExpressFreePrice(); // 满足包邮的价格
+        return  result.getFreeDelivery() ||
+                (config != null
+                && Boolean.TRUE.equals(config.getDeliveryExpressFreeEnabled()) // 开启包邮
+                && result.getPrice().getPayPrice() >= config.getDeliveryExpressFreePrice()
+                ); // 满足包邮的价格
     }
 
     private void calculateDeliveryPrice(List<OrderItem> selectedSkus,