diff --git a/app/Classes/Modules/PackingLists/ControllersLogic/Containers/CreateLoadContainerLogic.php b/app/Classes/Modules/PackingLists/ControllersLogic/Containers/CreateLoadContainerLogic.php index 2835ba59..92330cea 100644 --- a/app/Classes/Modules/PackingLists/ControllersLogic/Containers/CreateLoadContainerLogic.php +++ b/app/Classes/Modules/PackingLists/ControllersLogic/Containers/CreateLoadContainerLogic.php @@ -87,8 +87,6 @@ class CreateLoadContainerLogic extends AbstractControllerLogic $request->input('status') ); - $company = $this->fetchesCompanyModule->execute(['id' => 2]); - $this->canCreateContainer->passes($object); $container = $this->createsContainer->execute($object, $this->fetchesCompanyModule->execute(['id' => $request->input('company_module_id')])); diff --git a/app/Classes/Modules/PackingLists/ControllersLogic/Containers/UpdateDispatchDateContainerLogic.php b/app/Classes/Modules/PackingLists/ControllersLogic/Containers/UpdateDispatchDateContainerLogic.php new file mode 100644 index 00000000..7b091fb6 --- /dev/null +++ b/app/Classes/Modules/PackingLists/ControllersLogic/Containers/UpdateDispatchDateContainerLogic.php @@ -0,0 +1,60 @@ + 'Updated Dispatch Date Container', + 'message' => 'You have successfully updated the Dispatch Date Container' + ]; + } + + + /** @var UpdatesDispatchDateTransport */ + private $updatesDispatchDateTransport; + + /** @var FetchesContainer */ + private $fetchesContainer; + + /** + * UpdateDispatchDateContainerLogic constructor. + * @param CanUpdateContainer $canUpdateContainer + * @param UpdatesDispatchDateTransport $updatesDispatchDateTransport + * @param FetchesContainer $fetchesContainer + */ + public function __construct(UpdatesDispatchDateTransport $updatesDispatchDateTransport, FetchesContainer $fetchesContainer) + { + $this->updatesDispatchDateTransport = $updatesDispatchDateTransport; + $this->fetchesContainer = $fetchesContainer; + } + + + /** + * @param Request $request + * @return JsonResponse + * @throws ErrorException + */ + public function logic(Request $request) : JsonResponse + { + $container = $this->fetchesContainer->execute(['id' => $request->route('id')]); + $transport = $container->transports()->first(); + $query = $this->updatesDispatchDateTransport->execute($transport, Carbon::parse($request->input('dispatch_date'))); + return $this->resourceResponse(new ContainerResource($container)); + } + +} diff --git a/app/Classes/Modules/PackingLists/ControllersLogic/Containers/UpdateDropDateContainerLogic.php b/app/Classes/Modules/PackingLists/ControllersLogic/Containers/UpdateDropDateContainerLogic.php new file mode 100644 index 00000000..56d4d9b5 --- /dev/null +++ b/app/Classes/Modules/PackingLists/ControllersLogic/Containers/UpdateDropDateContainerLogic.php @@ -0,0 +1,60 @@ + 'Updated Drop Date Container', + 'message' => 'You have successfully updated the Drop Date Container' + ]; + } + + + /** @var UpdatesDropDateTransport */ + private $updatesDropDateTransport; + + /** @var FetchesContainer */ + private $fetchesContainer; + + /** + * UpdateDropDateContainerLogic constructor. + * @param CanUpdateContainer $canUpdateContainer + * @param UpdatesDropDateTransport $updatesDropDateTransport + * @param FetchesContainer $fetchesContainer + */ + public function __construct(UpdatesDropDateTransport $updatesDropDateTransport, FetchesContainer $fetchesContainer) + { + $this->updatesDropDateTransport = $updatesDropDateTransport; + $this->fetchesContainer = $fetchesContainer; + } + + + /** + * @param Request $request + * @return JsonResponse + * @throws ErrorException + */ + public function logic(Request $request) : JsonResponse + { + $container = $this->fetchesContainer->execute(['id' => $request->route('id')]); + $transport = $container->transports()->first(); + $query = $this->updatesDropDateTransport->execute($transport, Carbon::parse($request->input('drop_date'))); + return $this->resourceResponse(new ContainerResource($container)); + } + +} diff --git a/app/Classes/Modules/Transports/Services/UpdatesDispatchDateTransport.php b/app/Classes/Modules/Transports/Services/UpdatesDispatchDateTransport.php new file mode 100644 index 00000000..fb8876dd --- /dev/null +++ b/app/Classes/Modules/Transports/Services/UpdatesDispatchDateTransport.php @@ -0,0 +1,22 @@ +dispatch_date = $date; + return $this->handler($model); + } +} diff --git a/app/Classes/Modules/Transports/Services/UpdatesDropDateTransport.php b/app/Classes/Modules/Transports/Services/UpdatesDropDateTransport.php new file mode 100644 index 00000000..6f23c65b --- /dev/null +++ b/app/Classes/Modules/Transports/Services/UpdatesDropDateTransport.php @@ -0,0 +1,22 @@ +drop_date = $date; + return $this->handler($model); + } +} diff --git a/app/Http/Controllers/PackingLists/Containers/UpdateDispatchDateContainerController.php b/app/Http/Controllers/PackingLists/Containers/UpdateDispatchDateContainerController.php new file mode 100644 index 00000000..17757383 --- /dev/null +++ b/app/Http/Controllers/PackingLists/Containers/UpdateDispatchDateContainerController.php @@ -0,0 +1,20 @@ +execute($request); + } + +} diff --git a/app/Http/Controllers/PackingLists/Containers/UpdateDropDateContainerController.php b/app/Http/Controllers/PackingLists/Containers/UpdateDropDateContainerController.php new file mode 100644 index 00000000..f4bb133f --- /dev/null +++ b/app/Http/Controllers/PackingLists/Containers/UpdateDropDateContainerController.php @@ -0,0 +1,20 @@ +execute($request); + } + +} diff --git a/routes/packing_list.php b/routes/packing_list.php index 43d00d92..ab4d4c27 100644 --- a/routes/packing_list.php +++ b/routes/packing_list.php @@ -19,6 +19,9 @@ Route::group(['namespace' => 'PackingLists', 'as' => 'packing_list.', 'prefix' = Route::delete('/delete/{id}', 'DeleteContainerController@delete')->name('delete'); Route::put('/assign-packing_list/{id}', 'AssignPackingListContainerController@assign')->name('assign.packing_list'); Route::put('/reschedule/{id}', 'RescheduleContainerController@reschedule')->name('reschedule'); + + Route::put('/update-dispatch-date/{id}', 'UpdateDispatchDateContainerController@update')->name('update_dispatch_date'); + Route::put('/update-drop-date/{id}', 'UpdateDropDateContainerController@update')->name('update_drop_date'); }); Route::group(['namespace' => 'Packages', 'as' => 'package.', 'prefix' => 'package'], function () {