Dashboard meta、google、tiktok的看板数据 更新3
This commit is contained in:
parent
166bd0fbe6
commit
765dc88e87
@ -109,9 +109,11 @@ class AdsDashboardService
|
|||||||
COALESCE(SUM(d.spend) / 1000000, 0) as spend,
|
COALESCE(SUM(d.spend) / 1000000, 0) as spend,
|
||||||
COALESCE(SUM(d.impressions), 0) as impressions,
|
COALESCE(SUM(d.impressions), 0) as impressions,
|
||||||
COALESCE(SUM(d.adds_to_cart), 0) as adds_to_cart,
|
COALESCE(SUM(d.adds_to_cart), 0) as adds_to_cart,
|
||||||
COALESCE(SUM(d.cost_per_atc), 0) as cost_per_atc,
|
|
||||||
COALESCE(SUM(d.purchases), 0) as purchases,
|
COALESCE(SUM(d.purchases), 0) as purchases,
|
||||||
|
COALESCE(SUM(d.purchases_all), 0) as purchases_all,
|
||||||
|
COALESCE(SUM(d.platform_purchase), 0) as platform_purchase,
|
||||||
COALESCE(SUM(d.purchases_value) / 1000000, 0) as purchases_value,
|
COALESCE(SUM(d.purchases_value) / 1000000, 0) as purchases_value,
|
||||||
|
COALESCE(SUM(d.platform_purchase_value) / 1000000, 0) as platform_purchase_value,
|
||||||
COALESCE(SUM(d.revenue) / 1000000, 0) as revenue,
|
COALESCE(SUM(d.revenue) / 1000000, 0) as revenue,
|
||||||
COALESCE(SUM(d.total_cost) / 1000000, 0) as total_cost'
|
COALESCE(SUM(d.total_cost) / 1000000, 0) as total_cost'
|
||||||
)
|
)
|
||||||
@ -125,28 +127,28 @@ class AdsDashboardService
|
|||||||
'roas' => 'roas',
|
'roas' => 'roas',
|
||||||
'cpc' => 'cpc',
|
'cpc' => 'cpc',
|
||||||
'cpm' => 'cpm',
|
'cpm' => 'cpm',
|
||||||
'meta_purchases' => 'purchases',
|
'meta_purchases' => 'platform_purchase',
|
||||||
'web_purchases' => 'purchases',
|
'web_purchases' => 'purchases',
|
||||||
'purchases' => 'purchases',
|
'purchases' => 'purchases_all',
|
||||||
'meta_conversion_value' => 'purchases_value',
|
'meta_conversion_value' => 'platform_purchase_value',
|
||||||
'web_conversion_value' => 'purchases_value',
|
'web_conversion_value' => 'purchases_value',
|
||||||
'conversion_value' => 'purchases_value',
|
'conversion_value' => 'purchases_value',
|
||||||
'cpoc' => 'cost_per_atc',
|
'cpoc' => '',
|
||||||
'ctr' => 'ctr',
|
'ctr' => 'ctr',
|
||||||
'revenue_per_link_click' => 'revenue_per_link_click',
|
'revenue_per_link_click' => 'revenue_per_link_click',
|
||||||
'cpa' => 'cpa',
|
'cpa' => 'cpa',
|
||||||
],
|
],
|
||||||
'google' => [
|
'google' => [
|
||||||
'google_ads' => 'spend', // 示例映射
|
'google_ads' => 'spend', // 示例映射
|
||||||
'conversion_value' => 'purchases_value',
|
'conversion_value' => 'platform_purchase_value',
|
||||||
'roas' => 'roas',
|
'roas' => 'roas',
|
||||||
'conversions' => 'purchases',
|
'conversions' => 'purchases',
|
||||||
'ctr' => 'ctr',
|
'ctr' => 'ctr',
|
||||||
'cpa' => 'cpa',
|
'cpa' => 'google_cpa',
|
||||||
'cpm' => 'cpm',
|
'cpm' => 'cpm',
|
||||||
'clicks' => 'clicks',
|
'clicks' => 'clicks',
|
||||||
'impressions' => 'impressions',
|
'impressions' => 'impressions',
|
||||||
'all_conversions_value' => 'purchases_value',
|
'all_conversions_value' => 'revenue',
|
||||||
'all_roas' => 'roas',
|
'all_roas' => 'roas',
|
||||||
'all_conversions' => 'purchases',
|
'all_conversions' => 'purchases',
|
||||||
'all_cpa' => 'cpa',
|
'all_cpa' => 'cpa',
|
||||||
@ -159,13 +161,13 @@ class AdsDashboardService
|
|||||||
'cpc' => 'cpc',
|
'cpc' => 'cpc',
|
||||||
'ctr' => 'ctr',
|
'ctr' => 'ctr',
|
||||||
'cpa' => 'cpa',
|
'cpa' => 'cpa',
|
||||||
'tiktok_shop_conversions' => 'purchases',
|
'tiktok_shop_conversions' => '',
|
||||||
'tiktok_shop_conversion_value' => 'purchases_value',
|
'tiktok_shop_conversion_value' => '',
|
||||||
'conversion_value' => 'purchases_value',
|
'conversion_value' => 'platform_purchase_value',
|
||||||
'web_conversion_value' => 'purchases_value',
|
'web_conversion_value' => 'revenue',
|
||||||
'purchases' => 'purchases',
|
'purchases' => 'platform_purchase',
|
||||||
'web_purchases' => 'purchases',
|
'web_purchases' => 'purchases',
|
||||||
'tiktok_gmv_max_ads' => 'revenue',
|
'tiktok_gmv_max_ads' => '',
|
||||||
],
|
],
|
||||||
];
|
];
|
||||||
|
|
||||||
@ -187,12 +189,17 @@ class AdsDashboardService
|
|||||||
$impressions = (int)$data['impressions'];
|
$impressions = (int)$data['impressions'];
|
||||||
$clicks = (int)$data['clicks'];
|
$clicks = (int)$data['clicks'];
|
||||||
$purchases = (int)$data['purchases'];
|
$purchases = (int)$data['purchases'];
|
||||||
$purchasesValue = (float)$data['purchases_value'];
|
$purchases_all = (int)$data['purchases_all'];
|
||||||
|
$platform_purchase = (int)$data['platform_purchase'];
|
||||||
|
$purchases_value = (float)$data['purchases_value'];
|
||||||
|
$platform_purchase_value = (float)$data['platform_purchase_value'];
|
||||||
|
|
||||||
// 计算指标
|
// 计算指标
|
||||||
$roas = ($spend == 0) ? 0 : $revenue / $spend;
|
$roas = ($spend == 0) ? 0 : $revenue / $spend;
|
||||||
$ctr = ($impressions == 0) ? 0 : $clicks / $impressions;
|
$ctr = ($impressions == 0) ? 0 : $clicks / $impressions;
|
||||||
|
$cpoc = ($platform_purchase == 0) ? 0 : $platform_purchase_value / $platform_purchase;
|
||||||
$cpa = ($purchases == 0) ? 0 : $spend / $purchases;
|
$cpa = ($purchases == 0) ? 0 : $spend / $purchases;
|
||||||
|
$google_cpa = ($platform_purchase == 0) ? 0 : $spend / $platform_purchase;
|
||||||
$cpm = ($impressions == 0) ? 0 : ($spend * 1000) / $impressions;
|
$cpm = ($impressions == 0) ? 0 : ($spend * 1000) / $impressions;
|
||||||
$cpc = ($clicks == 0) ? 0 : $spend / $clicks;
|
$cpc = ($clicks == 0) ? 0 : $spend / $clicks;
|
||||||
$conversionRate = ($clicks == 0) ? 0 : $purchases / $clicks;
|
$conversionRate = ($clicks == 0) ? 0 : $purchases / $clicks;
|
||||||
@ -220,17 +227,26 @@ class AdsDashboardService
|
|||||||
$value = '$' . number_format($totalCost, 2);
|
$value = '$' . number_format($totalCost, 2);
|
||||||
break;
|
break;
|
||||||
case 'purchases_value':
|
case 'purchases_value':
|
||||||
$value = '$' . number_format($purchasesValue, 2);
|
$value = '$' . number_format($purchases_value, 2);
|
||||||
|
break;
|
||||||
|
case 'platform_purchase_value':
|
||||||
|
$value = '$' . number_format($platform_purchase_value, 2);
|
||||||
break;
|
break;
|
||||||
case 'roas':
|
case 'roas':
|
||||||
$value = round($roas, 2) . 'X';
|
$value = round($roas, 2) . 'X';
|
||||||
break;
|
break;
|
||||||
|
case 'cpoc':
|
||||||
|
$value = '$' . number_format($cpoc, 2) . '%';
|
||||||
|
break;
|
||||||
case 'ctr':
|
case 'ctr':
|
||||||
$value = number_format($ctr * 100, 2) . '%';
|
$value = number_format($ctr * 100, 2) . '%';
|
||||||
break;
|
break;
|
||||||
case 'cpa':
|
case 'cpa':
|
||||||
$value = '$' . number_format($cpa, 2);
|
$value = '$' . number_format($cpa, 2);
|
||||||
break;
|
break;
|
||||||
|
case 'google_cpa':
|
||||||
|
$value = '$' . number_format($google_cpa, 2);
|
||||||
|
break;
|
||||||
case 'cpm':
|
case 'cpm':
|
||||||
$value = '$' . number_format($cpm, 2);
|
$value = '$' . number_format($cpm, 2);
|
||||||
break;
|
break;
|
||||||
@ -246,6 +262,12 @@ class AdsDashboardService
|
|||||||
case 'purchases':
|
case 'purchases':
|
||||||
$value = $purchases;
|
$value = $purchases;
|
||||||
break;
|
break;
|
||||||
|
case 'purchases_all':
|
||||||
|
$value = $purchases_all;
|
||||||
|
break;
|
||||||
|
case 'platform_purchase':
|
||||||
|
$value = $platform_purchase;
|
||||||
|
break;
|
||||||
case 'clicks':
|
case 'clicks':
|
||||||
$value = $clicks;
|
$value = $clicks;
|
||||||
break;
|
break;
|
||||||
|
Loading…
Reference in New Issue
Block a user