From b819a1e6bcfe94653c78e9fe75208a390f3d637d Mon Sep 17 00:00:00 2001 From: Alexander Smirnov Date: Tue, 29 Apr 2025 11:36:57 +0300 Subject: [PATCH] [ERP-409] refactor --- ...etplace_order_id_to_table_create_check.php | 1 + erp24/records/CreateChecks.php | 2 +- erp24/services/MarketplaceService.php | 66 ++++++++++--------- 3 files changed, 37 insertions(+), 32 deletions(-) diff --git a/erp24/migrations/m250428_114148_add_column_marketplace_order_id_to_table_create_check.php b/erp24/migrations/m250428_114148_add_column_marketplace_order_id_to_table_create_check.php index fc545d3d..28d84ead 100755 --- a/erp24/migrations/m250428_114148_add_column_marketplace_order_id_to_table_create_check.php +++ b/erp24/migrations/m250428_114148_add_column_marketplace_order_id_to_table_create_check.php @@ -27,6 +27,7 @@ class m250428_114148_add_column_marketplace_order_id_to_table_create_check exten $this->alterColumn(self::TABLE_NAME, 'kkm_id', $this->string(36)->null()->comment('kkm_id')); $this->alterColumn(self::TABLE_NAME, 'seller_id', $this->string(36)->null()->comment('seller_id')); + $this->alterColumn(self::TABLE_NAME, 'order_id', $this->bigInteger()->null()->comment('order_id')); } /** diff --git a/erp24/records/CreateChecks.php b/erp24/records/CreateChecks.php index 1ac5ecb4..59a278c2 100644 --- a/erp24/records/CreateChecks.php +++ b/erp24/records/CreateChecks.php @@ -45,7 +45,7 @@ class CreateChecks extends \yii\db\ActiveRecord public function rules() { return [ - [['kkm_id', 'store_id', 'order_id', 'check_id', 'guid', 'name', 'sales_check', 'items', /*'payments',*/ 'held', 'date'/*, 'comments'*/], 'required'], + [[/*'kkm_id', */'store_id', /*'order_id', */'check_id', 'guid', /*'name', 'sales_check',*/ 'items', /*'payments',*/ 'held', 'date'/*, 'comments'*/], 'required'], [['order_id', 'held', 'status'], 'integer'], [['type', 'items', 'payments', 'phone'], 'string'], [['date', 'delivery_date', 'date_up', 'phone'], 'safe'], diff --git a/erp24/services/MarketplaceService.php b/erp24/services/MarketplaceService.php index 0c02883c..bd44bc1a 100644 --- a/erp24/services/MarketplaceService.php +++ b/erp24/services/MarketplaceService.php @@ -1712,37 +1712,6 @@ class MarketplaceService } $count += self::processFlowwowOrders($order, $store, $statusCode, $substatusCode, $message['subject_index']); - if ($statusCode == 'DELIVERED' && $substatusCode == 'DELIVERY_SERVICE_DELIVERED') { - $marketplaceOrder = MarketplaceOrders::find() - ->where(['marketplace_order_id' => (string)key($order)]) - ->one(); - /* @var $marketplaceOrder MarketplaceOrders */ - $createChecks = new CreateChecks; - $createChecks->order_guid = $marketplaceOrder->guid; - - $eit = ExportImportTable::find()->select(['export_val'])->where(['entity' => 'city_store', 'export_id' => 1, 'entity_id' => $marketplaceOrder->store_id])->one(); - $createChecks->store_id = $eit->export_val ?? ''; - $createChecks->date = $marketplaceOrder->delivery_to; - $createChecks->check_id = DataHelper::createGuidMy('02'); - $createChecks->guid = $createChecks->check_id; - $createChecks->type = 'Продажа'; - $items = []; - foreach ($marketplaceOrder->items as $item) { - /* @var $item MarketplaceOrderItems */ - $productsId = Products1c::find()->select(['id'])->where(['articule' => $item->offer_id])->one(); - $items [] = [ - 'product_id' => $productsId->id ?? '', - 'quantity' => $item->count, - 'seller_id' => '', - 'marketplace_order_id' => $marketplaceOrder->marketplace_order_id, - ]; - } - $createChecks->items = Json::encode($items); - $createChecks->payments = ''; - $createChecks->held = true; - $createChecks->comments = ''; - $createChecks->date = date('Y-m-d H:i:s'); - } } } return $count; @@ -1774,6 +1743,41 @@ class MarketplaceService } $count = self::processFlowwowOrders($order, $store, $statusCode, $substatusCode, $message['subject_index']); + if ($statusCode == 'DELIVERED' && $substatusCode == 'DELIVERY_SERVICE_DELIVERED') { + $marketplaceOrder = MarketplaceOrders::find() + ->where(['marketplace_order_id' => (string)key($order)]) + ->one(); + /* @var $marketplaceOrder MarketplaceOrders */ + $createChecks = new CreateChecks; + $createChecks->order_guid = $marketplaceOrder->guid; + + $eit = ExportImportTable::find()->select(['export_val'])->where(['entity' => 'city_store', 'export_id' => 1, 'entity_id' => $marketplaceOrder->store_id])->one(); + $createChecks->store_id = $eit->export_val ?? ''; + $createChecks->date = $marketplaceOrder->delivery_to; + $createChecks->check_id = DataHelper::createGuidMy('02'); + $createChecks->guid = $createChecks->check_id; + $createChecks->type = 'Продажа'; + $items = []; + foreach ($marketplaceOrder->items as $item) { + /* @var $item MarketplaceOrderItems */ + $productsId = Products1c::find()->select(['id'])->where(['articule' => $item->offer_id])->one(); + $items [] = [ + 'product_id' => $productsId->id ?? '', + 'quantity' => $item->count, + 'seller_id' => '', + 'marketplace_order_id' => $marketplaceOrder->marketplace_order_id, + ]; + } + $createChecks->items = Json::encode($items); + $createChecks->payments = ''; + $createChecks->held = 1; + $createChecks->comments = ''; + $createChecks->date = date('Y-m-d H:i:s'); + $createChecks->save(); + if ($createChecks->getErrors()) { + Yii::warning("ORDER_ID_: " . Json::encode($createChecks->getErrors())); + } + } } return $count; } -- 2.39.5