if ($marketplaceOrder->status->code == 'DELIVERED' &&
$marketplaceOrder->substatus->code == 'DELIVERY_SERVICE_DELIVERED' &&
$marketplaceOrder) {
+ $deliveredStatusId = $statuses['DELIVERED'];
+ $status1cWithDeliveredId = ArrayHelper::getColumn(MarketplaceOrder1cStatuses::find()
+ ->where(['order_status_id' => $deliveredStatusId])
+ ->andWhere(['marketplace_id' => 1])
+ ->asArray()
+ ->all(), 'id')[0] ?? null;
+ $marketplaceOrder->status_processing_1c = $status1cWithDeliveredId;
+ if(!$marketplaceOrder->save()) {
+ Yii::error('Не удалось обновить заказ' . json_encode($marketplaceOrder->getErrors(), JSON_UNESCAPED_UNICODE));
+ }
/* @var $marketplaceOrder MarketplaceOrders */
$isCheckCreated = MarketplaceService::createCheckForMarketplaceOrder($marketplaceOrder);
- //$marketplaceOrder->status_processing_1c =
+
}
// Обновление существующего заказа, если данные изменились
if ($newRawData !== $marketplaceOrder->raw_data && $marketplaceOrder->guid != null) {
->andWhere(['marketplace_id' => 1])
->asArray()
->all(), 'id')[0] ?? null;
+ $status1cWithDeliveredId = ArrayHelper::getColumn(MarketplaceOrder1cStatuses::find()
+ ->where(['order_status_id' => $deliveredStatusId])
+ ->andWhere(['marketplace_id' => 1])
+ ->asArray()
+ ->all(), 'id')[0] ?? null;
$order = self::getOrdersDataFromMessage($message);
if ($message['subject_index'] == self::SUBJECT_INDEX[self::SUBJECT_NEW]) {
if ($statusCode == 'DELIVERED' && $substatusCode == 'DELIVERY_SERVICE_DELIVERED' && $marketplaceOrder) {
Yii::error('Заказ доставлен ' . $marketplaceOrder->marketplace_order_id);
/* @var $marketplaceOrder MarketplaceOrders */
- $marketplaceOrder->status_processing_1c = 'delivered';
- $marketplaceOrder->save();
+ $marketplaceOrder->status_processing_1c = $status1cWithDeliveredId;
+ if(!$marketplaceOrder->save()) {
+ Yii::error('Не удалось обновить заказ' . json_encode($marketplaceOrder->getErrors(), JSON_UNESCAPED_UNICODE));
+ }
$isCheckCreated = self::createCheckForMarketplaceOrder($marketplaceOrder);
}
if ($statusCode == MarketplaceOrderStatusTypes::CANSELLED_CODE && $substatusCode == 'USER_CHANGED_MIND' && $marketplaceOrder) {