diff --git a/app/Classes/Modules/Orders/ControllersLogic/UpdateOrderLogic.php b/app/Classes/Modules/Orders/ControllersLogic/UpdateOrderLogic.php new file mode 100644 index 00000000..06c00de3 --- /dev/null +++ b/app/Classes/Modules/Orders/ControllersLogic/UpdateOrderLogic.php @@ -0,0 +1,46 @@ + 'Update Order', + 'message' => 'You have successfully update the order' + ]; + } + + private $updateOrderReference; + private $fetchesOrder; + + public function __construct(UpdateOrderReference $updateOrderReference, FetchesOrder $fetchesOrder) + { + $this->updateOrderReference = $updateOrderReference; + $this->fetchesOrder = $fetchesOrder; + } + + protected function logic(Request $request): JsonResponse + { + $reference_id = $request->input('reference_id'); + + $order = $this->fetchesOrder->execute(['id' => $request->route('id')]); + + $order = $this->updateOrderReference->execute($order, $reference_id); + + return $this->resourceResponse(new OrderResource($order)); + + } +} diff --git a/app/Classes/Modules/Orders/Services/UpdateOrderReference.php b/app/Classes/Modules/Orders/Services/UpdateOrderReference.php new file mode 100644 index 00000000..0768c4c9 --- /dev/null +++ b/app/Classes/Modules/Orders/Services/UpdateOrderReference.php @@ -0,0 +1,17 @@ +reference = $reference; + + return $this->handler($model); + } +} diff --git a/app/Http/Controllers/Orders/UpdateOrderController.php b/app/Http/Controllers/Orders/UpdateOrderController.php new file mode 100644 index 00000000..c8321284 --- /dev/null +++ b/app/Http/Controllers/Orders/UpdateOrderController.php @@ -0,0 +1,15 @@ +execute($request); + } +} diff --git a/routes/order.php b/routes/order.php index 6a0c04d3..eda518af 100644 --- a/routes/order.php +++ b/routes/order.php @@ -10,5 +10,6 @@ Route::group(['prefix' => 'order', 'as' => 'order.', 'namespace' => 'Orders'], f Route::put('/cancel/{id}', 'CancelOrderController@cancel')->name('cancel'); Route::put('/restore/{id}', 'RestoreOrderController@restore')->name('restore'); Route::post('/address/change/request', 'RequestChangeOrderAddressController@request')->name('address.change.request'); + Route::post('/update/{id}','UpdateOrderController@update')->name('reference.update'); Route::put('/address/{id}/status/{status}', 'ApproveChangeOrderAddressController@approve')->name('address.status.update'); });