osb/app/Console/Commands/BroadbandTraffic.php
Deon George 1c4cb6f38c
All checks were successful
Create Docker Image / Build Docker Image (x86_64) (push) Successful in 31s
Create Docker Image / Final Docker Image Manifest (push) Successful in 9s
Fix usage_broadband, since our usage data is a float
2024-07-26 14:46:06 +10:00

57 lines
1.1 KiB
PHP

<?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;
}
}