From 95660069c92e073ca5e53d75909e18590d6b752d Mon Sep 17 00:00:00 2001 From: Fairuz Date: Sat, 17 Jul 2021 18:44:22 +0800 Subject: [PATCH] Order APIs & Unity services --- .../Processors/CreateOrderStepsProcessor.php | 2 +- .../GenerateOrderStepsProcessor.php | 69 +++++++++++++++++++ .../Processors/Steps/ConfirmsOrder.php | 4 +- .../Processors/UpdateOrderStepsProcessor.php | 33 ++++----- .../Services/CreatesManyOrderSteps.php | 30 ++++++++ .../OrderSteps/Services/CreatesOrderSteps.php | 23 ++++--- .../OrderSteps/Services/UpdatesOrderSteps.php | 8 +-- .../Validators/UpdateOrderStepValidation.php | 6 +- .../ControllersLogic/ConfirmOrderLogic.php | 32 +++++---- .../DataTransferObjects/OrderObject.php | 4 +- .../Processors/ConfirmOrderProcessor.php | 10 ++- .../UpdatesOrderCurrentStepProcessor.php | 4 +- .../Standards/Rules/CanConfirmOrder.php | 39 +++++++++++ .../Validators/ConfirmOrderValidation.php | 40 +++++++++++ .../GetContractObligationsProcessor.php | 24 +++++++ .../Modules/Unity/Services/GetAccessToken.php | 37 ++++++++++ .../Unity/Services/GetContractObligations.php | 31 +++++++++ .../ValueObjects/Constants/OrderEntity.php | 15 ++++ .../ValueObjects/Constants/OrderSteps.php | 18 ++--- .../Orders/ConfirmOrderController.php | 5 +- app/Models/OrderStep.php | 1 + config/unity.php | 42 +++++++++++ resources/views/swagger/json.blade.php | 4 +- 23 files changed, 403 insertions(+), 78 deletions(-) create mode 100644 app/Classes/Modules/OrderSteps/Processors/GenerateOrderStepsProcessor.php create mode 100644 app/Classes/Modules/OrderSteps/Services/CreatesManyOrderSteps.php create mode 100644 app/Classes/Modules/Orders/Standards/Rules/CanConfirmOrder.php create mode 100644 app/Classes/Modules/Orders/Standards/Validators/ConfirmOrderValidation.php create mode 100644 app/Classes/Modules/Unity/Processors/GetContractObligationsProcessor.php create mode 100644 app/Classes/Modules/Unity/Services/GetAccessToken.php create mode 100644 app/Classes/Modules/Unity/Services/GetContractObligations.php create mode 100644 app/Classes/ValueObjects/Constants/OrderEntity.php create mode 100644 config/unity.php diff --git a/app/Classes/Modules/OrderSteps/Processors/CreateOrderStepsProcessor.php b/app/Classes/Modules/OrderSteps/Processors/CreateOrderStepsProcessor.php index b45d528e..2f39e830 100644 --- a/app/Classes/Modules/OrderSteps/Processors/CreateOrderStepsProcessor.php +++ b/app/Classes/Modules/OrderSteps/Processors/CreateOrderStepsProcessor.php @@ -44,4 +44,4 @@ class CreateOrderStepsProcessor return $this->createsOrderSteps->execute($order_steps_object); } -} \ No newline at end of file +} diff --git a/app/Classes/Modules/OrderSteps/Processors/GenerateOrderStepsProcessor.php b/app/Classes/Modules/OrderSteps/Processors/GenerateOrderStepsProcessor.php new file mode 100644 index 00000000..97789148 --- /dev/null +++ b/app/Classes/Modules/OrderSteps/Processors/GenerateOrderStepsProcessor.php @@ -0,0 +1,69 @@ +updatesOrderCurrentStep = $updatesOrderCurrentStep; + $this->unityConfig = Config::get('unity'); + $this->createsManyOrderStep = $createsManyOrderStep; + $this->updateOrderStepProcessors = $updateOrderStepProcessors; + $this->getContractObligationsProcessor = $getContractObligationsProcessor; + } + + public function execute(Order $order){ + + $obligations = $this->getContractObligationsProcessor->execute(); + + foreach($obligations as $step){ + $orderSteps[] = new OrderStepsObject( + $order->id, + 1, + $step->name, + true, + $step->sequence, + 0, + 0, + null + ); + } + + $this->createsManyOrderStep->execute($order, $orderSteps); + + $this->updatesOrderCurrentStep->execute($order->id, OrderSteps::PACKING); + + $this->updateOrderStepProcessors->execute(OrderSteps::PROCESSING); + + } +} diff --git a/app/Classes/Modules/OrderSteps/Processors/Steps/ConfirmsOrder.php b/app/Classes/Modules/OrderSteps/Processors/Steps/ConfirmsOrder.php index 24ce20bc..0355e269 100644 --- a/app/Classes/Modules/OrderSteps/Processors/Steps/ConfirmsOrder.php +++ b/app/Classes/Modules/OrderSteps/Processors/Steps/ConfirmsOrder.php @@ -1,6 +1,6 @@ handler($this->orderId, $this->step); } -} \ No newline at end of file +} diff --git a/app/Classes/Modules/OrderSteps/Processors/UpdateOrderStepsProcessor.php b/app/Classes/Modules/OrderSteps/Processors/UpdateOrderStepsProcessor.php index ddbd0a58..40903d5d 100644 --- a/app/Classes/Modules/OrderSteps/Processors/UpdateOrderStepsProcessor.php +++ b/app/Classes/Modules/OrderSteps/Processors/UpdateOrderStepsProcessor.php @@ -4,10 +4,10 @@ namespace App\Classes\Modules\OrderSteps\Processors; use App\Classes\Modules\Orders\DataTransferObjects\OrderObject; use App\Classes\Modules\Orders\Processors\UpdatesOrderCurrentStepProcessor; -use App\Classes\Modules\Orders\Services\FetchesOrder; use App\Classes\Modules\OrderSteps\Services\FetchesOrderSteps; +use App\Classes\Modules\OrderSteps\Services\UpdatesOrderSteps; use App\Classes\Modules\Orders\Services\UpdatesCurrentStep; -use App\Classes\Modules\Orders\Standards\Rules\CanUpdateCurrentStep; +use App\Classes\Modules\OrderSteps\Standards\Rules\CanUpdateOrderStep; use App\Classes\Modules\OrderSteps\DataTransferObjects\OrderStepsObject; use App\Classes\ValueObjects\Constants\OrderStatus; use App\Classes\ValueObjects\Constants\OrderSteps; @@ -16,35 +16,28 @@ use App\Models\OrderStep; class UpdateOrderStepsProcessor { - private $canUpdateCurrentStep; + private $canUpdateOrderStep; - private $updatesOrderCurrentStep; - - private $fetchesOrder; + private $updatesOrderSteps; private $fetchesOrderSteps; - public function __construct(CanUpdateCurrentStep $canUpdateCurrentStep, FetchesOrder $fetchesOrder, FetchesOrderSteps $fetchesOrderSteps, UpdatesOrderCurrentStepProcessor $updatesOrderCurrentStep ) + public function __construct(CanUpdateOrderStep $canUpdateOrderStep, UpdatesOrderSteps $updatesOrderSteps, FetchesOrderSteps $fetchesOrderSteps ) { - $this->canUpdateCurrentStep = $canUpdateCurrentStep; - $this->updatesOrderCurrentStep = $updatesOrderCurrentStep; - $this->fetchesOrder = $fetchesOrder; + $this->canUpdateOrderStep = $canUpdateOrderStep; + $this->updatesOrderSteps = $updatesOrderSteps; $this->fetchesOrderSteps = $fetchesOrderSteps; } - public function execute(int $orderId, string $currentStep){ + public function execute(string $currentStep){ - $order_object = new OrderStepsObject($currentStep, 0, $currentStep, 0, 0, OrderStatus::PROCESSING, 0, null); + $orderStepsObject = new OrderStepsObject(0,0,$currentStep, 0, 0, 1, 1, null); - $this->canUpdateCurrentStep->passes($order_object); - - $order = $this->fetchesOrder->execute(['id'=>$order_object->getId()]); - - $order_steps = $this->fetchesOrderSteps->execute(['order_id'=>$order_object->getId(), 'status'=> OrderStatus::PROCESSING, 'order_by' => 'sequence', 'per_page' => 1]); - - $this->updatesOrderCurrentStep->execute($orderId, $currentStep); + $this->canUpdateOrderStep->passes($orderStepsObject); + $orderSteps = $this->fetchesOrderSteps->execute(['reference'=>$currentStep]); + $this->updatesOrderSteps->execute($orderSteps, $orderStepsObject); } -} \ No newline at end of file +} diff --git a/app/Classes/Modules/OrderSteps/Services/CreatesManyOrderSteps.php b/app/Classes/Modules/OrderSteps/Services/CreatesManyOrderSteps.php new file mode 100644 index 00000000..7771692d --- /dev/null +++ b/app/Classes/Modules/OrderSteps/Services/CreatesManyOrderSteps.php @@ -0,0 +1,30 @@ + $step->getOrderId(), + 'appointee_id' => $step->getAppointeeId(), + 'reference' => $step->getReference(), + 'primary' => $step->getPrimary(), + 'sequence' => $step->getSequence(), + 'status' => 0, + 'contract_status' => 0 + ]; + } + $order->orderSteps()->createMany($orderStepsModel); + + } +} diff --git a/app/Classes/Modules/OrderSteps/Services/CreatesOrderSteps.php b/app/Classes/Modules/OrderSteps/Services/CreatesOrderSteps.php index 7724b6b5..5f9443fc 100644 --- a/app/Classes/Modules/OrderSteps/Services/CreatesOrderSteps.php +++ b/app/Classes/Modules/OrderSteps/Services/CreatesOrderSteps.php @@ -5,22 +5,25 @@ namespace App\Classes\Modules\OrderSteps\Services; use App\Classes\General\Eloquent\AbstractUpdateRecord; use App\Classes\Modules\OrderSteps\DataTransferObjects\OrderStepsObject; use App\Models\OrderStep; +use App\Models\Order; class CreatesOrderSteps extends AbstractUpdateRecord { - public function execute(OrderStepsObject $object) { + public function execute(OrderStepsObject $orderSteps) { - $model = new OrderStep(); - $model->order_id = $object->getOrderId(); - $model->appointee_id = $object->getAppointeeId(); - $model->reference = $object->getReference(); - $model->primary = $object->getPrimary(); - $model->sequence = $object->getSequence(); - $model->status = $object->getStatus(); - $model->contract_status = $object->getContractStatus(); + $orderStepsModel = new OrderStep(); - return $this->handler($model); + $orderStepsModel->order_id = $orderSteps->getOrderId(); + $orderStepsModel->appointee_id = $orderSteps->getAppointeeId(); + $orderStepsModel->reference = $orderSteps->getReference(); + $orderStepsModel->primary = $orderSteps->getPrimary(); + $orderStepsModel->sequence = $orderSteps->getSequence(); + $orderStepsModel->status = 0; + $orderStepsModel->contract_status = 0; + $orderStepsModel->complete_date = null; + + return $this->handler($orderStepsModel); } } diff --git a/app/Classes/Modules/OrderSteps/Services/UpdatesOrderSteps.php b/app/Classes/Modules/OrderSteps/Services/UpdatesOrderSteps.php index f16ded56..9966e9d9 100644 --- a/app/Classes/Modules/OrderSteps/Services/UpdatesOrderSteps.php +++ b/app/Classes/Modules/OrderSteps/Services/UpdatesOrderSteps.php @@ -4,17 +4,13 @@ namespace App\Classes\Modules\OrderSteps\Services; use App\Classes\General\Eloquent\AbstractUpdateRecord; use App\Classes\Modules\OrderSteps\DataTransferObjects\OrderStepsObject; -use App\Models\Order; +use App\Models\OrderStep; class UpdatesOrderSteps extends AbstractUpdateRecord { - public function execute(Order $model, OrderStepsObject $object) { + public function execute(OrderStep $model, OrderStepsObject $object) { - $model->appointee_id = $object->getAppointeeId(); - $model->reference = $object->getReference(); - $model->primary = $object->getPrimary(); - $model->sequence = $object->getSequence(); $model->status = $object->getStatus(); $model->contract_status = $object->getContractStatus(); $model->complete_date = $object->getCompletedDate(); diff --git a/app/Classes/Modules/OrderSteps/Standards/Validators/UpdateOrderStepValidation.php b/app/Classes/Modules/OrderSteps/Standards/Validators/UpdateOrderStepValidation.php index b2ee8451..8e5ac322 100644 --- a/app/Classes/Modules/OrderSteps/Standards/Validators/UpdateOrderStepValidation.php +++ b/app/Classes/Modules/OrderSteps/Standards/Validators/UpdateOrderStepValidation.php @@ -15,7 +15,6 @@ class UpdateOrderStepValidation extends AbstractValidation { return [ 'id' => $object->getId(), - 'current_step' => $object->getCurrentStep(), ]; } @@ -25,10 +24,7 @@ class UpdateOrderStepValidation extends AbstractValidation */ protected function rules(?string $type = 'POST'): array { - return [ - 'id'=> 'required|numeric', - 'current_step'=> 'required', - ]; + return []; } /** diff --git a/app/Classes/Modules/Orders/ControllersLogic/ConfirmOrderLogic.php b/app/Classes/Modules/Orders/ControllersLogic/ConfirmOrderLogic.php index 47afc1e8..28acd2d3 100644 --- a/app/Classes/Modules/Orders/ControllersLogic/ConfirmOrderLogic.php +++ b/app/Classes/Modules/Orders/ControllersLogic/ConfirmOrderLogic.php @@ -5,41 +5,47 @@ namespace App\Classes\Modules\Orders\ControllersLogic; use App\Classes\General\Abstracts\AbstractControllerLogic; use App\Classes\Modules\Orders\DataTransferObjects\OrderObject; use App\Classes\Modules\Orders\Services\CreatesOrder; -use App\Classes\Modules\Orders\Standards\Rules\CanCreateOrder; +use App\Classes\Modules\Orders\Services\FetchesOrder; +use App\Classes\Modules\Orders\Standards\Rules\CanConfirmOrder; +use App\Classes\Modules\OrderSteps\Processors\GenerateOrderStepsProcessor; use App\Classes\ValueObjects\Constants\OrderStatus; use App\Classes\ValueObjects\Constants\OrderSteps; use App\Classes\ValueObjects\Constants\OrderType; use App\Http\Resources\OrderResource; use Illuminate\Http\Request; use Illuminate\Http\JsonResponse; +use Config; class ConfirmOrderLogic extends AbstractControllerLogic { + private $canConfirmOrder; - private $canCreateOrder; + private $generateOrderStepsProcessor; - private $createsOrder; - - public function __construct(CanCreateOrder $canCreateOrder, CreatesOrder $createsOrder) + public function __construct(CanConfirmOrder $canConfirmOrder, GenerateOrderStepsProcessor $generateOrderStepsProcessor, FetchesOrder $fetchesOrder) { - $this->canCreateOrder = $canCreateOrder; - $this->createsOrder = $createsOrder; + $this->canConfirmOrder = $canConfirmOrder; + $this->generateOrderStepsProcessor = $generateOrderStepsProcessor; + $this->fetchesOrder = $fetchesOrder; } protected function notification():array { return [ - 'title' => 'Created Order', - 'message' => 'You have successfully created a new Order' + 'title' => 'Confirm Order', + 'message' => 'Order confirmed' ]; } 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_object = new OrderObject(0,'','',0,0, '',$request->get('id')); - $order = $this->createsOrder->execute($order_object); + $this->canConfirmOrder->passes($order_object); + + $order = $this->fetchesOrder->execute(['id'=>$order_object->getId()]); + + $this->generateOrderStepsProcessor->execute($order); return $this->resourceResponse(new OrderResource($order)); } -} \ No newline at end of file +} diff --git a/app/Classes/Modules/Orders/DataTransferObjects/OrderObject.php b/app/Classes/Modules/Orders/DataTransferObjects/OrderObject.php index 194bcb88..21b5f733 100644 --- a/app/Classes/Modules/Orders/DataTransferObjects/OrderObject.php +++ b/app/Classes/Modules/Orders/DataTransferObjects/OrderObject.php @@ -21,7 +21,7 @@ class OrderObject implements DataTransferObject private $current_step; - public function __construct(int $company_module_id, string $reference, string $reference_contract, int $type, int $status, string $current_step, int $id=0) + public function __construct(int $company_module_id, ?string $reference, string $reference_contract, int $type, int $status, string $current_step, int $id=0) { $this->company_module_id = $company_module_id; $this->reference = $reference; @@ -71,4 +71,4 @@ class OrderObject implements DataTransferObject { $this->current_step = $step; } -} \ No newline at end of file +} diff --git a/app/Classes/Modules/Orders/Processors/ConfirmOrderProcessor.php b/app/Classes/Modules/Orders/Processors/ConfirmOrderProcessor.php index f061451b..74b50ed9 100644 --- a/app/Classes/Modules/Orders/Processors/ConfirmOrderProcessor.php +++ b/app/Classes/Modules/Orders/Processors/ConfirmOrderProcessor.php @@ -6,6 +6,7 @@ use App\Classes\Modules\Orders\DataTransferObjects\OrderObject; use App\Classes\Modules\Orders\Services\FetchesOrder; use App\Classes\Modules\OrderSteps\Services\FetchesOrderSteps; use App\Classes\Modules\Orders\Standards\Rules\CanUpdateCurrentStep; +use App\Classes\Modules\OrderSteps\Processors\UpdateOrderStepsProcessor; use App\Classes\ValueObjects\Constants\OrderStatus; use App\Classes\ValueObjects\Constants\OrderSteps; use App\Models\Order; @@ -21,12 +22,15 @@ class ConfirmOrderProcessor private $fetchesOrderSteps; - public function __construct(CanUpdateCurrentStep $canUpdateCurrentStep, FetchesOrder $fetchesOrder, FetchesOrderSteps $fetchesOrderSteps, UpdatesOrderCurrentStep $updatesCurrentStep) + private $updateOrderStepProcessors; + + public function __construct(CanUpdateCurrentStep $canUpdateCurrentStep, FetchesOrder $fetchesOrder, FetchesOrderSteps $fetchesOrderSteps, UpdatesOrderCurrentStep $updatesCurrentStep, UpdateOrderStepsProcessor $updateOrderStepProcessors) { $this->canUpdateCurrentStep = $canUpdateCurrentStep; $this->updatesCurrentStep = $updatesCurrentStep; $this->fetchesOrder = $fetchesOrder; $this->fetchesOrderSteps = $fetchesOrderSteps; + $this->updateOrderStepProcessors = $updateOrderStepProcessors; } public function execute(int $orderId, string $currentStep){ @@ -43,7 +47,7 @@ class ConfirmOrderProcessor $order = $this->updatesCurrentStep->execute($order, $order_object); - + $this->updateOrderStepProcessors->execute($currentStep); } -} \ No newline at end of file +} diff --git a/app/Classes/Modules/Orders/Processors/UpdatesOrderCurrentStepProcessor.php b/app/Classes/Modules/Orders/Processors/UpdatesOrderCurrentStepProcessor.php index a524ff24..8a5005e3 100644 --- a/app/Classes/Modules/Orders/Processors/UpdatesOrderCurrentStepProcessor.php +++ b/app/Classes/Modules/Orders/Processors/UpdatesOrderCurrentStepProcessor.php @@ -44,7 +44,5 @@ class UpdatesOrderCurrentStepProcessor $order = $this->updatesCurrentStep->execute($order, $order_object); - - } -} \ No newline at end of file +} diff --git a/app/Classes/Modules/Orders/Standards/Rules/CanConfirmOrder.php b/app/Classes/Modules/Orders/Standards/Rules/CanConfirmOrder.php new file mode 100644 index 00000000..20e5faf7 --- /dev/null +++ b/app/Classes/Modules/Orders/Standards/Rules/CanConfirmOrder.php @@ -0,0 +1,39 @@ +confirmOrderValidation = $confirmOrderValidation; + } + + /** + * @return bool + */ + protected function authorized(): bool + { + // TODO Set Authorization rules + return true; + } + + protected function validators($object): bool + { + return $this->confirmOrderValidation->validate($object); + } + + /** + * @param CompanyObject $object + * @return bool + */ + protected function criteria($object): bool + { + return true; + } +} diff --git a/app/Classes/Modules/Orders/Standards/Validators/ConfirmOrderValidation.php b/app/Classes/Modules/Orders/Standards/Validators/ConfirmOrderValidation.php new file mode 100644 index 00000000..21c22e1b --- /dev/null +++ b/app/Classes/Modules/Orders/Standards/Validators/ConfirmOrderValidation.php @@ -0,0 +1,40 @@ + $object->getId(), + ]; + } + + /** + * @param string $type + * @return array + */ + protected function rules(?string $type = 'POST'): array + { + + return [ + 'id' => 'required|exists:orders,id' + ]; + } + + /** + * @return array + */ + protected function messages(): array + { + return []; + } +} diff --git a/app/Classes/Modules/Unity/Processors/GetContractObligationsProcessor.php b/app/Classes/Modules/Unity/Processors/GetContractObligationsProcessor.php new file mode 100644 index 00000000..337b3d7e --- /dev/null +++ b/app/Classes/Modules/Unity/Processors/GetContractObligationsProcessor.php @@ -0,0 +1,24 @@ +unityConfig = Config::get('unity'); + $this->getContractObligations = $getContractObligations; + } + + public function execute(){ + return $this->getContractObligations->execute(); + } +} diff --git a/app/Classes/Modules/Unity/Services/GetAccessToken.php b/app/Classes/Modules/Unity/Services/GetAccessToken.php new file mode 100644 index 00000000..353389ed --- /dev/null +++ b/app/Classes/Modules/Unity/Services/GetAccessToken.php @@ -0,0 +1,37 @@ +unityConfig = Config::get('unity'); + } + + public function execute(){ + + //TODO: Cache access token base on expiry for login version + + $accesToken=''; + if($this->unityConfig['default_auth']=='login'){ + $loginDetails = $this->unityConfig['auth']['login']; + $response = Http::post($this->unityConfig['url'].$loginDetails['endpoint'], [ + 'email' => $loginDetails['username'], + 'password' => $loginDetails['password'], + ])->object(); + $accesToken = $response->access_token; + }else{ + $accesToken = $this->unityConfig['auth']['api_key']['key']; + } + + //TODO: Throw error if access token not available + + return $accesToken; + } +} diff --git a/app/Classes/Modules/Unity/Services/GetContractObligations.php b/app/Classes/Modules/Unity/Services/GetContractObligations.php new file mode 100644 index 00000000..480fee3f --- /dev/null +++ b/app/Classes/Modules/Unity/Services/GetContractObligations.php @@ -0,0 +1,31 @@ +unityConfig = Config::get('unity'); + $this->getAccessToken = $getAccessToken; + } + + public function execute(){ + + $accesToken=$this->getAccessToken->execute(); + + $response = Http::withToken($accesToken)->get($this->unityConfig['url'].$this->unityConfig['steps_endpoint'])->object(); + $orderSteps = []; + + return (isset($response->data)) ? $response->data : []; + + } +} diff --git a/app/Classes/ValueObjects/Constants/OrderEntity.php b/app/Classes/ValueObjects/Constants/OrderEntity.php new file mode 100644 index 00000000..6151e4ff --- /dev/null +++ b/app/Classes/ValueObjects/Constants/OrderEntity.php @@ -0,0 +1,15 @@ + DeliverOrder::class, ]; */ -} \ No newline at end of file +} diff --git a/app/Http/Controllers/Orders/ConfirmOrderController.php b/app/Http/Controllers/Orders/ConfirmOrderController.php index f655ce40..cc6542ff 100644 --- a/app/Http/Controllers/Orders/ConfirmOrderController.php +++ b/app/Http/Controllers/Orders/ConfirmOrderController.php @@ -13,8 +13,9 @@ class ConfirmOrderController * @param ConfirmOrderLogic $logic * @return JsonResponse */ - public function confirm(Request $request, ConfirmOrderLogic $logic): JsonResponse + public function confirm(int $id, Request $request, ConfirmOrderLogic $logic): JsonResponse { + $request->merge(['id' => $id]); return $logic->execute($request); } -} \ No newline at end of file +} diff --git a/app/Models/OrderStep.php b/app/Models/OrderStep.php index db369575..ceedfee5 100644 --- a/app/Models/OrderStep.php +++ b/app/Models/OrderStep.php @@ -12,4 +12,5 @@ class OrderStep extends AbstractModel protected $dates = ['deleted_at']; + protected $fillable = ['order_id','appointee_id','reference','primary','sequence','status','contract_status','complete_date']; } diff --git a/config/unity.php b/config/unity.php new file mode 100644 index 00000000..7d3ea452 --- /dev/null +++ b/config/unity.php @@ -0,0 +1,42 @@ + env('UNITY_API_URL', 'https://dev.unity.izyim.com/user-backsys/api/'), + + 'auth' => [ + + 'api_key' => [ + 'key' => env('UNITY_API_KEY', ''), + ], + + 'login' => [ + 'username' => env('UNITY_LOGIN_USERNAME','one@izyim.com'), + 'password' => env('UNITY_LOGIN_PASSWORD','pass123'), + 'endpoint' => env('UNITY_LOGIN_ENDPOINT','login') + ], + + ], + + 'steps_endpoint' => env('UNITY_LOGIN_ENDPOINT','contract-template-obligation/list'), + + 'default_auth' => env('UNITY_AUTH','login'), + + 'on_error_email' => env('UNITY_ON_ERROR_EMAIL','dev@shipping.com,dev@unity.com'), + + 'contract_template_id' => env('UNITY_CONTRACT_TEMPLATE_ID', 102), + + 'contract_template_cache' => env('UNITY_CONTRACT_TEMPLATE_CACHE','60'), + + 'entity' => [ + 'xxx' => App\Classes\ValueObjects\Constants\OrderEntity::SUPPLIER, + 'zzz' => App\Classes\ValueObjects\Constants\OrderEntity::WAREHOUSE_YIWU, + 'vvv' => App\Classes\ValueObjects\Constants\OrderEntity::WAREHOUSE_GUANG_ZHOU, + 'wwww' => App\Classes\ValueObjects\Constants\OrderEntity::SUPPLIER, + ], + + 'step_processor' => [ + App\Classes\ValueObjects\Constants\OrderSteps::PACKING => App\Classes\Modules\OrderSteps\Processors\Steps\Packing::class, + ], + +]; diff --git a/resources/views/swagger/json.blade.php b/resources/views/swagger/json.blade.php index 95a05ae6..36b0abd8 100644 --- a/resources/views/swagger/json.blade.php +++ b/resources/views/swagger/json.blade.php @@ -93,7 +93,7 @@ } } }, -"/order/{id}/confirm": { +"/order/confirm/{id}": { "put": { "tags": [ "Order" @@ -101,7 +101,7 @@ "produces": [ "application/json" ], -"operationId": "createOrder", +"operationId": "confirmOrder", "summary": "Admin confirms order", "description": "", "parameters": [