From: marina Date: Tue, 17 Jun 2025 09:59:14 +0000 (+0300) Subject: ERP-360 Сборка страницы автопм X-Git-Url: https://gitweb.erp-flowers.ru/?a=commitdiff_plain;h=8ea90f832eb93212d54ba65dd4526f6fa9cdaa05;p=erp24_rep%2Fyii-erp24%2F.git ERP-360 Сборка страницы автопм --- diff --git a/erp24/controllers/AutoPlannogrammaController.php b/erp24/controllers/AutoPlannogrammaController.php index c05754d4..bf947d5b 100644 --- a/erp24/controllers/AutoPlannogrammaController.php +++ b/erp24/controllers/AutoPlannogrammaController.php @@ -212,20 +212,20 @@ class AutoPlannogrammaController extends BaseController $quantity = $value['quantity']; $value['title'] = []; - // Skip if store_id is not in forecast if (!isset($forecast[$storeId])) { continue; } foreach (['offline', 'marketplace', 'online'] as $channel) { - // Initialize channel data in title - $value['title'][$channel] = []; $channelData = $forecast[$storeId][$channel] ?? []; + // Prioritize share if it exists if (isset($channelData['share']) && is_numeric($channelData['share'])) { $value['title'][$channel] = round($quantity * $channelData['share'], 2); + continue; // Skip product-specific data if share exists } + // Use product-specific forecast if available if (isset($productData['product_id']) && isset($forecast[$storeId][$productData['product_id']][$channel])) { $details = $forecast[$storeId][$productData['product_id']][$channel]; $total = array_sum($details); @@ -233,6 +233,8 @@ class AutoPlannogrammaController extends BaseController round($quantity * $total, 2), 'details' => array_map(fn($val) => round($val, 2), $details), ]; + } else { + $value['title'][$channel] = []; // Empty if neither share nor details exist } } }