Commit 981f5da8 by Vladislav

refactor

1 parent dfcaa0da
Showing with 141 additions and 250 deletions
......@@ -4,8 +4,7 @@ namespace App\Console\Commands;
use App\Models\Pivots\GoalAdExtension;
use App\Models\Tokens;
use App\Service\API\API;
use App\Service\Requests\APIRequest;
use App\Service\Requests\Direct\AddAdExtensions;
use Carbon\Carbon;
use Illuminate\Console\Command;
use Illuminate\Database\Eloquent\Relations\HasMany;
......@@ -56,9 +55,6 @@ class AdExtensionsAdd extends Command
'goalAdExtensionsForNotExternalForNotReserveCreate.adExtension',
]);
$factory = APIRequest::getInstance(API::YANDEX);
$factory->setToken($token);
$goalAdExtensions = $token->goalAdExtensionsForNotExternalForNotReserveCreate;
foreach (array_chunk($goalAdExtensions->pluck('id')->toArray(), 1000) as $items) {
......@@ -68,7 +64,8 @@ class AdExtensionsAdd extends Command
]);
}
$factory->getRequest('AdExtensions', 'add')
$factory = new AddAdExtensions();
$factory->setToken($token)
->call([
'goalAdExtensions' => $goalAdExtensions,
]);
......
......@@ -2,10 +2,8 @@
namespace App\Console\Commands;
use App\Models\Campaigns;
use App\Models\Tokens;
use App\Service\API\API;
use App\Service\Requests\APIRequest;
use App\Service\Requests\Direct\GetAdExtensions;
use Illuminate\Console\Command;
class AdExtensionsLoad extends Command
......@@ -48,10 +46,8 @@ class AdExtensionsLoad extends Command
throw new \Exception('Не найден токен блин');
}
$factory = APIRequest::getInstance(API::YANDEX);
$factory->setToken($token);
$factory->getRequest('AdExtensions', 'get')
$factory = new GetAdExtensions();
$factory->setToken($token)
->call([
'ModifiedSince' => $token->check_changes_ad_extension,
]);
......
......@@ -4,8 +4,7 @@ namespace App\Console\Commands;
use App\Models\Pivots\GoalAdGroup;
use App\Models\Tokens;
use App\Service\API\API;
use App\Service\Requests\APIRequest;
use App\Service\Requests\Direct\AddAdGroups;
use Carbon\Carbon;
use Illuminate\Console\Command;
use Illuminate\Database\Eloquent\Relations\HasMany;
......@@ -55,9 +54,6 @@ class AdGroupsAdd extends Command
'dictionaryCampaignsEnabledForExternalSynchronized.groupsForNotExternalForNotReserveCreate.group',
]);
$factory = APIRequest::getInstance(API::YANDEX);
$factory->setToken($token);
$goalAdGroups = $token->dictionaryCampaignsEnabledForExternalSynchronized->pluck('groupsForNotExternalForNotReserveCreate')
->collapse();
......@@ -68,7 +64,8 @@ class AdGroupsAdd extends Command
]);
}
$factory->getRequest('AdGroups', 'add')
$factory = new AddAdGroups();
$factory->setToken($token)
->call([
'goalAdGroups' => $goalAdGroups,
]);
......
......@@ -4,8 +4,7 @@ namespace App\Console\Commands;
use App\Models\Campaigns;
use App\Models\Tokens;
use App\Service\API\API;
use App\Service\Requests\APIRequest;
use App\Service\Requests\Direct\GetKeywords;
use Illuminate\Console\Command;
class AdGroupsLoadKeywords extends Command
......@@ -47,7 +46,7 @@ class AdGroupsLoadKeywords extends Command
->forManaged()->forEnabled()->forNotGroupsLoadable()->get();
if (!$campaigns->count()) {
return;
return 0;
}
$token = Tokens::where('type', Tokens::MAIN)->first();
......@@ -61,10 +60,8 @@ class AdGroupsLoadKeywords extends Command
->toArray();
foreach (array_chunk($ad_group_ids, 1000) as $ids_limit) {
$factory = APIRequest::getInstance(API::YANDEX);
$factory->setToken($token);
$factory->getRequest('Keywords', 'get')
$factory = new GetKeywords();
$factory->setToken($token)
->call([
'AdGroupIds' => $ids_limit,
]);
......
......@@ -4,8 +4,8 @@ namespace App\Console\Commands;
use App\Models\AdGroup;
use App\Models\Tokens;
use App\Service\API\API;
use App\Service\Requests\APIRequest;
use App\Service\Requests\Direct\GetAdGroups;
use App\Service\Requests\Direct\GetKeywords;
use Illuminate\Console\Command;
use Illuminate\Database\Eloquent\Builder;
......@@ -59,18 +59,16 @@ class AdGroupsLoadUpdated extends Command
$ids = $adGroups->pluck('external_id')->toArray();
$factory = APIRequest::getInstance(API::YANDEX);
$factory->setToken($token);
$factory->getRequest('AdGroups', 'get')->call([
$factory = new GetAdGroups();
$factory->setToken($token)
->call([
'Ids' => $ids,
]);
foreach (array_chunk($ids, 1000) as $ids_limit) {
$factory = APIRequest::getInstance(API::YANDEX);
$factory->setToken($token);
$factory->getRequest('Keywords', 'get')->call([
$factory = new GetKeywords();
$factory->setToken($token)
->call([
'AdGroupIds' => $ids_limit,
]);
}
......
......@@ -4,8 +4,7 @@ namespace App\Console\Commands;
use App\Models\Pivots\GoalAdGroup;
use App\Models\Tokens;
use App\Service\API\API;
use App\Service\Requests\APIRequest;
use App\Service\Requests\Direct\UpdateAdGroups;
use Carbon\Carbon;
use Illuminate\Console\Command;
use Illuminate\Database\Eloquent\Relations\HasMany;
......@@ -56,9 +55,6 @@ class AdGroupsUpdate extends Command
'dictionaryCampaignsEnabledForExternalUpdated.groupsForExternalForNeedUpdatedForNotReserveUpdate.group',
]);
$factory = APIRequest::getInstance(API::YANDEX);
$factory->setToken($token);
$goalAdGroups = $token->dictionaryCampaignsEnabledForExternalUpdated->pluck('groupsForExternalForNeedUpdatedForNotReserveUpdate')
->collapse();
......@@ -69,8 +65,8 @@ class AdGroupsUpdate extends Command
]);
}
$factory->getRequest('AdGroups', 'update')
$factory = new UpdateAdGroups();
$factory->setToken($token)
->call([
'goalAdGroups' => $goalAdGroups,
]);
......
......@@ -4,12 +4,9 @@ namespace App\Console\Commands;
use App\Models\Pivots\GoalAdvertisement;
use App\Models\Tokens;
use App\Service\API\API;
use App\Service\Requests\APIRequest;
use App\Service\Requests\Direct\AddAds;
use Carbon\Carbon;
use Illuminate\Console\Command;
use Illuminate\Database\Eloquent\Relations\HasMany;
use Illuminate\Database\Eloquent\Relations\HasManyThrough;
use Illuminate\Database\Query\Builder;
use Illuminate\Support\Facades\DB;
......@@ -52,10 +49,6 @@ class AdvertisementsAdd extends Command
->get();
foreach ($tokens as $token) {
$factory = APIRequest::getInstance(API::YANDEX);
$factory->setToken($token);
$goalAds = DB::table('goal_advertisements')
->join('advertisements', 'goal_advertisements.advertisement_id', '=', 'advertisements.id')
->leftJoin('goal_advertisement_goal_ad_extensions', 'goal_advertisements.id', '=', 'goal_advertisement_goal_ad_extensions.goal_advertisement_id')
......@@ -99,7 +92,7 @@ class AdvertisementsAdd extends Command
'advertisements.display_url_path as display_url_path',
'goal_advertisements.goal_v_card_external_id as goal_v_card_external_id',
'advertisements.ad_image_hash as ad_image_hash',
'advertisements.goal_sitelink_external_id as goal_sitelink_external_id',
'goal_advertisements.goal_sitelink_external_id as goal_sitelink_external_id',
DB::raw('JSON_ARRAYAGG(goal_ad_extensions.external_id) as ad_extension_ids'),
'advertisements.ad_extensions as ad_extensions',
'advertisements.video_extension as video_extension',
......@@ -122,7 +115,8 @@ class AdvertisementsAdd extends Command
]);
}
$factory->getRequest('Ads', 'add')
$factory = new AddAds();
$factory->setToken($token)
->call([
'goalAds' => $goalAds,
]);
......
......@@ -2,11 +2,9 @@
namespace App\Console\Commands;
use App\Models\AdGroup;
use App\Models\Advertisement;
use App\Models\Tokens;
use App\Service\API\API;
use App\Service\Requests\APIRequest;
use App\Service\Requests\Direct\GetAds;
use Illuminate\Console\Command;
use Illuminate\Database\Eloquent\Builder;
......@@ -60,10 +58,9 @@ class AdvertisementsLoadUpdated extends Command
$ids = $advertisements->pluck('external_id')->toArray();
$factory = APIRequest::getInstance(API::YANDEX);
$factory->setToken($token);
$factory->getRequest('Ads', 'get')->call([
$factory = new GetAds();
$factory->setToken($token)
->call([
'Ids' => $ids,
]);
......
......@@ -4,12 +4,9 @@ namespace App\Console\Commands;
use App\Models\Pivots\GoalAdvertisement;
use App\Models\Tokens;
use App\Service\API\API;
use App\Service\Requests\APIRequest;
use App\Service\Requests\Direct\UpdateAds;
use Carbon\Carbon;
use Illuminate\Console\Command;
use Illuminate\Database\Eloquent\Relations\HasMany;
use Illuminate\Database\Eloquent\Relations\HasManyThrough;
use Illuminate\Database\Query\Builder;
use Illuminate\Support\Facades\DB;
......@@ -51,10 +48,6 @@ class AdvertisementsUpdate extends Command
->get();
foreach ($tokens as $token) {
$factory = APIRequest::getInstance(API::YANDEX);
$factory->setToken($token);
$goalAds = DB::table('goal_advertisements')
->join('advertisements', 'goal_advertisements.advertisement_id', '=', 'advertisements.id')
->leftJoin('goal_advertisement_goal_ad_extensions', 'goal_advertisements.id', '=', 'goal_advertisement_goal_ad_extensions.goal_advertisement_id')
......@@ -97,7 +90,7 @@ class AdvertisementsUpdate extends Command
'advertisements.display_url_path as display_url_path',
'goal_advertisements.goal_v_card_external_id as goal_v_card_external_id',
'advertisements.ad_image_hash as ad_image_hash',
'advertisements.goal_sitelink_external_id as goal_sitelink_external_id',
'goal_advertisements.goal_sitelink_external_id as goal_sitelink_external_id',
DB::raw("JSON_OBJECTAGG('AdExtensionId', goal_ad_extensions.external_id, 'Operation', 'SET') as ad_extensions"),
'advertisements.video_extension as video_extension',
'advertisements.price_extension as price_extension',
......@@ -108,14 +101,16 @@ class AdvertisementsUpdate extends Command
->groupBy('goal_advertisements.id')
->get();
foreach (array_chunk($goalAds->pluck('id')->toArray(), 1000) as $items){
foreach (array_chunk($goalAds->pluck('id')->toArray(), 1000) as $items) {
GoalAdvertisement::whereIn('id', $items)
->update([
'reserve_update_at' => Carbon::now(),
]);
}
$factory->getRequest('Ads', 'update')
$factory = new UpdateAds();
$factory->setToken($token)
->call([
'goalAds' => $goalAds,
]);
......
......@@ -4,8 +4,7 @@ namespace App\Console\Commands;
use App\Models\Pivots\GoalBidModifier;
use App\Models\Tokens;
use App\Service\API\API;
use App\Service\Requests\APIRequest;
use App\Service\Requests\Direct\AddBidModifiers;
use Carbon\Carbon;
use Illuminate\Console\Command;
use Illuminate\Database\Query\Builder;
......@@ -49,10 +48,6 @@ class BidModifiersAdd extends Command
->get();
foreach ($tokens as $token) {
$factory = APIRequest::getInstance(API::YANDEX);
$factory->setToken($token);
$goalBidModifiers = DB::table('goal_bid_modifiers')
->join('bid_modifiers', 'goal_bid_modifiers.bid_modifier_id', '=', 'bid_modifiers.id')
->whereNull('bid_modifiers.deleted_at')
......@@ -91,7 +86,9 @@ class BidModifiersAdd extends Command
]);
}
$factory->getRequest('BidModifiers', 'add')
$factory = new AddBidModifiers();
$factory->setToken($token)
->call([
'goalBidModifiers' => $goalBidModifiers,
]);
......
......@@ -4,8 +4,7 @@ namespace App\Console\Commands;
use App\Models\Pivots\DictionaryCampaign;
use App\Models\Tokens;
use App\Service\API\API;
use App\Service\Requests\APIRequest;
use App\Service\Requests\Direct\AddCampaigns;
use Carbon\Carbon;
use Illuminate\Console\Command;
......@@ -49,9 +48,6 @@ class CampaignsAdd extends Command
foreach ($tokens as $token) {
$factory = APIRequest::getInstance(API::YANDEX);
$factory->setToken($token);
foreach (array_chunk($token->dictionaryCampaignsEnabledForNotExternalForNotReserveCreate->pluck('id')->toArray(), 1000) as $items) {
DictionaryCampaign::whereIn('id', $items)
->update([
......@@ -59,7 +55,8 @@ class CampaignsAdd extends Command
]);
}
$factory->getRequest('Campaigns', 'add')
$factory = new AddCampaigns();
$factory->setToken($token)
->call([
'dictionaryCampaigns' => $token->dictionaryCampaignsEnabledForNotExternalForNotReserveCreate,
]);
......
......@@ -3,8 +3,7 @@
namespace App\Console\Commands;
use App\Models\Tokens;
use App\Service\API\API;
use App\Service\Requests\APIRequest;
use App\Service\Requests\Direct\CheckCampaignsChanges;
use Illuminate\Console\Command;
class CampaignsCheckChange extends Command
......@@ -43,10 +42,8 @@ class CampaignsCheckChange extends Command
$token_main = Tokens::where('type', Tokens::MAIN)->first();
if ($token_main) {
$factory = APIRequest::getInstance(API::YANDEX);
$factory->setToken($token_main);
$factory->getRequest('Changes', 'checkCampaigns')
$factory = new CheckCampaignsChanges();
$factory->setToken($token_main)
->call();
}
......@@ -55,10 +52,8 @@ class CampaignsCheckChange extends Command
->where('type', '!=', Tokens::MAIN)->get();
foreach ($tokens as $token) {
$factory = APIRequest::getInstance(API::YANDEX);
$factory->setToken($token);
$factory->getRequest('Changes', 'checkCampaigns')
$factory = new CheckCampaignsChanges();
$factory->setToken($token)
->call();
}
......
......@@ -4,8 +4,7 @@ namespace App\Console\Commands;
use App\Models\Campaigns;
use App\Models\Tokens;
use App\Service\API\API;
use App\Service\Requests\APIRequest;
use App\Service\Requests\Direct\CheckChanges;
use Illuminate\Console\Command;
class CampaignsCheckUpdatedChildren extends Command
......@@ -50,10 +49,9 @@ class CampaignsCheckUpdatedChildren extends Command
$campaign_ids_group = Campaigns::forUpdatedChildren()->pluck('external_id')->chunk(3000)->toArray();
foreach ($campaign_ids_group as $campaign_ids) {
$factory = APIRequest::getInstance(API::YANDEX);
$factory->setToken($token);
$factory->getRequest('Changes', 'check')->call([
$factory = new CheckChanges();
$factory->setToken($token)
->call([
'CampaignIds' => $campaign_ids,
'FieldNames' => [
'AdGroupIds', 'AdIds',
......@@ -75,10 +73,9 @@ class CampaignsCheckUpdatedChildren extends Command
->pluck('external_id')->chunk(3000)->toArray();
foreach ($campaign_ids_group as $campaign_ids) {
$factory = APIRequest::getInstance(API::YANDEX);
$factory->setToken($token);
$factory->getRequest('Changes', 'check')->call([
$factory = new CheckChanges();
$factory->setToken($token)
->call([
'CampaignIds' => $campaign_ids,
'FieldNames' => [
'AdGroupIds', 'AdIds',
......
......@@ -3,8 +3,7 @@
namespace App\Console\Commands;
use App\Models\Tokens;
use App\Service\API\API;
use App\Service\Requests\APIRequest;
use App\Service\Requests\Direct\GetCampaigns;
use Illuminate\Console\Command;
use Illuminate\Support\Facades\Artisan;
......@@ -46,10 +45,10 @@ class CampaignsFirstLoad extends Command
throw new \Exception('Не найден токен блин');
}
$factory = APIRequest::getInstance(API::YANDEX);
$factory->setToken($token);
$factory = new GetCampaigns();
$factory->setToken($token)
->call();
$factory->getRequest('Campaigns', 'get')->call();
Artisan::call(DictionariesLoad::class);
Artisan::call(CampaignsLoadGroups::class);
Artisan::call(AdGroupsLoadKeywords::class);
......
......@@ -4,8 +4,7 @@ namespace App\Console\Commands;
use App\Models\Campaigns;
use App\Models\Tokens;
use App\Service\API\API;
use App\Service\Requests\APIRequest;
use App\Service\Requests\Direct\GetAds;
use Illuminate\Console\Command;
class CampaignsLoadAds extends Command
......@@ -45,7 +44,7 @@ class CampaignsLoadAds extends Command
$campaigns = Campaigns::forManaged()->forEnabled()->get();
if (!$campaigns->count()) {
return;
return 0;
}
$token = Tokens::where('type', Tokens::MAIN)->first();
......@@ -54,10 +53,8 @@ class CampaignsLoadAds extends Command
}
foreach ($campaigns->pluck('external_id')->chunk(10)->toArray() as $campaign_ids) {
$factory = APIRequest::getInstance(API::YANDEX);
$factory->setToken($token);
$factory->getRequest('Ads', 'get')
$factory = new GetAds();
$factory->setToken($token)
->call([
'CampaignIds' => $campaign_ids,
]);
......
......@@ -4,8 +4,7 @@ namespace App\Console\Commands;
use App\Models\Campaigns;
use App\Models\Tokens;
use App\Service\API\API;
use App\Service\Requests\APIRequest;
use App\Service\Requests\Direct\GetBidModifiers;
use Illuminate\Console\Command;
class CampaignsLoadBidModifiers extends Command
......@@ -45,7 +44,7 @@ class CampaignsLoadBidModifiers extends Command
$campaigns = Campaigns::forManaged()->forEnabled()->get();
if (!$campaigns->count()) {
return;
return 0;
}
$token = Tokens::where('type', Tokens::MAIN)->first();
......@@ -54,10 +53,8 @@ class CampaignsLoadBidModifiers extends Command
}
foreach ($campaigns->pluck('external_id')->chunk(10)->toArray() as $campaign_ids) {
$factory = APIRequest::getInstance(API::YANDEX);
$factory->setToken($token);
$factory->getRequest('BidModifiers', 'get')
$factory = new GetBidModifiers();
$factory->setToken($token)
->call([
'CampaignIds' => $campaign_ids,
]);
......
......@@ -4,8 +4,7 @@ namespace App\Console\Commands;
use App\Models\Campaigns;
use App\Models\Tokens;
use App\Service\API\API;
use App\Service\Requests\APIRequest;
use App\Service\Requests\Direct\GetAdGroups;
use Illuminate\Console\Command;
class CampaignsLoadGroups extends Command
......@@ -45,7 +44,7 @@ class CampaignsLoadGroups extends Command
$campaigns = Campaigns::forManaged()->forEnabled()->forGroupsLoadable()->get();
if (!$campaigns->count()) {
return;
return 0;
}
$token = Tokens::where('type', Tokens::MAIN)->first();
......@@ -54,17 +53,13 @@ class CampaignsLoadGroups extends Command
}
foreach ($campaigns->pluck('external_id')->chunk(10)->toArray() as $campaign_ids) {
$factory = APIRequest::getInstance(API::YANDEX);
$factory->setToken($token);
$factory->getRequest('AdGroups', 'get')
$factory = new GetAdGroups();
$factory->setToken($token)
->call([
'CampaignIds' => $campaign_ids,
]);
}
return 0;
}
}
......@@ -4,10 +4,7 @@ namespace App\Console\Commands;
use App\Models\Campaigns;
use App\Models\Tokens;
use App\Service\API\API;
use App\Service\Direct\CheckDictionaries;
use App\Service\Direct\GetCampaigns;
use App\Service\Requests\APIRequest;
use App\Service\Requests\Direct\GetCampaigns;
use Illuminate\Console\Command;
class CampaignsLoadUpdated extends Command
......@@ -52,10 +49,9 @@ class CampaignsLoadUpdated extends Command
throw new \Exception('Не найден токен блин');
}
$factory = APIRequest::getInstance(API::YANDEX);
$factory->setToken($token);
$factory->getRequest('Campaigns', 'get')->call([
$factory = new GetCampaigns();
$factory->setToken($token)
->call([
'ids' => $campaigns->pluck('external_id')->toArray(),
]);
......@@ -67,10 +63,9 @@ class CampaignsLoadUpdated extends Command
->get();
foreach ($tokens as $token) {
$factory = APIRequest::getInstance(API::YANDEX);
$factory->setToken($token);
$factory->getRequest('Campaigns', 'get')->call([
$factory = new GetCampaigns();
$factory->setToken($token)
->call([
'ids' => $token->dictionaryCampaignsEnabledForExternalSynchronizedUpdatedSelf
->pluck('external_id')->toArray(),
]);
......
......@@ -4,8 +4,7 @@ namespace App\Console\Commands;
use App\Models\Pivots\DictionaryCampaign;
use App\Models\Tokens;
use App\Service\API\API;
use App\Service\Requests\APIRequest;
use App\Service\Requests\Direct\ResumeCampaigns;
use Carbon\Carbon;
use Illuminate\Console\Command;
......@@ -64,17 +63,15 @@ class CampaignsResume extends Command
->get();
foreach ($tokens as $token) {
$factory = APIRequest::getInstance(API::YANDEX);
$factory->setToken($token);
foreach (array_chunk($token->dictionaryCampaignsEnabledForExternalDisabledForNotReserveResume->pluck('id')->toArray(), 1000) as $items){
foreach (array_chunk($token->dictionaryCampaignsEnabledForExternalDisabledForNotReserveResume->pluck('id')->toArray(), 1000) as $items) {
DictionaryCampaign::whereIn('id', $items)
->update([
'reserve_resume_at' => Carbon::now(),
]);
}
$factory->getRequest('Campaigns', 'resume')
$factory = new ResumeCampaigns();
$factory->setToken($token)
->call([
'ids' => $token->dictionaryCampaignsEnabledForExternalDisabledForNotReserveResume->pluck('external_id')->toArray(),
]);
......
......@@ -4,8 +4,7 @@ namespace App\Console\Commands;
use App\Models\Pivots\DictionaryCampaign;
use App\Models\Tokens;
use App\Service\API\API;
use App\Service\Requests\APIRequest;
use App\Service\Requests\Direct\SuspendCampaigns;
use Carbon\Carbon;
use Illuminate\Console\Command;
......@@ -48,10 +47,8 @@ class CampaignsSuspend extends Command
->where('type', Tokens::MAIN)->first();
if ($token_main){
$factory = APIRequest::getInstance(API::YANDEX);
$factory->setToken($token_main);
$factory->getRequest('campaigns', 'suspend')
$factory = new SuspendCampaigns();
$factory->setToken($token)
->call([
'ids' => $token_main->campaignsNotEnabledNotDisabled->pluck('external_id')->toArrayv(),
]);
......@@ -64,17 +61,15 @@ class CampaignsSuspend extends Command
->get();
foreach ($tokens as $token) {
$factory = APIRequest::getInstance(API::YANDEX);
$factory->setToken($token);
foreach (array_chunk($token->dictionaryCampaignsNotEnabledForExternalNotDisabledForNotReserveSuspend->pluck('id')->toArray(), 1000) as $items){
foreach (array_chunk($token->dictionaryCampaignsNotEnabledForExternalNotDisabledForNotReserveSuspend->pluck('id')->toArray(), 1000) as $items) {
DictionaryCampaign::whereIn('id', $items)
->update([
'reserve_suspend_at' => Carbon::now(),
]);
}
$factory->getRequest('Campaigns', 'suspend')
$factory = new SuspendCampaigns();
$factory->setToken($token)
->call([
'ids' => $token->dictionaryCampaignsNotEnabledForExternalNotDisabledForNotReserveSuspend->pluck('external_id')->toArray(),
]);
......
......@@ -4,8 +4,7 @@ namespace App\Console\Commands;
use App\Models\Pivots\DictionaryCampaign;
use App\Models\Tokens;
use App\Service\API\API;
use App\Service\Requests\APIRequest;
use App\Service\Requests\Direct\UpdateCampaigns;
use Carbon\Carbon;
use Illuminate\Console\Command;
......@@ -48,17 +47,15 @@ class CampaignsUpdate extends Command
->get();
foreach ($tokens as $token) {
$factory = APIRequest::getInstance(API::YANDEX);
$factory->setToken($token);
foreach (array_chunk($token->dictionaryCampaignsEnabledForExternalUpdatedNeedUpdatedForNotReserveUpdate->pluck('id')->toArray(), 1000) as $items){
foreach (array_chunk($token->dictionaryCampaignsEnabledForExternalUpdatedNeedUpdatedForNotReserveUpdate->pluck('id')->toArray(), 1000) as $items) {
DictionaryCampaign::whereIn('id', $items)
->update([
'reserve_update_at' => Carbon::now(),
]);
}
$factory->getRequest('Campaigns', 'update')
$factory = new UpdateCampaigns();
$factory->setToken($token)
->call([
'dictionaryCampaigns' => $token->dictionaryCampaignsEnabledForExternalUpdatedNeedUpdatedForNotReserveUpdate,
]);
......
......@@ -3,8 +3,7 @@
namespace App\Console\Commands;
use App\Models\Tokens;
use App\Service\API\API;
use App\Service\Requests\APIRequest;
use App\Service\Requests\Direct\GetDictionaries;
use Illuminate\Console\Command;
class DictionariesLoad extends Command
......@@ -46,10 +45,8 @@ class DictionariesLoad extends Command
throw new \Exception('Не найден токен блин');
}
$factory = APIRequest::getInstance(API::YANDEX);
$factory->setToken($token);
$factory->getRequest('Dictionaries', 'get')
$factory = new GetDictionaries();
$factory->setToken($token)
->call();
return 0;
......
......@@ -99,7 +99,7 @@ class DictionaryCampaignsSyncByCampaign extends Command
$cities = Dictionary::where('token_id', '>', 0)->get();
foreach ($cities as $city){
foreach ($cities as $city) {
//грузиим РК которых по какой то причне нет в целевых.
DB::insert("
INSERT INTO dictionary_campaigns(campaign_id, dictionary_id, name, negative_keywords, excluded_sites, created_at, updated_at)
......
......@@ -4,8 +4,7 @@ namespace App\Console\Commands;
use App\Models\Pivots\GoalKeyword;
use App\Models\Tokens;
use App\Service\API\API;
use App\Service\Requests\APIRequest;
use App\Service\Requests\Direct\AddKeywords;
use Carbon\Carbon;
use Illuminate\Console\Command;
use Illuminate\Database\Eloquent\Relations\HasManyThrough;
......@@ -56,9 +55,6 @@ class KeywordsAdd extends Command
},
]);
$factory = APIRequest::getInstance(API::YANDEX);
$factory->setToken($token);
$goalKeywords = DB::table('goal_keywords')
->join('keywords', 'goal_keywords.keyword_id', '=', 'keywords.id')
->whereNull('keywords.deleted_at')
......@@ -79,15 +75,15 @@ class KeywordsAdd extends Command
])
->get();
foreach (array_chunk($goalKeywords->pluck('id')->toArray(), 1000) as $items){
foreach (array_chunk($goalKeywords->pluck('id')->toArray(), 1000) as $items) {
GoalKeyword::whereIn('id', $items)
->update([
'reserve_create_at' => Carbon::now(),
]);
}
$factory->getRequest('Keywords', 'add')
$factory = new AddKeywords();
$factory->setToken($token)
->call([
'goalKeywords' => $goalKeywords,
]);
......
......@@ -3,8 +3,7 @@
namespace App\Console\Commands;
use App\Models\Tokens;
use App\Service\API\API;
use App\Service\Requests\APIRequest;
use App\Service\Requests\Direct\DeleteKeywords;
use Illuminate\Console\Command;
use Illuminate\Support\Facades\DB;
......@@ -50,7 +49,7 @@ class KeywordsDelete extends Command
WHERE k.deleted_at is not null AND d.token_id=" . $token->id;
$result = DB::select($sql);
$ids = [];
foreach ($result as $item){
foreach ($result as $item) {
$ids[] = $item->external_id;
}
......@@ -58,10 +57,8 @@ class KeywordsDelete extends Command
continue;
}
$factory = APIRequest::getInstance(API::YANDEX);
$factory->setToken($token);
$factory->getRequest('Keywords', 'delete')
$factory = new DeleteKeywords();
$factory->setToken($token)
->call([
'ids' => $ids
]);
......
......@@ -4,13 +4,9 @@ namespace App\Console\Commands;
use App\Models\Pivots\GoalKeyword;
use App\Models\Tokens;
use App\Service\API\API;
use App\Service\Requests\APIRequest;
use App\Service\Requests\Direct\UpdateKeywords;
use Carbon\Carbon;
use Illuminate\Console\Command;
use Illuminate\Database\Eloquent\Relations\HasMany;
use Illuminate\Database\Eloquent\Relations\HasManyThrough;
use Illuminate\Support\Facades\DB;
class KeywordsUpdate extends Command
{
......@@ -46,7 +42,7 @@ class KeywordsUpdate extends Command
public function handle()
{
$tokens = Tokens::/*whereHas('dictionaryCampaignsEnabledForExternalUpdated.goalKeywordsForNeedUpdated.keyword')
->*/where('type', '!=', Tokens::MAIN)
->*/ where('type', '!=', Tokens::MAIN)
->get();
foreach ($tokens as $token) {
......@@ -57,20 +53,21 @@ class KeywordsUpdate extends Command
},
]);*/
$factory = APIRequest::getInstance(API::YANDEX);
$factory->setToken($token);
$goalKeywords = GoalKeyword::getForUpdate($token);
if ($goalKeywords->isEmpty()) continue;
foreach (array_chunk($goalKeywords->pluck('id')->toArray(), 1000) as $items){
if ($goalKeywords->isEmpty()) {
continue;
}
foreach (array_chunk($goalKeywords->pluck('id')->toArray(), 1000) as $items) {
GoalKeyword::whereIn('id', $items)
->update([
'reserve_update_at' => Carbon::now(),
]);
}
$factory->getRequest('Keywords', 'update')
$factory = new UpdateKeywords();
$factory->setToken($token)
->call([
'goalKeywords' => $goalKeywords,
]);
......
......@@ -2,11 +2,9 @@
namespace App\Console\Commands;
use App\Models\Pivots\GoalAdExtension;
use App\Models\Pivots\GoalNegativeKeywordSharedSet;
use App\Models\Tokens;
use App\Service\API\API;
use App\Service\Requests\APIRequest;
use App\Service\Requests\Direct\AddNegativeKeywordSharedSets;
use Carbon\Carbon;
use Illuminate\Console\Command;
use Illuminate\Database\Eloquent\Relations\HasMany;
......@@ -57,9 +55,6 @@ class NegativeKeywordSharedSetsAdd extends Command
'goalNegativeKeywordSharedSetsForNotExternalForNotReserveCreate.negativeKeywordSharedSet',
]);
$factory = APIRequest::getInstance(API::YANDEX);
$factory->setToken($token);
$goalNegativeKeywordSharedSets = $token->goalNegativeKeywordSharedSetsForNotExternalForNotReserveCreate;
foreach (array_chunk($goalNegativeKeywordSharedSets->pluck('id')->toArray(), 1000) as $items) {
......@@ -69,7 +64,8 @@ class NegativeKeywordSharedSetsAdd extends Command
]);
}
$factory->getRequest('NegativeKeywordSharedSets', 'add')
$factory = new AddNegativeKeywordSharedSets();
$factory->setToken($token)
->call([
'goalNegativeKeywordSharedSets' => $goalNegativeKeywordSharedSets,
]);
......
......@@ -2,10 +2,8 @@
namespace App\Console\Commands;
use App\Models\Campaigns;
use App\Models\Tokens;
use App\Service\API\API;
use App\Service\Requests\APIRequest;
use App\Service\Requests\Direct\GetNegativeKeywordSharedSets;
use Illuminate\Console\Command;
class NegativeKeywordSharedSetsLoad extends Command
......@@ -48,10 +46,8 @@ class NegativeKeywordSharedSetsLoad extends Command
throw new \Exception('Не найден токен блин');
}
$factory = APIRequest::getInstance(API::YANDEX);
$factory->setToken($token);
$factory->getRequest('NegativeKeywordSharedSets', 'get')
$factory = new GetNegativeKeywordSharedSets();
$factory->setToken($token)
->call();
return 0;
......
......@@ -43,5 +43,7 @@ class RefreshLimits extends Command
foreach ($tokens as $token){
Limits::getInstance($token)->refreshCurrentLimit();
}
return 0;
}
}
......@@ -2,11 +2,9 @@
namespace App\Console\Commands;
use App\Models\Pivots\GoalAdExtension;
use App\Models\Pivots\GoalSitelink;
use App\Models\Tokens;
use App\Service\API\API;
use App\Service\Requests\APIRequest;
use App\Service\Requests\Direct\AddSitelinks;
use Carbon\Carbon;
use Illuminate\Console\Command;
use Illuminate\Database\Eloquent\Relations\HasMany;
......@@ -57,9 +55,6 @@ class SitelinksAdd extends Command
'goalSitelinksForNotExternalForNotReserveCreate.sitelink',
]);
$factory = APIRequest::getInstance(API::YANDEX);
$factory->setToken($token);
$goalSitelinks = $token->goalSitelinksForNotExternalForNotReserveCreate;
foreach (array_chunk($goalSitelinks->pluck('id')->toArray(), 1000) as $items) {
......@@ -69,7 +64,8 @@ class SitelinksAdd extends Command
]);
}
$factory->getRequest('Sitelinks', 'add')
$factory = new AddSitelinks();
$factory->setToken($token)
->call([
'goalSitelinks' => $goalSitelinks,
]);
......
......@@ -2,10 +2,8 @@
namespace App\Console\Commands;
use App\Models\Campaigns;
use App\Models\Tokens;
use App\Service\API\API;
use App\Service\Requests\APIRequest;
use App\Service\Requests\Direct\GetSitelinks;
use Illuminate\Console\Command;
class SitelinksLoad extends Command
......@@ -48,10 +46,8 @@ class SitelinksLoad extends Command
throw new \Exception('Не найден токен блин');
}
$factory = APIRequest::getInstance(API::YANDEX);
$factory->setToken($token);
$factory->getRequest('Sitelinks', 'get')
$factory = new GetSitelinks();
$factory->setToken($token)
->call();
return 0;
......
......@@ -2,12 +2,9 @@
namespace App\Console\Commands;
use App\Models\Pivots\GoalAdExtension;
use App\Models\Pivots\GoalNegativeKeywordSharedSet;
use App\Models\Pivots\GoalVCard;
use App\Models\Tokens;
use App\Service\API\API;
use App\Service\Requests\APIRequest;
use App\Service\Requests\Direct\AddVCards;
use Carbon\Carbon;
use Illuminate\Console\Command;
use Illuminate\Database\Eloquent\Relations\HasMany;
......@@ -58,9 +55,6 @@ class VCardsAdd extends Command
'dictionaryCampaignsEnabledForExternalSynchronized.goalVCardsForNotExternalForNotReserveCreate.vCard',
]);
$factory = APIRequest::getInstance(API::YANDEX);
$factory->setToken($token);
$goalVCards = $token->dictionaryCampaignsEnabledForExternalSynchronized->pluck('goalVCardsForNotExternalForNotReserveCreate')
->collapse();
......@@ -71,7 +65,8 @@ class VCardsAdd extends Command
]);
}
$factory->getRequest('VCards', 'add')
$factory = new AddVCards();
$factory->setToken($token)
->call([
'goalVCards' => $goalVCards,
]);
......
......@@ -2,10 +2,8 @@
namespace App\Console\Commands;
use App\Models\Campaigns;
use App\Models\Tokens;
use App\Service\API\API;
use App\Service\Requests\APIRequest;
use App\Service\Requests\Direct\GetVCards;
use Illuminate\Console\Command;
class VCardsLoad extends Command
......@@ -48,10 +46,8 @@ class VCardsLoad extends Command
throw new \Exception('Не найден токен блин');
}
$factory = APIRequest::getInstance(API::YANDEX);
$factory->setToken($token);
$factory->getRequest('VCards', 'get')
$factory = new GetVCards();
$factory->setToken($token)
->call();
return 0;
......
......@@ -84,8 +84,8 @@ class Kernel extends ConsoleKernel
$schedule->command(KeywordsDelete::class)->hourlyAt(40);
$schedule->command(AdvertisementsLoadUpdated::class)->hourlyAt(40);
// $schedule->command(AdvertisementsAdd::class)->hourlyAt(50);
// $schedule->command(AdvertisementsUpdate::class)->hourlyAt(50);
$schedule->command(AdvertisementsAdd::class)->hourlyAt(50);
$schedule->command(AdvertisementsUpdate::class)->hourlyAt(50);
$schedule->call(function () {
$items = new \FilesystemIterator(config('clockwork.storage_files_path'));
......
......@@ -2,6 +2,8 @@
namespace App\Service\Requests;
use App\Service\API\API;
/**
* Class DirectRequest
* @package App\Service\Requests
......@@ -16,9 +18,9 @@ class DirectRequest extends APIRequest
private $url;
protected function __construct($api)
function __construct()
{
parent::__construct($api);
parent::__construct(API::YANDEX);
$this->url = config('api.yandex.url');
}
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!