shish 2 лет назад
Родитель
Сommit
54aebfe9e2
2 измененных файлов с 53 добавлено и 1 удалено
  1. 25 0
      app-ghs/controllers/OrderController.php
  2. 28 1
      biz-ghs/order/classes/OrderClass.php

+ 25 - 0
app-ghs/controllers/OrderController.php

@@ -34,6 +34,31 @@ class OrderController extends BaseController
 
     public $guestAccess = ['create-order', 'order-relate', 'fast-pay', 'info'];
 
+    //确认送达
+    public function actionConfirmReach()
+    {
+        $get = Yii::$app->request->get();
+        $id = $get['id'] ?? '';
+        $order = OrderClass::getById($id, true);
+        if (empty($order)) {
+            util::fail('没有找到订单');
+        }
+        if ($order->mainId != $this->mainId) {
+            util::fail('不是你的订单');
+        }
+        if ($order->status == 1) {
+            util::fail('订单待付款');
+        }
+        if ($order->status == 4) {
+            util::fail('订单已完成');
+        }
+        if ($order->status == 5) {
+            util::fail('订单已取消');
+        }
+        OrderClass::confirmReach($order);
+        util::complete('操作成功');
+    }
+
     public function actionAllFh()
     {
         $post = Yii::$app->request->post();

+ 28 - 1
biz-ghs/order/classes/OrderClass.php

@@ -119,6 +119,33 @@ class OrderClass extends BaseClass
         self::REFUND_YES => '有退款',
     ];
 
+    public static function confirmReach($order)
+    {
+        //订单如果没有发货,则先发货
+        if ($order->status == 2) {
+            self::orderSend($order, [], true);
+        }
+        $cgId = $order->purchaseId ?? 0;
+        $cg = PurchaseClass::getById($cgId, true);
+        if (empty($cg)) {
+            util::fail('没有找到采购信息');
+        }
+        $customId = $order->customId ?? 0;
+        $custom = CustomClass::getById($customId, true);
+        if (empty($custom)) {
+            util::fail('没有找到客户信息');
+        }
+        $shopId = $custom->shopId ?? 0;
+        $customShop = ShopClass::getById($shopId, true);
+        if (empty($customShop)) {
+            util::fail('没有找到客户的门店');
+        }
+        if (isset($customShop->pfShopId) && !empty($customShop->pfShopId)) {
+            util::fail('客户有批发店,请通知客户确认');
+        }
+        PurchaseClass::takeToPutIn($cg);
+    }
+
     //订单发货主方法 ssh 20231119
     public static function orderSend($order, $params, $allowRepeat = false)
     {
@@ -128,7 +155,7 @@ class OrderClass extends BaseClass
         if (empty($cgInfo)) {
             util::fail('没有找到采购信息');
         }
-        PurchaseClass::orderFh($cgInfo, $params, $allowRepeat,true);
+        PurchaseClass::orderFh($cgInfo, $params, $allowRepeat, true);
     }
 
     //订单发货子方法 ssh 20231119