From: marina Date: Tue, 17 Jun 2025 12:58:05 +0000 (+0300) Subject: ERP-360 Сборка страницы автопм X-Git-Url: https://gitweb.erp-flowers.ru/?a=commitdiff_plain;h=a4adfdc6fb14085f139a086bc16d0f1768338977;p=erp24_rep%2Fyii-erp24%2F.git ERP-360 Сборка страницы автопм --- diff --git a/erp24/controllers/AutoPlannogrammaController.php b/erp24/controllers/AutoPlannogrammaController.php index fb8bc0ff..76d107b0 100644 --- a/erp24/controllers/AutoPlannogrammaController.php +++ b/erp24/controllers/AutoPlannogrammaController.php @@ -155,21 +155,27 @@ class AutoPlannogrammaController extends BaseController foreach ($result as &$productData) { foreach ($productData['values'] as &$value) { - $storeId = $value['store_id']; - $quantity = $value['quantity']; + $storeId = $value['store_id'] ?? null; + $quantity = $value['quantity'] ?? 0; $value['title'] = []; if (!isset($forecast[$storeId])) { continue; } + // Безопасно получаем write_offs для всего value + $value['title']['write_offs'] = null; + if (isset($value['id']) && is_numeric($value['id'])) { + $autoplannogramma = Autoplannogramma::findOne(['id' => $value['id']]); + if ($autoplannogramma) { + $value['title']['write_offs'] = $autoplannogramma->writeoffs_forecast; + } + } + foreach (['offline', 'marketplace', 'online'] as $channel) { $channelData = $forecast[$storeId][$channel] ?? []; $titleData = []; - $autoplannogramma = isset($value['id']) ? Autoplannogramma::findOne(['id' => $value['id']]) : null; - $titleData['write_offs'] = $autoplannogramma ? $autoplannogramma->writeoffs_forecast : null; - if (isset($channelData['share']) && is_numeric($channelData['share'])) { $titleData[0] = round($quantity * $channelData['share'], 2); } @@ -182,7 +188,6 @@ class AutoPlannogrammaController extends BaseController $value['title'][$channel] = $titleData ?: []; } - } }