mirror of
https://gitlab.com/CIEFWorldwideSdnBhd/shipping-portal.git
synced 2026-08-19 04:24:12 +00:00
44 lines
1.1 KiB
PHP
44 lines
1.1 KiB
PHP
<?php
|
|
|
|
namespace App\Classes\Modules\Companies\Processors;
|
|
|
|
use App\Classes\Modules\Companies\DataTransferObjects\CompanyModuleObject;
|
|
use App\Classes\Modules\Companies\Services\CreatesCompanyModule;
|
|
|
|
use App\Classes\ValueObjects\Constants\BusinessType;
|
|
|
|
use Illuminate\Database\Eloquent\Model;
|
|
|
|
use App\Models\Company;
|
|
|
|
class CreateCompanyModuleProcessor
|
|
{
|
|
|
|
/** @var CreatesCompanyModule */
|
|
private $createsCompanyModule;
|
|
|
|
/**
|
|
* CreateCompanyModuleProcessor constructor.
|
|
* @param CreatesCompanyModule $createsCompanyModule
|
|
*/
|
|
public function __construct(CreatesCompanyModule $createsCompanyModule)
|
|
{
|
|
$this->createsCompanyModule = $createsCompanyModule;
|
|
}
|
|
|
|
/**
|
|
* @param Company $company
|
|
* @return Model
|
|
*/
|
|
public function execute(Company $company , ?int $businessType): Model
|
|
{
|
|
$company_module_object = new CompanyModuleObject(
|
|
$company->id,
|
|
$businessType??BusinessType::IMPORTER,
|
|
$company->status,
|
|
);
|
|
|
|
return $this->createsCompanyModule->execute($company_module_object);
|
|
}
|
|
}
|