From a7eec812c9f7b78fb04c044c7a0e02df208ab27d Mon Sep 17 00:00:00 2001 From: Fairuz Date: Thu, 15 Jul 2021 10:33:12 +0800 Subject: [PATCH] Orders APIs WIP --- .../CompletesOrderStepLogic.php | 45 +++++++++++++++++++ .../Processors/CreateOrderStepsProcessor.php | 31 ------------- .../{ => Steps}/AbstractStepProcessor.php | 0 .../Processors/{ => Steps}/ConfirmsOrder.php | 0 .../Processors/{ => Steps}/DeliverOrder.php | 0 .../Processors/{ => Steps}/ShipOrder.php | 0 .../{ => Steps}/WarehouseArrivalOrder.php | 0 .../{ => Steps}/WarehousePackOrder.php | 0 .../{ => Steps}/WarehouseReceivesOrder.php | 0 .../{ => Steps}/WarehouseUnpackingOrder.php | 0 ...p => UpdatesOrderCurrentStepProcessor.php} | 2 +- 11 files changed, 46 insertions(+), 32 deletions(-) create mode 100644 app/Classes/Modules/OrderSteps/ControllersLogic/CompletesOrderStepLogic.php delete mode 100644 app/Classes/Modules/OrderSteps/Processors/CreateOrderStepsProcessor.php rename app/Classes/Modules/OrderSteps/Processors/{ => Steps}/AbstractStepProcessor.php (100%) rename app/Classes/Modules/OrderSteps/Processors/{ => Steps}/ConfirmsOrder.php (100%) rename app/Classes/Modules/OrderSteps/Processors/{ => Steps}/DeliverOrder.php (100%) rename app/Classes/Modules/OrderSteps/Processors/{ => Steps}/ShipOrder.php (100%) rename app/Classes/Modules/OrderSteps/Processors/{ => Steps}/WarehouseArrivalOrder.php (100%) rename app/Classes/Modules/OrderSteps/Processors/{ => Steps}/WarehousePackOrder.php (100%) rename app/Classes/Modules/OrderSteps/Processors/{ => Steps}/WarehouseReceivesOrder.php (100%) rename app/Classes/Modules/OrderSteps/Processors/{ => Steps}/WarehouseUnpackingOrder.php (100%) rename app/Classes/Modules/Orders/Processors/{UpdatesOrderCurrentStep.php => UpdatesOrderCurrentStepProcessor.php} (97%) diff --git a/app/Classes/Modules/OrderSteps/ControllersLogic/CompletesOrderStepLogic.php b/app/Classes/Modules/OrderSteps/ControllersLogic/CompletesOrderStepLogic.php new file mode 100644 index 00000000..d890dd5a --- /dev/null +++ b/app/Classes/Modules/OrderSteps/ControllersLogic/CompletesOrderStepLogic.php @@ -0,0 +1,45 @@ +canCreateOrder = $canCreateOrder; + $this->createsOrder = $createsOrder; + } + + protected function notification():array { + return [ + 'title' => 'Created Order', + 'message' => 'You have successfully created a new Order' + ]; + } + + public function logic(Request $request) : JsonResponse { + $order_object = new OrderObject($request->get('company_module_id'), '', '', OrderType::SHARED_CONTAINER, OrderStatus::PROCESSING, OrderSteps::PROCESSING); + + $this->canCreateOrder->passes($order_object); + + $order = $this->createsOrder->execute($order_object); + + return $this->resourceResponse(new OrderResource($order)); + } +} \ No newline at end of file diff --git a/app/Classes/Modules/OrderSteps/Processors/CreateOrderStepsProcessor.php b/app/Classes/Modules/OrderSteps/Processors/CreateOrderStepsProcessor.php deleted file mode 100644 index 57f6ce11..00000000 --- a/app/Classes/Modules/OrderSteps/Processors/CreateOrderStepsProcessor.php +++ /dev/null @@ -1,31 +0,0 @@ -canCreateOrder = $canCreateOrder; - $this->createsOrder = $createsOrder; - } - - public function execute(Request $request) { - - $order_object = new OrderObject(); - - $this->canCreateOrder->passes($order_object); - - return $this->createsOrder->execute($request); - } -} \ No newline at end of file diff --git a/app/Classes/Modules/OrderSteps/Processors/AbstractStepProcessor.php b/app/Classes/Modules/OrderSteps/Processors/Steps/AbstractStepProcessor.php similarity index 100% rename from app/Classes/Modules/OrderSteps/Processors/AbstractStepProcessor.php rename to app/Classes/Modules/OrderSteps/Processors/Steps/AbstractStepProcessor.php diff --git a/app/Classes/Modules/OrderSteps/Processors/ConfirmsOrder.php b/app/Classes/Modules/OrderSteps/Processors/Steps/ConfirmsOrder.php similarity index 100% rename from app/Classes/Modules/OrderSteps/Processors/ConfirmsOrder.php rename to app/Classes/Modules/OrderSteps/Processors/Steps/ConfirmsOrder.php diff --git a/app/Classes/Modules/OrderSteps/Processors/DeliverOrder.php b/app/Classes/Modules/OrderSteps/Processors/Steps/DeliverOrder.php similarity index 100% rename from app/Classes/Modules/OrderSteps/Processors/DeliverOrder.php rename to app/Classes/Modules/OrderSteps/Processors/Steps/DeliverOrder.php diff --git a/app/Classes/Modules/OrderSteps/Processors/ShipOrder.php b/app/Classes/Modules/OrderSteps/Processors/Steps/ShipOrder.php similarity index 100% rename from app/Classes/Modules/OrderSteps/Processors/ShipOrder.php rename to app/Classes/Modules/OrderSteps/Processors/Steps/ShipOrder.php diff --git a/app/Classes/Modules/OrderSteps/Processors/WarehouseArrivalOrder.php b/app/Classes/Modules/OrderSteps/Processors/Steps/WarehouseArrivalOrder.php similarity index 100% rename from app/Classes/Modules/OrderSteps/Processors/WarehouseArrivalOrder.php rename to app/Classes/Modules/OrderSteps/Processors/Steps/WarehouseArrivalOrder.php diff --git a/app/Classes/Modules/OrderSteps/Processors/WarehousePackOrder.php b/app/Classes/Modules/OrderSteps/Processors/Steps/WarehousePackOrder.php similarity index 100% rename from app/Classes/Modules/OrderSteps/Processors/WarehousePackOrder.php rename to app/Classes/Modules/OrderSteps/Processors/Steps/WarehousePackOrder.php diff --git a/app/Classes/Modules/OrderSteps/Processors/WarehouseReceivesOrder.php b/app/Classes/Modules/OrderSteps/Processors/Steps/WarehouseReceivesOrder.php similarity index 100% rename from app/Classes/Modules/OrderSteps/Processors/WarehouseReceivesOrder.php rename to app/Classes/Modules/OrderSteps/Processors/Steps/WarehouseReceivesOrder.php diff --git a/app/Classes/Modules/OrderSteps/Processors/WarehouseUnpackingOrder.php b/app/Classes/Modules/OrderSteps/Processors/Steps/WarehouseUnpackingOrder.php similarity index 100% rename from app/Classes/Modules/OrderSteps/Processors/WarehouseUnpackingOrder.php rename to app/Classes/Modules/OrderSteps/Processors/Steps/WarehouseUnpackingOrder.php diff --git a/app/Classes/Modules/Orders/Processors/UpdatesOrderCurrentStep.php b/app/Classes/Modules/Orders/Processors/UpdatesOrderCurrentStepProcessor.php similarity index 97% rename from app/Classes/Modules/Orders/Processors/UpdatesOrderCurrentStep.php rename to app/Classes/Modules/Orders/Processors/UpdatesOrderCurrentStepProcessor.php index 367c1f9b..ebc21727 100644 --- a/app/Classes/Modules/Orders/Processors/UpdatesOrderCurrentStep.php +++ b/app/Classes/Modules/Orders/Processors/UpdatesOrderCurrentStepProcessor.php @@ -11,7 +11,7 @@ use App\Classes\ValueObjects\Constants\OrderSteps; use App\Models\Order; use App\Models\OrderStep; -class UpdatesOrderCurrentStep +class UpdatesOrderCurrentStepProcessor { private $canUpdateCurrentStep;