<?php namespace app\queue\redis; use app\event\GoogleAdsCustomers; use app\event\GoogleAdsCampaigns; use app\event\GoogleAdsGroups; use app\event\GoogleAdsAds; use app\event\GoogleAdsAssets; use app\event\GoogleAdsDateDatas; use app\event\GoogleAdsAssetRelations; use app\event\GoogleAdsCreatives; use Webman\Event\Event; use Webman\RedisQueue\Consumer; class GoogleAdsCustomerInitQueue implements Consumer { // 要消费的队列名 public $queue = GoogleAdsCustomers::init_queue; // 连接名,对应 plugin/webman/redis-queue/redis.php 里的连接` public $connection = 'default'; // 消费 public function consume($data) { dump($this->queue . ' consumed', $data); //新绑定的客户,立即同步广告系列 //$data包含merchant_id,account_id Event::emit(GoogleAdsCampaigns::event, $data); //新绑定的客户,立即同步广告组 Event::emit(GoogleAdsGroups::event, $data); //新绑定的客户,立即同步广告 Event::emit(GoogleAdsAds::event, $data); //新绑定的客户,立即同步素材库 Event::emit(GoogleAdsAssets::event, $data); //新绑定的客户,立即同步素材关系绑定 Event::emit(GoogleAdsCreatives::event, $data); //新绑定的客户,立即同步最近7天的广告报表 // $data['date'] = date('Y-m-d', strtotime('-2 day')); // Event::emit(GoogleAdsDateDatas::event, $data); // $data['date'] = date('Y-m-d', strtotime('-1 day')); // Event::emit(GoogleAdsDateDatas::event, $data); // $data['date'] = date('Y-m-d', strtotime('0 day')); // Event::emit(GoogleAdsDateDatas::event, $data); $data['endDate'] = date('Y-m-d'); // 获取今天的日期 $data['startDate'] = date('Y-m-d', strtotime('-7 days')); // 获取7天前的日期 Event::emit(GoogleAdsDateDatas::event, $data); //新绑定的客户,立即同步最近7天素材-广告关系绑定 Event::emit(GoogleAdsAssetRelations::event, $data); Event::emit(GoogleAdsCustomers::last_sync, $data); } }