Правки по сортировке для подкатегорий, пересчет строки итого для общей статистики

parent 56c60383
...@@ -3012,6 +3012,7 @@ return [ ...@@ -3012,6 +3012,7 @@ return [
'codes' => 'codes' =>
array( array(
0 => 703883, 0 => 703883,
1 => 694422,
), ),
), ),
340 => 340 =>
...@@ -3140,6 +3141,7 @@ return [ ...@@ -3140,6 +3141,7 @@ return [
'codes' => 'codes' =>
array( array(
0 => 240241, 0 => 240241,
1 => 695592,
), ),
), ),
356 => 356 =>
......
This diff is collapsed.
...@@ -105,7 +105,7 @@ class CabinetAmSystem extends Common ...@@ -105,7 +105,7 @@ class CabinetAmSystem extends Common
foreach ($campaigns as $campaign_item) { foreach ($campaigns as $campaign_item) {
$campaign_id = $campaign_item['id']; $campaign_id = $campaign_item['id'];
$campaigns_stat[$campaign_id] = $stats->getCampaignsStat([$campaign_id], $campaign_item['target_action'], null); $campaigns_stat[$campaign_id] = $stats->getCampaignsStat([$campaign_id], $campaign_item['target_action'], null, false);
} }
$data['campaigns'] = $campaigns; $data['campaigns'] = $campaigns;
...@@ -159,8 +159,8 @@ class CabinetAmSystem extends Common ...@@ -159,8 +159,8 @@ class CabinetAmSystem extends Common
$date_end = $campaign->getDateEnd() ? : date("Y-m-d"); $date_end = $campaign->getDateEnd() ? : date("Y-m-d");
$dates_common = [$date_begin, $date_end_common]; $dates_common = [$date_begin, $date_end_common];
$dates = [$date_begin, $date_end]; $dates = [$date_begin, $date_end];
$campaign_stat = $stats->getCampaignsStat([(int)$campaign_id], $campaign->getTargetAction(), $dates_common); $campaign_stat = $stats->getCampaignsStat([(int)$campaign_id], $campaign->getTargetAction(), $dates_common, true);
$campaign_stat_total = $stats->getCampaignsStat([(int)$campaign_id], $campaign->getTargetAction(), null); $campaign_stat_total = $stats->getCampaignsStat([(int)$campaign_id], $campaign->getTargetAction(), $dates_common, false);
$active_line = 'views'; $active_line = 'views';
...@@ -277,8 +277,8 @@ class CabinetAmSystem extends Common ...@@ -277,8 +277,8 @@ class CabinetAmSystem extends Common
if ($data_request['type'] == 'stat-common') { if ($data_request['type'] == 'stat-common') {
$data_stat = [ $data_stat = [
'stat' => $stats->getCampaignsStat([(int)$campaign_id], $campaign->getTargetAction(), $data_request['period']), 'stat' => $stats->getCampaignsStat([(int)$campaign_id], $campaign->getTargetAction(), $data_request['period'], true),
'total' => $stats->getCampaignsStat([(int)$campaign_id], $campaign->getTargetAction(), null) 'total' => $stats->getCampaignsStat([(int)$campaign_id], $campaign->getTargetAction(), $data_request['period'], false)
]; ];
} }
......
...@@ -346,7 +346,7 @@ class Statistics ...@@ -346,7 +346,7 @@ class Statistics
} }
// Данные для статистики по кампании (баннеры) // Данные для статистики по кампании (баннеры)
public function getCampaignsStat($id_list, $taget_action, $dates) public function getCampaignsStat($id_list, $taget_action, $dates, $by_days = false)
{ {
$dataRequest = array( $dataRequest = array(
'method' => ($dates) ? 'camp_day' : 'camp_total', 'method' => ($dates) ? 'camp_day' : 'camp_total',
...@@ -356,7 +356,7 @@ class Statistics ...@@ -356,7 +356,7 @@ class Statistics
); );
if ($dates) { if ($dates) {
// последние 90 дней, если кампания долго идет
$dataRequest['data']['start_date'] = $dates[0]; $dataRequest['data']['start_date'] = $dates[0];
if ($dates[1] && $dates[1] < date("Y-m-d")) { if ($dates[1] && $dates[1] < date("Y-m-d")) {
...@@ -366,11 +366,14 @@ class Statistics ...@@ -366,11 +366,14 @@ class Statistics
} }
$dataRequest['data']['end_date'] = $date_end; $dataRequest['data']['end_date'] = $date_end;
// последние 90 дней, если кампания долго идет
//$date_start = $dates[0]; //$date_start = $dates[0];
//$interval = date($date_end)->diff(date($date_start)); // получаем разницу в виде объекта DateInterval //$interval = date($date_end)->diff(date($date_start)); // получаем разницу в виде объекта DateInterval
//$dataRequest['data']['diff'] = $interval->d; //$dataRequest['data']['diff'] = $interval->d;
$dataRequest['data']['by_days'] = true; if ($by_days) {
$dataRequest['data']['by_days'] = true;
}
} }
//return $dataRequest; //return $dataRequest;
...@@ -408,7 +411,7 @@ class Statistics ...@@ -408,7 +411,7 @@ class Statistics
$stats['money'] = round($stats['money'], 2); $stats['money'] = round($stats['money'], 2);
}; };
if (!$dates) if (!$dates || !$by_days)
{ {
$AddSpecialFields($stats); $AddSpecialFields($stats);
$dataStats = $stats; $dataStats = $stats;
...@@ -618,8 +621,14 @@ class Statistics ...@@ -618,8 +621,14 @@ class Statistics
$stats['money'] = round($stats['money'], 2); $stats['money'] = round($stats['money'], 2);
}; };
// Убираем города у регионов Киев(703447) и empty:
foreach ([703447, 'empty'] as $region_code) {
unset($stats[$region_code]['sub']);
}
foreach ($stats as $region => $stat) { foreach ($stats as $region => $stat) {
$AddSpecialFields($stats[$region]); $AddSpecialFields($stats[$region]);
if ($stat['sub']) { if ($stat['sub']) {
foreach ($stat['sub'] as $sub => $stat) { foreach ($stat['sub'] as $sub => $stat) {
$AddSpecialFields($stats[$region]['sub'][$sub]); $AddSpecialFields($stats[$region]['sub'][$sub]);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment