/* @var $marketplaceOrder MarketplaceOrders */
if ($newStatusCode == 'DELIVERED' && $newSubstatusCode == 'DELIVERY_SERVICE_DELIVERED' && $marketplaceOrder) {
- $createChecks = new CreateChecks;
- $createChecks->order_guid = '';
- $createChecks->marketplace_order_id = $marketplaceOrder->marketplace_order_id;
- $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_up = $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->is_marketplace = 1;
- $createChecks->marketplace_name = $marketplaceOrder->marketplace_name;
- $createChecks->save();
- if ($createChecks->getErrors()) {
- Yii::warning("ORDER_ID_: " . Json::encode($createChecks->getErrors()));
+ $existingCheck = CreateChecks::find()
+ ->where(['marketplace_order_id' => $marketplaceOrder->marketplace_order_id])
+ ->exists();
+
+ if (!$existingCheck) {
+ $createChecks = new CreateChecks;
+ $createChecks->order_guid = '';
+ $createChecks->marketplace_order_id = $marketplaceOrder->marketplace_order_id;
+
+ $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_up = $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->is_marketplace = 1;
+ $createChecks->marketplace_name = $marketplaceOrder->marketplace_name;
+
+ if (!$createChecks->save()) {
+ Yii::warning("ORDER_ID_: " . Json::encode($createChecks->getErrors()));
+ }
}
}