Переглянути джерело

fix(store): 修复1688预下单接口验证逻辑

- 添加商品SPU ID和规格ID的必填验证
- 调整异常抛出时机确保数据完整性
- 移除无效的订单预览成功状态检查
- 优化验证异常消息提示准确性
shichen 3 місяців тому
батько
коміт
e1140caa75

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

@@ -2631,11 +2631,11 @@ class StoreOrderRepository extends BaseRepository
2631 2631
                     'specId' => $cart['productAttr']['spec_id'],
2632 2632
                     'quantity' => $cart['cart_num']
2633 2633
                 ];
2634
-                $orderService = new OrderService();
2635
-                $ailOrder = $orderService->previewOrder(['cargoParamList' => $cargoParamList, 'addressParam' => $addressParam]);
2636
-                if (!$ailOrder['success']) {
2634
+                if (!$cart['product']['spu_id'] || !$cart['productAttr']['spec_id']) {
2637 2635
                     throw new ValidateException('1688预下单接口请求失败');
2638 2636
                 }
2637
+                $orderService = new OrderService();
2638
+                $ailOrder = $orderService->previewOrder(['cargoParamList' => $cargoParamList, 'addressParam' => $addressParam]);
2639 2639
                 if ($ailOrder['preview']['sumCarriage'] > 0) {
2640 2640
                     $postage_price = bcadd($postage_price, $ailOrder['preview']['sumCarriage'] / 100, 2);
2641 2641
                 }