]> gitweb.erp-flowers.ru Git - erp24_rep/yii-erp24/.git/commitdiff
[ERP-183] dashboard/sales показывает чеки за месяц feature_smirnov_erp-183_month_sales_dashboard origin/feature_smirnov_erp-183_month_sales_dashboard
authorAlexander Smirnov <fredeom@mail.ru>
Tue, 10 Sep 2024 14:42:35 +0000 (17:42 +0300)
committerAlexander Smirnov <fredeom@mail.ru>
Tue, 10 Sep 2024 14:42:35 +0000 (17:42 +0300)
erp24/actions/dashboard/SalesAction.php

index 276dbb45430d5dc027e157400114d6d5aac3543c..9aaab569044f06f216646ca3c653de0ff700f5ac 100755 (executable)
@@ -118,9 +118,18 @@ class SalesAction extends Action
 
         $data_store_visitors = StoreVisitorsService::getVisitorsByDate($date1, $date2);
 
+        $dataStoreVisitorsPrepared = [];
+        foreach ($data_store_visitors as $dsv) {
+            $dataStoreVisitorsPrepared[$dsv['store_id']] = [
+                "counter" => ($dataStoreVisitorsPrepared[$dsv['store_id']]["counter"] ?? 0) + $dsv['counter'],
+                "store_id" => $dsv['store_id'],
+                "date" => $date1,
+            ];
+        }
+
         $dashboardService = new DashboardService();
 
-        $store_traffik = $dashboardService->getStoreTraffic($data_store_visitors);
+        $store_traffik = $dashboardService->getStoreTraffic($dataStoreVisitorsPrepared);
 
         $date2_smen_time=strtotime($date2)+86400;
         $date2_smen=date("Y-m-d",$date2_smen_time);
@@ -179,11 +188,29 @@ class SalesAction extends Action
 
         $salesCount = $salesService->getSalesCountSum($date1, $date2);
 
-        $salesCountPrepared = ArrayHelper::index($salesCount, 'store_id');
+        $salesCountPrepared = [];
+        foreach ($salesCount as $sc) {
+            $salesCountPrepared[$sc['store_id']] = [
+                "cnt" => ($salesCountPrepared[$sc['store_id']]["cnt"] ?? 0) + $sc['cnt'],
+                "bonus_clients_cnt" => ($salesCountPrepared[$sc['store_id']]["bonus_clients_cnt"] ?? 0) + $sc['bonus_clients_cnt'],
+                "summ" =>  ($salesCountPrepared[$sc['store_id']]["summ"] ?? 0) + $sc['summ'],
+                "store_id" => $sc['store_id'],
+                "date_t" => $date1,
+            ];
+        }
 
         $salesReturnCount = $salesService->getSalesCountSum($date1, $date2, Sales::OPERATION_RETURN);
 
-        $salesReturnCountPrepared = ArrayHelper::index($salesReturnCount, 'store_id');
+        $salesReturnCountPrepared = [];
+        foreach ($salesReturnCount as $src) {
+            $salesReturnCountPrepared[$src['store_id']] = [
+                "cnt" => ($salesReturnCountPrepared[$src['store_id']]["cnt"] ?? 0) + $src['cnt'],
+                "bonus_clients_cnt" => ($salesReturnCountPrepared[$src['store_id']]["bonus_clients_cnt"] ?? 0) + $src['bonus_clients_cnt'],
+                "summ" =>  ($salesReturnCountPrepared[$src['store_id']]["summ"] ?? 0) + $src['summ'],
+                "store_id" => $src['store_id'],
+                "date_t" => $date1,
+            ];
+        }
 
         $salesCalculatePrepared = $salesService->salesCalculate($salesCountPrepared, $salesReturnCountPrepared);