ソースを参照

fix(order): 解决订单预览失败时的异常处理问题

- 添加了订单预览失败时的ValidateException抛出逻辑
- 确保预览失败的消息能够正确传递给上层处理
- 修复了可能因预览失败导致的后续计算错误问题
shichen 3 ヶ月 前
コミット
1a5694135f
共有1 個のファイルを変更した3 個の追加0 個の削除を含む
  1. 3 0
      app/common/repositories/store/order/StoreOrderRepository.php

+ 3 - 0
app/common/repositories/store/order/StoreOrderRepository.php

@@ -2636,6 +2636,9 @@ class StoreOrderRepository extends BaseRepository
2636
                 }
2636
                 }
2637
                 $orderService = new OrderService();
2637
                 $orderService = new OrderService();
2638
                 $ailOrder = $orderService->previewOrder(['cargoParamList' => $cargoParamList, 'addressParam' => $addressParam]);
2638
                 $ailOrder = $orderService->previewOrder(['cargoParamList' => $cargoParamList, 'addressParam' => $addressParam]);
2639
+                if (!$ailOrder['success']) {
2640
+                    throw new ValidateException($ailOrder['preview']['msg']);
2641
+                }
2639
                 if ($ailOrder['preview']['sumCarriage'] > 0) {
2642
                 if ($ailOrder['preview']['sumCarriage'] > 0) {
2640
                     $postage_price = bcadd($postage_price, $ailOrder['preview']['sumCarriage'] / 100, 2);
2643
                     $postage_price = bcadd($postage_price, $ailOrder['preview']['sumCarriage'] / 100, 2);
2641
                 }
2644
                 }