<?php namespace App\Console\Commands; use Illuminate\Console\Command; use Illuminate\Database\Eloquent\ModelNotFoundException; use App\Jobs\BroadbandTraffic as Job; use App\Models\Supplier; class BroadbandTraffic extends Command { /** * The name and signature of the console command. * * @var string */ protected $signature = 'broadband:traffic:import'. ' {supplier? : Supplier Name}'; /** * The console command description. * * @var string */ protected $description = 'Import Broadband Traffic from Suppliers'; /** * Execute the console command. * * @return mixed */ public function handle() { if ($this->argument('supplier')) { try { $o = Supplier::active() ->where('name','ilike',$this->argument('supplier')) ->sole(); } catch (ModelNotFoundException $e) { $this->error(sprintf('Supplier [%s] not found',$this->argument('supplier'))); return self::FAILURE; } Job::dispatchSync($o->name); return self::SUCCESS; } foreach (Supplier::active()->get() as $o) Job::dispatchSync($o->name); return self::SUCCESS; } }