diff --git a/app/Classes/Modules/Companies/ControllersLogic/CreateCompanyRemarkLogic.php b/app/Classes/Modules/Companies/ControllersLogic/CreateCompanyRemarkLogic.php deleted file mode 100644 index d7fbda65..00000000 --- a/app/Classes/Modules/Companies/ControllersLogic/CreateCompanyRemarkLogic.php +++ /dev/null @@ -1,62 +0,0 @@ - 'Created Company Module Remark', - 'message' => 'You have successfully created a new Company Module Remark' - ]; - } - - - /** @var FetchesCompanyModule */ - private $fetchesCompanyModule; - - /** @var CreateRemarkProcessor */ - private $createRemarkProcessor; - - /** - * CreateCompanyRemarkLogic constructor. - * @param FetchesCompany $fetchesCompany - * @param CreateRemarkProcessor $createRemarkProcessor - */ - public function __construct(FetchesCompanyModule $fetchesCompanyModule, CreateRemarkProcessor $createRemarkProcessor) - { - $this->fetchesCompanyModule = $fetchesCompanyModule; - $this->createRemarkProcessor = $createRemarkProcessor; - } - - /** - * @param Request $request - * @return JsonResponse - * @throws \App\Classes\Exceptions\AccessForbiddenException - * @throws \App\Classes\Exceptions\MalformedRequestException - * @throws \App\Classes\Exceptions\RequestValidationException - */ - public function logic(Request $request) : JsonResponse - { - $companyModule = $this->fetchesCompanyModule->execute(['id' => $request->route('id')]); - - $object = new RemarkObject($request->input('content'), auth()->user()->id); - - $this->createRemarkProcessor->execute($companyModule, $object); - - return $this->resourceResponse(new CompanyModuleResource($companyModule)); - } - -} diff --git a/app/Classes/Modules/Orders/ControllersLogic/CreateOrderRemarkLogic.php b/app/Classes/Modules/Orders/ControllersLogic/CreateOrderRemarkLogic.php deleted file mode 100644 index e134bcc7..00000000 --- a/app/Classes/Modules/Orders/ControllersLogic/CreateOrderRemarkLogic.php +++ /dev/null @@ -1,60 +0,0 @@ - 'Created Order', - 'message' => 'You have successfully created a new Order' - ]; - } - - /** @var FetchesOrder */ - private $fetchesOrder; - - /** @var CreateRemarkProcessor */ - private $createRemarkProcessor; - - /** - * CreateOrderRemarkLogic constructor. - * @param FetchesOrder $fetchesOrder - * @param CreateRemarkProcessor $createRemarkProcessor - */ - public function __construct(FetchesOrder $fetchesOrder, CreateRemarkProcessor $createRemarkProcessor) - { - $this->fetchesOrder = $fetchesOrder; - $this->createRemarkProcessor = $createRemarkProcessor; - } - - /** - * @param Request $request - * @return JsonResponse - * @throws \App\Classes\Exceptions\AccessForbiddenException - * @throws \App\Classes\Exceptions\MalformedRequestException - * @throws \App\Classes\Exceptions\RequestValidationException - */ - public function logic(Request $request) : JsonResponse - { - $order = $this->fetchesOrder->execute(['id' => $request->route('id')]); - - $object = new RemarkObject($request->input('content'), auth()->user()->id); - - $this->createRemarkProcessor->execute($order, $object); - - return $this->resourceResponse(new OrderResource($order)); - - } -} diff --git a/app/Classes/Modules/PackingLists/ControllersLogic/Containers/CreateContainerRemarkLogic.php b/app/Classes/Modules/PackingLists/ControllersLogic/Containers/CreateContainerRemarkLogic.php index bb4b2a06..f35b828e 100644 --- a/app/Classes/Modules/PackingLists/ControllersLogic/Containers/CreateContainerRemarkLogic.php +++ b/app/Classes/Modules/PackingLists/ControllersLogic/Containers/CreateContainerRemarkLogic.php @@ -20,8 +20,8 @@ class CreateContainerRemarkLogic extends AbstractControllerLogic */ protected function notification():array { return [ - 'title' => 'Created Container', - 'message' => 'You have successfully created a new Container' + 'title' => 'Created Container Remark', + 'message' => 'You have successfully created a new Container Remark' ]; } diff --git a/app/Classes/Modules/Remarks/ControllersLogic/CreateRemarkLogic.php b/app/Classes/Modules/Remarks/ControllersLogic/CreateRemarkLogic.php index a5bf50b0..46d822c5 100644 --- a/app/Classes/Modules/Remarks/ControllersLogic/CreateRemarkLogic.php +++ b/app/Classes/Modules/Remarks/ControllersLogic/CreateRemarkLogic.php @@ -4,18 +4,16 @@ namespace App\Classes\Modules\Remarks\ControllersLogic; use App\Classes\General\Abstracts\AbstractControllerLogic; -use App\Classes\Modules\Remarks\Services\CreatesRemark; -use App\Classes\Modules\Remarks\Standards\Rules\CanCreateRemark; use App\Classes\Modules\Remarks\DataTransferObjects\RemarkObject; -use App\Classes\Modules\Accounts\Services\FetchesUser; -use App\Http\Resources\RemarkResource; -use ErrorException; +use App\Classes\Modules\Remarks\Processors\CreateRemarkProcessor; use Illuminate\Http\JsonResponse; use Illuminate\Http\Request; +use Illuminate\Support\Str; +use App\Classes\Exceptions\MalformedRequestException; +use App\Http\Resources\RemarkResource; class CreateRemarkLogic extends AbstractControllerLogic { - /** * @return array */ @@ -26,25 +24,16 @@ class CreateRemarkLogic extends AbstractControllerLogic ]; } - /** @var CanCreateRemark */ - private $canCreateRemark; - - /** @var CreatesRemark */ - private $createsRemark; - - /** @var FetchesUser */ - private $fetchesUser; + /** @var CreateRemarkProcessor */ + private $createRemarkProcessor; /** * CreateRemarkLogic constructor. - * @param CanCreateRemark $canCreateRemark - * @param CreatesRemark $createsRemark + * @param CreateRemarkProcessor $createRemarkProcessor */ - public function __construct(CanCreateRemark $canCreateRemark, CreatesRemark $createsRemark, FetchesUser $fetchesUser) + public function __construct(CreateRemarkProcessor $createRemarkProcessor) { - $this->canCreateRemark = $canCreateRemark; - $this->createsRemark = $createsRemark; - $this->fetchesUser = $fetchesUser; + $this->createRemarkProcessor = $createRemarkProcessor; } /** @@ -56,15 +45,18 @@ class CreateRemarkLogic extends AbstractControllerLogic */ public function logic(Request $request) : JsonResponse { + $classs = '\\App\\Models\\' . Str::studly($request->input('model_type')); - $object = new RemarkObject($request->input('content'), $request->input('commenter_id')); + if (!class_exists($classs)) { + throw new MalformedRequestException('Unable to process this entity'); + } + + $remarkOwner = $classs::find($request->route('id')); - $this->canCreateRemark->passes($object); + $remarkObject = new RemarkObject($request->input('content'), auth()->user()->id); - $query = $this->createsRemark->execute($this->fetchesUser->execute(['id' => $request->input('commenter_id')]), $object); - - return $this->resourceResponse(new RemarkResource($query)); + $remmark = $this->createRemarkProcessor->execute($remarkOwner, $remarkObject); + return $this->resourceResponse(new RemarkResource($remmark)); } - } diff --git a/app/Http/Controllers/Companies/CreateCompanyModulesRemarkController.php b/app/Http/Controllers/Companies/CreateCompanyModulesRemarkController.php deleted file mode 100644 index 4cc894a5..00000000 --- a/app/Http/Controllers/Companies/CreateCompanyModulesRemarkController.php +++ /dev/null @@ -1,20 +0,0 @@ -execute($request); - } -} diff --git a/app/Http/Controllers/Orders/CreateOrderRemarkController.php b/app/Http/Controllers/Orders/CreateOrderRemarkController.php deleted file mode 100644 index 3464566a..00000000 --- a/app/Http/Controllers/Orders/CreateOrderRemarkController.php +++ /dev/null @@ -1,14 +0,0 @@ -execute($request); - } -} \ No newline at end of file diff --git a/resources/assets/vue/components/orders/forms/DeleteOrderRemarkFormComponent.vue b/resources/assets/vue/components/general/forms/DeleteRemarkFormComponent.vue similarity index 94% rename from resources/assets/vue/components/orders/forms/DeleteOrderRemarkFormComponent.vue rename to resources/assets/vue/components/general/forms/DeleteRemarkFormComponent.vue index a23d077f..4e50d8c4 100644 --- a/resources/assets/vue/components/orders/forms/DeleteOrderRemarkFormComponent.vue +++ b/resources/assets/vue/components/general/forms/DeleteRemarkFormComponent.vue @@ -5,9 +5,9 @@