From 45077c953e83fbc276060c62058f141bf94789e2 Mon Sep 17 00:00:00 2001 From: weichien00 Date: Thu, 8 Jul 2021 01:47:58 +0800 Subject: [PATCH] add: company module classes. #7 --- .../CompanyModuleObject.php | 54 +++++++++++++++++++ .../CreateCompanyModuleProcessor.php | 41 ++++++++++++++ .../Services/CreatesCompanyModule.php | 26 +++++++++ 3 files changed, 121 insertions(+) create mode 100644 app/Classes/Modules/Companies/DataTransferObjects/CompanyModuleObject.php create mode 100644 app/Classes/Modules/Companies/Processors/CreateCompanyModuleProcessor.php create mode 100644 app/Classes/Modules/Companies/Services/CreatesCompanyModule.php diff --git a/app/Classes/Modules/Companies/DataTransferObjects/CompanyModuleObject.php b/app/Classes/Modules/Companies/DataTransferObjects/CompanyModuleObject.php new file mode 100644 index 00000000..10e2a7ae --- /dev/null +++ b/app/Classes/Modules/Companies/DataTransferObjects/CompanyModuleObject.php @@ -0,0 +1,54 @@ +companyId = $companyId; + $this->type = $type; + $this->status = $status; + } + + /** + * @return int + */ + public function getCompanyId(): int + { + return $this->companyId; + } + + /** + * @return int + */ + public function getType(): int + { + return $this->type; + } + + /** + * @return int + */ + public function getStatus(): int + { + return $this->status; + } +} diff --git a/app/Classes/Modules/Companies/Processors/CreateCompanyModuleProcessor.php b/app/Classes/Modules/Companies/Processors/CreateCompanyModuleProcessor.php new file mode 100644 index 00000000..fb36d01f --- /dev/null +++ b/app/Classes/Modules/Companies/Processors/CreateCompanyModuleProcessor.php @@ -0,0 +1,41 @@ +createsCompanyModule = $createsCompanyModule; + } + + /** + * @param Company $company + * @return Model + */ + public function execute(Company $company): Model + { + $company_module_object = new CompanyModuleObject( + $company->id, + $company->type, + $company->status, + ); + + return $this->createsCompanyModule->execute($company_module_object); + } +} diff --git a/app/Classes/Modules/Companies/Services/CreatesCompanyModule.php b/app/Classes/Modules/Companies/Services/CreatesCompanyModule.php new file mode 100644 index 00000000..ae6b2b78 --- /dev/null +++ b/app/Classes/Modules/Companies/Services/CreatesCompanyModule.php @@ -0,0 +1,26 @@ +company_id = $object->getCompanyId(); + $model->type = $object->getType(); + $model->status = $object->getStatus(); + + return $this->handler($model); + } +}