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 @@
-
+

Are you Sure?

-
Are you sure you want to delete this comment?
+
Are you sure you want to delete this remark?
diff --git a/resources/assets/vue/components/settings/forms/WarehouseRemarkFormComponent.vue b/resources/assets/vue/components/general/forms/RemarkFormComponent.vue similarity index 91% rename from resources/assets/vue/components/settings/forms/WarehouseRemarkFormComponent.vue rename to resources/assets/vue/components/general/forms/RemarkFormComponent.vue index 51c2ae31..8b67c246 100644 --- a/resources/assets/vue/components/settings/forms/WarehouseRemarkFormComponent.vue +++ b/resources/assets/vue/components/general/forms/RemarkFormComponent.vue @@ -37,18 +37,22 @@ diff --git a/resources/assets/vue/components/orders/sections/OrderProfileSectionComponent.vue b/resources/assets/vue/components/orders/sections/OrderProfileSectionComponent.vue index 5fc0a5ff..7156d78c 100644 --- a/resources/assets/vue/components/orders/sections/OrderProfileSectionComponent.vue +++ b/resources/assets/vue/components/orders/sections/OrderProfileSectionComponent.vue @@ -35,39 +35,25 @@
Remark:
+ + +
-
-
Add a Remark
+
+
Add a Remark
-
-
{{order.remarks[0].content}}
- +
+
{{ order.remarks[0].content }}
+ - - + +
-
-
-
- -
-
-
-
- Cancel -
-
-
-
-
-
- -
@@ -465,7 +451,6 @@ section: 'orderProfileSection', isLoading: true, order: null, - isEditRemark: false, addComment: false, } }, diff --git a/resources/assets/vue/components/settings/elements/WarehouseChargesComponent.vue b/resources/assets/vue/components/settings/elements/WarehouseChargesComponent.vue index f2bff382..0498cd55 100644 --- a/resources/assets/vue/components/settings/elements/WarehouseChargesComponent.vue +++ b/resources/assets/vue/components/settings/elements/WarehouseChargesComponent.vue @@ -42,13 +42,20 @@
-
{{ data.remarks[0].content }}
+
+ {{ data.remarks[0].content }} + + +
Add
- + + + +
@@ -75,7 +82,7 @@ required: false }, section: { - default: '' + default: 'warhouseListSection' }, }, mixins: [modalFormHandler] diff --git a/routes/company.php b/routes/company.php index cbfed64f..abcf7201 100644 --- a/routes/company.php +++ b/routes/company.php @@ -33,6 +33,4 @@ Route::group(['prefix' => 'company', 'as' => 'company.', 'namespace' => 'Compani }); Route::get('/module/list', 'ListCompanyModulesController@list')->name('module.list'); - - Route::post('module/{id}/remark/create', 'CreateCompanyModulesRemarkController@create')->name('module.remark.create'); }); diff --git a/routes/order.php b/routes/order.php index 2071cae4..79a67bd8 100644 --- a/routes/order.php +++ b/routes/order.php @@ -18,6 +18,4 @@ Route::group(['prefix' => 'order', 'as' => 'order.', 'namespace' => 'Orders'], f Route::put('/assign-remark/{id}', 'AssignOrderRemarkController@create')->name('assign.remark'); Route::get('/{id}/shipping-cost', 'ShippingCostController@calculate')->name('shipping.cost'); - - Route::post('/{id}/remark/create', 'CreateOrderRemarkController@create')->name('remark.create'); }); diff --git a/routes/remark.php b/routes/remark.php index 33756eee..91ae4676 100644 --- a/routes/remark.php +++ b/routes/remark.php @@ -5,7 +5,7 @@ use Illuminate\Support\Facades\Route; Route::group(['namespace' => 'Remarks', 'as' => 'remark.', 'prefix' => 'remark'], function () { Route::get('/{id}/show', 'FetchRemarkController@fetch')->name('show'); Route::get('/list', 'ListRemarksController@list')->name('list'); - Route::post('/create', 'CreateRemarkController@create')->name('create'); + Route::post('/{id}/create', 'CreateRemarkController@create')->name('create'); Route::put('/update/{id}', 'UpdateRemarkController@update')->name('update'); Route::delete('/delete/{id}', 'DeleteRemarkController@delete')->name('delete'); });