campaign_name \platform_type
This commit is contained in:
parent
0e697e0534
commit
3e75cec3c5
@ -203,7 +203,8 @@ class AdsInsightService
|
|||||||
$query = BpsAdSet::alias('s')
|
$query = BpsAdSet::alias('s')
|
||||||
->cache(false) // 强制不使用缓存
|
->cache(false) // 强制不使用缓存
|
||||||
->leftJoin('bps.bps_ads_insights d', "s.ad_set_id = d.ad_set_id AND s.platform_type = d.platform AND {$dateCondition}")
|
->leftJoin('bps.bps_ads_insights d', "s.ad_set_id = d.ad_set_id AND s.platform_type = d.platform AND {$dateCondition}")
|
||||||
->field('s.ad_set_id, s.status as status, s.name, s.account_id,s.platform_type,
|
->leftJoin('bps.bps_ads_campaign c', 's.campaign_id = c.campaign_id') // 联接广告系列表
|
||||||
|
->field('s.ad_set_id, s.status as status, s.name, s.account_id,s.platform_type,c.name as campaign_name,
|
||||||
COALESCE(SUM(d.assisted_purchases), 0) as assisted_purchases,
|
COALESCE(SUM(d.assisted_purchases), 0) as assisted_purchases,
|
||||||
COALESCE(SUM(d.last_clicked_purchases), 0) as last_clicked_purchases,
|
COALESCE(SUM(d.last_clicked_purchases), 0) as last_clicked_purchases,
|
||||||
COALESCE(SUM(d.clicks), 0) as clicks,
|
COALESCE(SUM(d.clicks), 0) as clicks,
|
||||||
@ -216,7 +217,7 @@ class AdsInsightService
|
|||||||
COALESCE(SUM(d.revenue), 0) as revenue,
|
COALESCE(SUM(d.revenue), 0) as revenue,
|
||||||
COALESCE(SUM(d.total_cost), 0) as total_cost,
|
COALESCE(SUM(d.total_cost), 0) as total_cost,
|
||||||
-1 as conversion_rate, -1 as roas, -1 as ctr,-1 as net_profit,-1 as net_profit_margin,-1 as net_profit_on_ad_spend')
|
-1 as conversion_rate, -1 as roas, -1 as ctr,-1 as net_profit,-1 as net_profit_margin,-1 as net_profit_on_ad_spend')
|
||||||
->group('s.ad_set_id, s.status, s.account_id, s.name,s.platform_type')
|
->group('s.ad_set_id, s.status, s.account_id, s.name,s.platform_type,c.name')
|
||||||
->where('s.account_id', 'in', $customerIds); // 添加 customerIds 条件
|
->where('s.account_id', 'in', $customerIds); // 添加 customerIds 条件
|
||||||
if ($status !== 0) {
|
if ($status !== 0) {
|
||||||
$query->where('s.status', '=', $status);
|
$query->where('s.status', '=', $status);
|
||||||
@ -278,6 +279,7 @@ class AdsInsightService
|
|||||||
'platform_type' => $item['platform_type'],
|
'platform_type' => $item['platform_type'],
|
||||||
'account_id' => $item['account_id'], // 映射为 customer_id
|
'account_id' => $item['account_id'], // 映射为 customer_id
|
||||||
'name' => $item['name'] ?: '-', // 若 name 为空则显示 '-'
|
'name' => $item['name'] ?: '-', // 若 name 为空则显示 '-'
|
||||||
|
'campaign_name' => $item['campaign_name'] ?: '-', // 若 name 为空则显示 '-'
|
||||||
'status' => $item['status'],
|
'status' => $item['status'],
|
||||||
'assisted_purchases' => $item['assisted_purchases'],
|
'assisted_purchases' => $item['assisted_purchases'],
|
||||||
'last_clicked_purchases' => $item['last_clicked_purchases'],
|
'last_clicked_purchases' => $item['last_clicked_purchases'],
|
||||||
@ -487,7 +489,7 @@ class AdsInsightService
|
|||||||
$query = ThirdUser::alias('u')
|
$query = ThirdUser::alias('u')
|
||||||
->cache(false) // 强制不使用缓存
|
->cache(false) // 强制不使用缓存
|
||||||
->leftJoin('bps.bps_third_user_advertiser a', "u.id = a.doc_")
|
->leftJoin('bps.bps_third_user_advertiser a', "u.id = a.doc_")
|
||||||
->field('u.id as user_id,u.third_type as platform_type,a.advertiser_name,
|
->field('u.id as user_id,u.third_type,a.advertiser_name,
|
||||||
|
|
||||||
COALESCE(SUM(d.assisted_purchases), 0) as assisted_purchases,
|
COALESCE(SUM(d.assisted_purchases), 0) as assisted_purchases,
|
||||||
COALESCE(SUM(d.last_clicked_purchases), 0) as last_clicked_purchases,
|
COALESCE(SUM(d.last_clicked_purchases), 0) as last_clicked_purchases,
|
||||||
@ -579,7 +581,7 @@ class AdsInsightService
|
|||||||
if (!isset($aggregatedUsers[$thirdUserId])) {
|
if (!isset($aggregatedUsers[$thirdUserId])) {
|
||||||
$aggregatedUsers[$thirdUserId] = [
|
$aggregatedUsers[$thirdUserId] = [
|
||||||
'user_id' => $item['user_id'],
|
'user_id' => $item['user_id'],
|
||||||
'third_type' => $item['third_type'],
|
'platform_type' => self::getPlatformType($item['third_type']),
|
||||||
'advertiser_name' => $item['advertiser_name'],
|
'advertiser_name' => $item['advertiser_name'],
|
||||||
'assisted_purchases' => 0,
|
'assisted_purchases' => 0,
|
||||||
'last_clicked_purchases' => 0,
|
'last_clicked_purchases' => 0,
|
||||||
@ -1137,4 +1139,16 @@ class AdsInsightService
|
|||||||
// 获取年-月格式
|
// 获取年-月格式
|
||||||
return $dateObj->format('Y-m');
|
return $dateObj->format('Y-m');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static function getPlatformType($thirdType)
|
||||||
|
{
|
||||||
|
$platformMapping = [
|
||||||
|
'facebook' => 1,
|
||||||
|
'google' => 2,
|
||||||
|
'tiktok' => 3,
|
||||||
|
];
|
||||||
|
|
||||||
|
return $platformMapping[$thirdType] ?? null; // 如果不存在的第三方类型,返回 null
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user