From a2926f18e692a5f7655dee98c726b22a8a040200 Mon Sep 17 00:00:00 2001 From: fomichev Date: Mon, 19 May 2025 09:50:47 +0300 Subject: [PATCH] =?utf8?q?=D0=9F=D1=80=D0=B0=D0=B2=D0=BA=D0=B8=20=D0=BF?= =?utf8?q?=D0=BE=20=D0=BF=D1=80=D0=BE=D1=86=D0=B5=D0=BD=D1=82=D0=B0=D0=BC?= =?utf8?q?=20=D0=BD=D0=B5=D0=B4=D0=B5=D0=BB=D1=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- erp24/services/AutoPlannogrammaService.php | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/erp24/services/AutoPlannogrammaService.php b/erp24/services/AutoPlannogrammaService.php index 23136f75..05ed880f 100644 --- a/erp24/services/AutoPlannogrammaService.php +++ b/erp24/services/AutoPlannogrammaService.php @@ -1187,6 +1187,26 @@ var_dump($totals); die(); } } + $grouped = []; + foreach ($rows as $idx => $row) { + $key = "{$row['store_id']}|{$row['category']}|{$row['subcategory']}|{$row['species']}"; + $grouped[$key][] = $idx; + } + foreach ($grouped as $key => $indices) { + $sumPercent = 0.0; + foreach ($indices as $i) { + $sumPercent += $rows[$i]['percent']; + } + if ($sumPercent < 1.0) { + $diff = 1.0 - $sumPercent; + $count = count($indices); + $add = $diff / $count; + foreach ($indices as $i) { + $rows[$i]['percent'] = round($rows[$i]['percent'] + $add, 4); + } + } + } + return ['weeksData' => $rows]; } -- 2.39.5