]> gitweb.erp-flowers.ru Git - erp24_rep/yii-erp24/.git/commitdiff
Вывод статусов
authorVladimir Fomichev <vladimir.fomichev@erp-flowers.ru>
Tue, 12 Aug 2025 14:23:49 +0000 (17:23 +0300)
committerVladimir Fomichev <vladimir.fomichev@erp-flowers.ru>
Tue, 12 Aug 2025 14:23:49 +0000 (17:23 +0300)
erp24/api2/controllers/OrdersController.php
erp24/records/MarketplaceOrderStatusTypes.php

index 8d189a0bc3fadcafb5567fae567cabefdc1e0915..8a23af07b889e4584721f7d2e350cc08c57c7de3 100644 (file)
@@ -58,6 +58,22 @@ class OrdersController extends BaseController
             ->indexBy('code')
             ->asArray()
             ->all();
+        $cancelledStatusId = $statuses[MarketplaceOrderStatusTypes::CANSELLED_CODE]['id'];
+        $readyStatusId = $statuses[MarketplaceOrderStatusTypes::READY_CODE]['id'];
+        $statuses1cWithCancelledId = ArrayHelper::getColumn(MarketplaceOrder1cStatuses::find()
+            ->select(['status_id'])
+            ->where(['order_status_id' => $cancelledStatusId])
+            ->asArray()
+            ->all(), 'status_id');
+        $statuses1cToChangeYandexMarketFakeOrderId = ArrayHelper::getColumn(MarketplaceOrder1cStatuses::find()
+                ->select(['status_id'])
+                ->where(['order_status_id' => $cancelledStatusId])
+                ->orWhere(['order_substatus_id' => $readyStatusId])
+                ->andWhere(['marketplace_id' => 2])
+                ->asArray()
+                ->all(), 'status_id');
+
+
         $statuses = ArrayHelper::map($statuses, 'code', 'id');
         $statusCodes = array_unique(array_keys($statuses));
 
@@ -121,7 +137,7 @@ class OrdersController extends BaseController
             $substatus = $statusId1C->orderStatus;
 
             if (
-                in_array($statusId1C->status_id, ['1013', '1010']) &&
+                in_array($statusId1C->status_id, $statuses1cToChangeYandexMarketFakeOrderId) &&
                 $order->marketplace_id == 2
             ) {
                 if (!$debug) {
@@ -164,9 +180,9 @@ class OrdersController extends BaseController
             if($orderSellerId) {
                 $order->seller_id = $orderSellerId;
             }
-            if (in_array($statusId1C->status_id, ['1013', '1006'])) {
-                $marketplaceOrder->cancelled_order_source = '1c';
-                $marketplaceOrder->cancelled_order_date = date('Y-m-d H:m:s');
+            if (in_array($statusId1C->status_id, $statuses1cWithCancelledId)) {
+                $order->cancelled_order_source = '1c';
+                $order->cancelled_order_date = date('Y-m-d H:m:s');
             }
             $order->status_processing_1c = $statusId1C->id;
 
index 95064542247b13c1376e2aeb5cabb3cde6a19d48..63a2b84d046d91fa83ea8b3c559b129e145cc66b 100644 (file)
@@ -14,8 +14,8 @@ use Yii;
  */
 class MarketplaceOrderStatusTypes extends \yii\db\ActiveRecord
 {
-
-
+    const CANSELLED_CODE = 'CANCELLED';
+    const READY_CODE = 'READY_TO_SHIP';
     /**
      * {@inheritdoc}
      */