Commit dac47d01 by Vladislav

#20794 Сделать чтобы в целевых РК оставалась одна карточка (Исправленно копирова…

…ние условий ретаргетинга)
1 parent 76d05e25
...@@ -326,7 +326,7 @@ class DictionaryCampaignsSyncByCampaign extends Command ...@@ -326,7 +326,7 @@ class DictionaryCampaignsSyncByCampaign extends Command
INNER JOIN goal_retargetinglists gr on r.id = gr.retargetinglist_id AND d.token_id = gr.token_id AND gr.deleted_at is null INNER JOIN goal_retargetinglists gr on r.id = gr.retargetinglist_id AND d.token_id = gr.token_id AND gr.deleted_at is null
LEFT JOIN ad_groups ag on c.id = ag.campaign_id AND aut.ad_group_id = ag.id AND ag.deleted_at is null LEFT JOIN ad_groups ag on c.id = ag.campaign_id AND aut.ad_group_id = ag.id AND ag.deleted_at is null
LEFT JOIN goal_ad_groups gag on dc.id = gag.dictionary_campaign_id AND ag.id = gag.ad_group_id AND gag.deleted_at is null LEFT JOIN goal_ad_groups gag on dc.id = gag.dictionary_campaign_id AND ag.id = gag.ad_group_id AND gag.deleted_at is null
LEFT JOIN goal_audience_targets gaut on aut.id = gaut.audience_target_id and gaut.dictionary_campaign_id = dc.id AND gaut.deleted_at is null LEFT JOIN goal_audience_targets gaut on aut.id = gaut.audience_target_id and gaut.dictionary_campaign_id = dc.id and gaut.goal_ad_group_id = gag.id AND gaut.deleted_at is null
WHERE aut.deleted_at is null AND gaut.audience_target_id is null WHERE aut.deleted_at is null AND gaut.audience_target_id is null
"); ");
$this->info('goal_audience_targets successful!'); $this->info('goal_audience_targets successful!');
...@@ -346,7 +346,7 @@ class DictionaryCampaignsSyncByCampaign extends Command ...@@ -346,7 +346,7 @@ class DictionaryCampaignsSyncByCampaign extends Command
"); ");
$this->info('goal_bid_modifiers successful!'); $this->info('goal_bid_modifiers successful!');
//обновляем ключ компании в директ, если поо какйто причине не был установлен //обновляем ключ компании в директ, если по какой то причине не был установлен
DB::update(" DB::update("
UPDATE goal_ad_groups gag UPDATE goal_ad_groups gag
INNER JOIN dictionary_campaigns dc ON dc.id = gag.dictionary_campaign_id AND dc.external_id IS NOT NULL AND dc.deleted_at IS NULL INNER JOIN dictionary_campaigns dc ON dc.id = gag.dictionary_campaign_id AND dc.external_id IS NOT NULL AND dc.deleted_at IS NULL
...@@ -406,6 +406,56 @@ class DictionaryCampaignsSyncByCampaign extends Command ...@@ -406,6 +406,56 @@ class DictionaryCampaignsSyncByCampaign extends Command
"); ");
$this->info('update goal_v_cards.dictionary_campaign_external_id successful!'); $this->info('update goal_v_cards.dictionary_campaign_external_id successful!');
//обновляем ключ группы в директ, если по какой то причине не был установлен
DB::update("
UPDATE goal_keywords gk
INNER JOIN goal_ad_groups gag ON gag.id = gk.goal_ad_group_id AND gag.external_id IS NOT NULL AND gag.deleted_at IS NULL
SET gk.goal_ad_group_external_id = gag.external_id,
gk.updated_at = CURRENT_TIMESTAMP
WHERE gk.goal_ad_group_external_id IS NULL
");
$this->info('update goal_keywords.goal_ad_group_external_id successful!');
DB::update("
UPDATE goal_advertisements ga
INNER JOIN goal_ad_groups gag ON gag.id = ga.goal_ad_group_id AND gag.external_id IS NOT NULL AND gag.deleted_at IS NULL
SET ga.goal_ad_group_external_id = gag.external_id,
ga.updated_at = CURRENT_TIMESTAMP
WHERE ga.deleted_at IS NULL
AND ga.goal_ad_group_external_id IS NULL
");
$this->info('update goal_advertisements.goal_ad_group_external_id successful!');
DB::update("
UPDATE goal_bid_modifiers gbm
INNER JOIN goal_ad_groups gag ON gag.id = gbm.goal_ad_group_id AND gag.external_id IS NOT NULL AND gag.deleted_at IS NULL
SET gbm.goal_ad_group_external_id = gag.external_id,
gbm.updated_at = CURRENT_TIMESTAMP
WHERE gbm.deleted_at IS NULL
AND gbm.goal_ad_group_external_id IS NULL
");
$this->info('update goal_bid_modifiers.goal_ad_group_external_id successful!');DB::update("
UPDATE goal_bid_modifiers gbm
INNER JOIN goal_ad_groups gag ON gag.id = gbm.goal_ad_group_id AND gag.external_id IS NOT NULL AND gag.deleted_at IS NULL
SET gbm.goal_ad_group_external_id = gag.external_id,
gbm.updated_at = CURRENT_TIMESTAMP
WHERE gbm.deleted_at IS NULL
AND gbm.goal_ad_group_external_id IS NULL
");
$this->info('update goal_bid_modifiers.goal_ad_group_external_id successful!');
DB::update("
UPDATE goal_audience_targets gat
INNER JOIN goal_ad_groups gag ON gag.id = gat.goal_ad_group_id AND gag.external_id IS NOT NULL AND gag.deleted_at IS NULL
SET gat.goal_ad_group_external_id = gag.external_id,
gat.updated_at = CURRENT_TIMESTAMP
WHERE gat.deleted_at IS NULL
AND gat.goal_ad_group_external_id IS NULL
");
$this->info('update goal_bid_modifiers.goal_ad_group_external_id successful!');
DictionaryCampaign::needSynced()->update([ DictionaryCampaign::needSynced()->update([
'synced_need' => null, 'synced_need' => null,
]); ]);
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!