if (!empty($result['marketplace_orders'])) {
foreach ($result["marketplace_orders"] as $mpOrder) {
$updateResult = $this->changeMarketplaceOrderStatusFrom1C($mpOrder); //изменение статусов
- if ($updateResult !== true) {
- LogService::apiErrorLog(json_encode(["error_id" => 40, "error" => $updateResult], JSON_UNESCAPED_UNICODE));
+ if ($updateResult['status'] == 'error') {
+ LogService::apiErrorLog(json_encode(["error_id" => 40, "error" => $updateResult['message']], JSON_UNESCAPED_UNICODE));
}
}
}
public function changeMarketplaceOrderStatusFrom1C($mpOrder)
{
- $result = 'Заказ не найден ';
+ $result = null;
+ if (!$mpOrder['status']) {
+ $result['message'] = 'Статус не передан';
+ $result['status'] = null;
+ return $result;
+ }
+
$marketplaceOrder = MarketplaceOrders::findOne(['guid' => $mpOrder['id']]);
if ($marketplaceOrder) {
- $status = $mpOrder['status'] ?? null;
+ $status = $mpOrder['status'];
/** @var $marketplaceOrder MarketplaceOrders */
$debug = false;
/** @var $status MarketplaceOrderStatusTypes */
/** @var $substatus MarketplaceOrderStatusTypes */
$status = $statusId1C->orderStatus;
- $substatus = $statusId1C->orderStatus;
+ $substatus = $statusId1C->orderSubstatus;
if (
in_array($statusId1C->status_id, ['1013', '1010']) &&
MarketplaceService::createOrUpdateStatusHistory($marketplaceOrder->id, $status->id, $substatus->id, [
'date' => date('Y-m-d H:i:s')
]);
- $result = true;
+ $result['status'] = 'success';
+ $result['message'] = 'Статус обновлен';
} else {
Yii::error('Ошибка сохранения: ' . Json::encode($marketplaceOrder->getErrors(), JSON_UNESCAPED_UNICODE));
- $result = $marketplaceOrder->getErrors();
+ $result['status'] = 'error';
+ $result['message'] = $marketplaceOrder->getErrors();
}
} else {
- $result .= $mpOrder['id'];
+ $result['message'] = 'Заказ не найден ' . $mpOrder['id'];;
+ $result['status'] = 'not_found';
}
return $result;