Przeglądaj źródła

1. fix bug
2. 创建查询配送订单状态接口

shizhongqi 11 miesięcy temu
rodzic
commit
e52a64c5ce

+ 43 - 0
app-hd/controllers/ExpressController.php

@@ -3,12 +3,17 @@
 namespace hd\controllers;
 
 use bizHd\express\classes\ExpressClass;
+use bizHd\express\classes\ExpressOrderClass;
 use bizHd\merchant\services\ExpressService;
 use bizHd\merchant\services\ShopService;
+use bizHd\order\classes\OrderClass;
 use bizHd\purchase\classes\PurchaseClass;
 use common\components\dict;
+use common\components\IntraCityExpress;
+use common\components\noticeUtil;
 use Yii;
 use common\components\util;
+use yii\db\Query;
 
 class ExpressController extends BaseController
 {
@@ -66,4 +71,42 @@ class ExpressController extends BaseController
         util::success(['hasMap' => dict::getDict('hasMap')]);
     }
 
+    // 配送详情
+    public function actionDetail()
+    {
+        $post = Yii::$app->request->post();
+        $orderId = intval($post['orderId']);
+
+        $order = OrderClass::getById($orderId, false, 'id, mainId, sendStatus');
+        if ($order['mainId'] != $this->mainId) {
+            util::fail('订单未找到');
+        }
+
+        // 检查是否存在重复的订单:如果存在,则使用最后一个订单的 store_order_id
+        $storeOrderId = $orderId; // ------------------------------------- 注意区分:$storeOrderId , $orderId 。它们有可能不相同
+        $query = (new Query())
+            ->from('xhExpressOrder')
+            ->where(['and',
+                new \yii\db\Expression('storeOrderId LIKE CONCAT(:prefix, "%")', [':prefix' => $orderId . '_copy_'])
+            ])->orderBy('addTime DESC');
+        $esDatas = $query->all();
+
+        $count = count($esDatas);
+        $es = null;
+        if ($count > 0) {
+            $es = $esDatas[0];
+            //$storeOrderId = $es['storeOrderId'];
+
+            if ($count > 1) {
+                noticeUtil::push('同城配送订单重复多于1个.');
+            }
+        }
+
+        if (!empty($es)) {
+            util::success($es, "查询成功");
+        } else {
+            Yii::error("配送订单查询失败");
+            util::fail('配送订单查询失败');
+        }
+    }
 }

+ 1 - 1
app-hd/controllers/IntraCityController.php

@@ -511,7 +511,7 @@ class IntraCityController extends BaseController
                 ->from('xhExpressOrder')
                 ->where(['and',
                     new \yii\db\Expression('storeOrderId LIKE CONCAT(:prefix, "%")', [':prefix' => $orderId . '_copy_']),
-                    ['status' => 1]
+                    ['status' => 2] // 取完成状态
                 ])->orderBy('addTime DESC');
             $esDatas = $query->all();
             $count = count($esDatas);