fix dashboard google roas口径

This commit is contained in:
huangguancheng 2025-01-21 16:06:15 +08:00
parent a9edbe96cb
commit 19a7ccc54a

View File

@ -141,7 +141,7 @@ class AdsDashboardService
'google' => [
'google_ads' => 'spend', // 示例映射
'conversion_value' => 'platform_purchase_value',
'roas' => 'roas',
'roas' => 'google_roas',
'conversions' => 'purchases',
'ctr' => 'ctr',
'cpa' => 'google_cpa',
@ -182,24 +182,25 @@ class AdsDashboardService
// 在 PHP 中计算指标
foreach ($adcycleData as $data) {
$platform = $data['platform']; // 获取平台类型
$spend = (float)$data['spend'];
$revenue = (float)$data['revenue'];
$totalCost = (float)$data['total_cost'];
$impressions = (int)$data['impressions'];
$clicks = (int)$data['clicks'];
$purchases = (int)$data['purchases'];
$purchases_all = (int)$data['purchases_all'];
$platform_purchase = (int)$data['platform_purchase'];
$purchases_value = (float)$data['purchases_value'];
$platform = $data['platform']; // 获取平台类型
$spend = (float)$data['spend'];
$revenue = (float)$data['revenue'];
$totalCost = (float)$data['total_cost'];
$impressions = (int)$data['impressions'];
$clicks = (int)$data['clicks'];
$purchases = (int)$data['purchases'];
$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;
$google_roas = ($spend == 0) ? 0 : $purchases_value / $spend;
$ctr = ($impressions == 0) ? 0 : $clicks / $impressions;
$cpoc = ($platform_purchase == 0) ? 0 : $platform_purchase_value / $platform_purchase;
$cpoc = ($platform_purchase == 0) ? 0 : $platform_purchase_value / $platform_purchase;
$cpa = ($purchases == 0) ? 0 : $spend / $purchases;
$google_cpa = ($platform_purchase == 0) ? 0 : $spend / $platform_purchase;
$google_cpa = ($platform_purchase == 0) ? 0 : $spend / $platform_purchase;
$cpm = ($impressions == 0) ? 0 : ($spend * 1000) / $impressions;
$cpc = ($clicks == 0) ? 0 : $spend / $clicks;
$conversionRate = ($clicks == 0) ? 0 : $purchases / $clicks;
@ -235,6 +236,9 @@ class AdsDashboardService
case 'roas':
$value = round($roas, 2) . 'X';
break;
case 'google_roas':
$value = round($google_roas, 2) . 'X';
break;
case 'cpoc':
$value = '$' . number_format($cpoc, 2) . '%';
break;