From 43a9e0ca036ec5aeb465bb246195222577500d61 Mon Sep 17 00:00:00 2001 From: Omair Saleh Date: Sat, 18 May 2019 12:14:31 +0800 Subject: [PATCH] large commit --- .../Interfaces/Order/OrderRequirement.php | 12 -- .../Orders/ConfirmOrderLogic.php | 8 +- .../Orders/UpdateOrderStepLogic.php | 10 +- .../DataTransferObjects/ReceiveNoteObject.php | 17 +- .../Orders/DataTransferObjects/StepObject.php | 30 +-- .../Orders/Processors/ConfirmsOrder.php | 68 +++++++ .../Orders/Processors/DeliverOrder.php | 39 ++++ .../Modules/Orders/Processors/ShipOrder.php | 38 ++++ .../Orders/Processors/StepProcessMapper.php | 89 +++++++++ .../Processors/WarehouseArrivalOrder.php | 38 ++++ .../Orders/Processors/WarehousePackOrder.php | 46 +++++ .../Processors/WarehouseReceivesOrder.php | 54 ++++++ .../Processors/WarehouseUnpackingOrder.php | 38 ++++ .../Modules/Orders/Services/CreatesOrder.php | 4 + .../Orders/Services/CreatesPackingList.php | 15 -- .../Orders/Services/ListsOrderHistory.php | 37 ++-- .../Orders/Services/ProcessesOrderStep.php | 63 ------- .../Services/Processors/ConfirmsOrder.php | 79 -------- .../Processors/WarehousePackingOrder.php | 33 ---- .../Processors/WarehouseReceivesOrder.php | 33 ---- .../{ => ReceiveNote}/CreatesReceiveNote.php | 12 +- .../Orders/Services/SetsOrderWarehouse.php | 5 +- .../{ => Steps}/CompletesOrderStep.php | 18 +- .../{ => Steps}/CreatesOrderSteps.php | 7 +- .../Steps/GenerateOrderSteps.php | 34 +++- .../{ => Steps}/UpdatesOrderCurrentStep.php | 25 +-- .../Services/Steps/UpdatesOrderSteps.php | 30 +++ .../Orders/Services/UpdatesOrderSteps.php | 56 ------ .../Orders/Steps/AbstractOrderStep.php | 76 -------- .../Modules/Orders/Steps/OrderStep.php | 54 ------ .../Modules/Orders/Steps/OrderStepUpdate.php | 23 --- .../Modules/Orders/Steps/ProcessStep.php | 15 -- .../Processors/AbstractOrderRequirement.php | 63 ------- .../Orders/Steps/Processors/Delivery.php | 10 - .../Steps/Processors/OrderProcessing.php | 10 - .../Orders/Steps/Processors/Shipping.php | 10 - .../Steps/Processors/SupplierPacking.php | 10 - .../Validation/ReceiveNoteValidation.php | 17 -- .../Steps/Processors/WarehouseArrival.php | 10 - .../Steps/Processors/WarehousePacking.php | 22 --- .../Steps/Processors/WarehouseReceive.php | 24 --- .../Steps/Processors/WarehouseUnpacking.php | 10 - .../Modules/Orders/Steps/StepManager.php | 64 ------- .../ValueObjects/Constants/OrderSteps.php | 17 ++ .../Companies/CompanyController.php | 4 +- .../Orders/BulkReceiveNotesController.php | 27 +++ .../Orders/ListOrderController.php | 7 - .../Controllers/Orders/OrderController.php | 11 +- .../Orders/UpdateOrderStepController.php | 7 +- app/Http/Resources/Order.php | 3 + app/Models/Order.php | 2 +- app/Models/OrderStep.php | 2 +- app/Traits/updatesStep.php | 27 +++ ...18_09_08_072451_create_companies_table.php | 3 +- .../2018_11_26_145701_create_orders_table.php | 1 + ..._11_26_150411_create_order_steps_table.php | 1 + ...1_27_070848_create_receive_notes_table.php | 1 - database/seeds/DatabaseSeeder.php | 6 +- .../{vue/constant => js}/notification.js | 0 resources/assets/js/scripts.js | 1 + resources/assets/sass/modules/_layout.scss | 38 ++++ resources/assets/vue/app.js | 30 ++- .../elements/CompanyProfileComponenet.vue | 42 ++--- .../elements/CompanySummaryComponenet.vue | 11 +- .../forms/AddressBookFormComponent.vue | 2 +- .../company/forms/CompanyFormComponent.vue | 2 +- .../contact/forms/ContactFormComponent.vue | 2 +- .../form_elements/SelectComponent.vue | 11 +- .../elements/CompleteOrderComponenet.vue | 10 - .../order/elements/OrderActionComponenet.vue | 75 ++++++++ .../order/elements/OrderComponenet.vue | 122 +----------- .../order/elements/OrderHeaderComponenet.vue | 58 ++++++ .../order/elements/OrderHistoryComponenet.vue | 74 ++++++++ .../order/elements/OrderSelectComponent.vue | 77 ++++++++ .../order/elements/OrdersProfileComponent.vue | 43 +++++ .../{ => steps}/ArrivalStepComponenet.vue | 2 +- .../{ => steps}/ConfirmOrderComponent.vue | 2 +- .../{ => steps}/DeliveryStepComponenet.vue | 2 +- .../{ => steps}/PackingStepComponenet.vue | 15 +- .../{ => steps}/ReceiveStepComponenet.vue | 26 ++- .../{ => steps}/ShippingStepComponenet.vue | 2 +- .../SupplierPackingStepComponenet.vue | 2 +- .../{ => steps}/UnpackingStepComponenet.vue | 2 +- .../order/forms/AddonOrderFormComponent.vue | 158 ++++++++++++++++ .../order/forms/OrderFormComponent.vue | 2 +- .../WarehouseReceiveNoteFormComponent.vue | 174 ++++++++++++++++++ ...Componenet.vue => OrdersListComponent.vue} | 0 .../order/lists/OrdersSelectListComponent.vue | 92 +++++++++ .../elements/WarehouseProfileComponenet.vue | 8 + .../forms/WarehouseFormComponent.vue | 2 +- .../views/pages/orders/profile.blade.php | 78 +------- .../views/pages/orders/receive_note.blade.php | 27 +++ routes/api.php | 8 +- routes/web.php | 8 +- 94 files changed, 1553 insertions(+), 1130 deletions(-) delete mode 100644 app/Classes/Interfaces/Order/OrderRequirement.php create mode 100644 app/Classes/Modules/Orders/Processors/ConfirmsOrder.php create mode 100644 app/Classes/Modules/Orders/Processors/DeliverOrder.php create mode 100644 app/Classes/Modules/Orders/Processors/ShipOrder.php create mode 100644 app/Classes/Modules/Orders/Processors/StepProcessMapper.php create mode 100644 app/Classes/Modules/Orders/Processors/WarehouseArrivalOrder.php create mode 100644 app/Classes/Modules/Orders/Processors/WarehousePackOrder.php create mode 100644 app/Classes/Modules/Orders/Processors/WarehouseReceivesOrder.php create mode 100644 app/Classes/Modules/Orders/Processors/WarehouseUnpackingOrder.php delete mode 100644 app/Classes/Modules/Orders/Services/CreatesPackingList.php delete mode 100644 app/Classes/Modules/Orders/Services/ProcessesOrderStep.php delete mode 100644 app/Classes/Modules/Orders/Services/Processors/ConfirmsOrder.php delete mode 100644 app/Classes/Modules/Orders/Services/Processors/WarehousePackingOrder.php delete mode 100644 app/Classes/Modules/Orders/Services/Processors/WarehouseReceivesOrder.php rename app/Classes/Modules/Orders/Services/{ => ReceiveNote}/CreatesReceiveNote.php (63%) rename app/Classes/Modules/Orders/Services/{ => Steps}/CompletesOrderStep.php (60%) rename app/Classes/Modules/Orders/Services/{ => Steps}/CreatesOrderSteps.php (84%) rename app/Classes/Modules/Orders/{ => Services}/Steps/GenerateOrderSteps.php (61%) rename app/Classes/Modules/Orders/Services/{ => Steps}/UpdatesOrderCurrentStep.php (53%) create mode 100644 app/Classes/Modules/Orders/Services/Steps/UpdatesOrderSteps.php delete mode 100644 app/Classes/Modules/Orders/Services/UpdatesOrderSteps.php delete mode 100644 app/Classes/Modules/Orders/Steps/AbstractOrderStep.php delete mode 100644 app/Classes/Modules/Orders/Steps/OrderStep.php delete mode 100644 app/Classes/Modules/Orders/Steps/OrderStepUpdate.php delete mode 100644 app/Classes/Modules/Orders/Steps/ProcessStep.php delete mode 100644 app/Classes/Modules/Orders/Steps/Processors/AbstractOrderRequirement.php delete mode 100644 app/Classes/Modules/Orders/Steps/Processors/Delivery.php delete mode 100644 app/Classes/Modules/Orders/Steps/Processors/OrderProcessing.php delete mode 100644 app/Classes/Modules/Orders/Steps/Processors/Shipping.php delete mode 100644 app/Classes/Modules/Orders/Steps/Processors/SupplierPacking.php delete mode 100644 app/Classes/Modules/Orders/Steps/Processors/Validation/ReceiveNoteValidation.php delete mode 100644 app/Classes/Modules/Orders/Steps/Processors/WarehouseArrival.php delete mode 100644 app/Classes/Modules/Orders/Steps/Processors/WarehousePacking.php delete mode 100644 app/Classes/Modules/Orders/Steps/Processors/WarehouseReceive.php delete mode 100644 app/Classes/Modules/Orders/Steps/Processors/WarehouseUnpacking.php delete mode 100644 app/Classes/Modules/Orders/Steps/StepManager.php create mode 100644 app/Http/Controllers/Orders/BulkReceiveNotesController.php create mode 100644 app/Traits/updatesStep.php rename resources/assets/{vue/constant => js}/notification.js (100%) delete mode 100644 resources/assets/vue/components/order/elements/CompleteOrderComponenet.vue create mode 100644 resources/assets/vue/components/order/elements/OrderActionComponenet.vue create mode 100644 resources/assets/vue/components/order/elements/OrderHeaderComponenet.vue create mode 100644 resources/assets/vue/components/order/elements/OrderHistoryComponenet.vue create mode 100644 resources/assets/vue/components/order/elements/OrderSelectComponent.vue create mode 100644 resources/assets/vue/components/order/elements/OrdersProfileComponent.vue rename resources/assets/vue/components/order/elements/{ => steps}/ArrivalStepComponenet.vue (96%) rename resources/assets/vue/components/order/elements/{ => steps}/ConfirmOrderComponent.vue (98%) rename resources/assets/vue/components/order/elements/{ => steps}/DeliveryStepComponenet.vue (96%) rename resources/assets/vue/components/order/elements/{ => steps}/PackingStepComponenet.vue (95%) rename resources/assets/vue/components/order/elements/{ => steps}/ReceiveStepComponenet.vue (87%) rename resources/assets/vue/components/order/elements/{ => steps}/ShippingStepComponenet.vue (99%) rename resources/assets/vue/components/order/elements/{ => steps}/SupplierPackingStepComponenet.vue (96%) rename resources/assets/vue/components/order/elements/{ => steps}/UnpackingStepComponenet.vue (96%) create mode 100644 resources/assets/vue/components/order/forms/AddonOrderFormComponent.vue create mode 100644 resources/assets/vue/components/order/forms/WarehouseReceiveNoteFormComponent.vue rename resources/assets/vue/components/order/lists/{OrdersListComponenet.vue => OrdersListComponent.vue} (100%) create mode 100644 resources/assets/vue/components/order/lists/OrdersSelectListComponent.vue create mode 100644 resources/views/pages/orders/receive_note.blade.php diff --git a/app/Classes/Interfaces/Order/OrderRequirement.php b/app/Classes/Interfaces/Order/OrderRequirement.php deleted file mode 100644 index 61083d1..0000000 --- a/app/Classes/Interfaces/Order/OrderRequirement.php +++ /dev/null @@ -1,12 +0,0 @@ -repository->findOrFail($orderId); $orderObject = new OrderObject($orderId); - - $stepObject = new StepObject($repository->current_step); + $stepObject = new StepObject($repository->current_step, $request->input('complete_date')); return $this->updateOrderSteps->execute($orderObject, $stepObject, $request); diff --git a/app/Classes/Modules/Orders/DataTransferObjects/ReceiveNoteObject.php b/app/Classes/Modules/Orders/DataTransferObjects/ReceiveNoteObject.php index 9e51980..8c1b181 100644 --- a/app/Classes/Modules/Orders/DataTransferObjects/ReceiveNoteObject.php +++ b/app/Classes/Modules/Orders/DataTransferObjects/ReceiveNoteObject.php @@ -11,18 +11,13 @@ class ReceiveNoteObject /** @var string */ private $trackingNumber; - /** @var string */ - private $date; - /** * ReceiveNoteObject constructor. * @param string $trackingNumber - * @param string $date */ - public function __construct(string $trackingNumber, string $date) + public function __construct(string $trackingNumber) { $this->trackingNumber = $trackingNumber; - $this->date = $date; } /** @@ -33,15 +28,5 @@ class ReceiveNoteObject return $this->trackingNumber; } - /** - * @return Carbon - */ - public function getDate(): Carbon - { - return Carbon::parse($this->date); - } - - - } \ No newline at end of file diff --git a/app/Classes/Modules/Orders/DataTransferObjects/StepObject.php b/app/Classes/Modules/Orders/DataTransferObjects/StepObject.php index 6adc58a..0161b77 100644 --- a/app/Classes/Modules/Orders/DataTransferObjects/StepObject.php +++ b/app/Classes/Modules/Orders/DataTransferObjects/StepObject.php @@ -3,29 +3,27 @@ namespace App\Classes\Modules\Orders\DataTransferObjects; +use Carbon\Carbon; + class StepObject { /** @var string */ protected $referenceId; - /** @var bool */ - protected $isPrimary; - /** @var float */ - protected $sequence; + /** @var null|string */ + protected $complete_date; /** * StepObject constructor. * @param string $referenceId - * @param bool $isPrimary - * @param float $sequence + * @param null|string $complete_date */ - public function __construct(string $referenceId, bool $isPrimary = false, float $sequence = 0) + public function __construct(string $referenceId, ?string $complete_date = null) { $this->referenceId = $referenceId; - $this->isPrimary = $isPrimary; - $this->sequence = $sequence; + $this->complete_date = $complete_date; } /** @@ -37,19 +35,11 @@ class StepObject } /** - * @return bool + * @return Carbon */ - public function isPrimary(): bool + public function getCompleteDate(): Carbon { - return $this->isPrimary; - } - - /** - * @return float - */ - public function getSequence(): float - { - return $this->sequence; + return $this->complete_date ? Carbon::parse($this->complete_date) : Carbon::now(); } diff --git a/app/Classes/Modules/Orders/Processors/ConfirmsOrder.php b/app/Classes/Modules/Orders/Processors/ConfirmsOrder.php new file mode 100644 index 0000000..759d76a --- /dev/null +++ b/app/Classes/Modules/Orders/Processors/ConfirmsOrder.php @@ -0,0 +1,68 @@ +setOrderWarehouse = new SetsOrderWarehouse(); + $this->generateOrderSteps = new GenerateOrderSteps(); + } + + + /** + * @param OrderObject $order + * @param StepObject $step + * @param int $warehouseId + * @return JsonResponse + * @throws InternalServerErrorException + */ + public function execute(OrderObject $order, StepObject $step, ?int $warehouseId = null){ + + try { + + if($warehouseId){ + $order->setWarehouseId($warehouseId); + $this->setOrderWarehouse->execute($order); + } + + $this->generateOrderSteps->execute($order); + + $this->completeStep($order, $step); + + return new JsonResponse(null, HttpStatus::RESOURCE_CREATED); + + } catch (\Exception $exception){ + + throw new InternalServerErrorException("Failed to update order step because {$exception->getMessage()}"); + + } + + + } + +} \ No newline at end of file diff --git a/app/Classes/Modules/Orders/Processors/DeliverOrder.php b/app/Classes/Modules/Orders/Processors/DeliverOrder.php new file mode 100644 index 0000000..a78b9e4 --- /dev/null +++ b/app/Classes/Modules/Orders/Processors/DeliverOrder.php @@ -0,0 +1,39 @@ +completeStep($order, $step); + return new JsonResponse(null, HttpStatus::REQUEST_ACCEPTED); + + } catch (\Exception $exception) { + throw new InternalServerErrorException("Failed to update order step because {$exception->getMessage()}"); + } + + } + + +} \ No newline at end of file diff --git a/app/Classes/Modules/Orders/Processors/ShipOrder.php b/app/Classes/Modules/Orders/Processors/ShipOrder.php new file mode 100644 index 0000000..8d66ec1 --- /dev/null +++ b/app/Classes/Modules/Orders/Processors/ShipOrder.php @@ -0,0 +1,38 @@ +completeStep($order, $step); + return new JsonResponse(null, HttpStatus::REQUEST_ACCEPTED); + + } catch (\Exception $exception) { + throw new InternalServerErrorException("Failed to update order step because {$exception->getMessage()}"); + } + + } + + +} \ No newline at end of file diff --git a/app/Classes/Modules/Orders/Processors/StepProcessMapper.php b/app/Classes/Modules/Orders/Processors/StepProcessMapper.php new file mode 100644 index 0000000..1db36ee --- /dev/null +++ b/app/Classes/Modules/Orders/Processors/StepProcessMapper.php @@ -0,0 +1,89 @@ +getParameters(); + + foreach ($parameters as $parameter){ + + if(!$parameter->getClass()){ + $arguments[] = self::mapVariables($parameter->getType(), $valuesArray[Str::snake($parameter->getName())]?? null); + continue; + } + + $className = $parameter->getClass()->getName(); + + if(!in_array($className, [OrderObject::class, StepObject::class, Carbon::class])){ + $arguments[] = self::mapClassObjects($className, $valuesArray); + } + } + + return $arguments; + } + + /** + * @param string $type + * @param $value + * @return bool|float|int|string + */ + private function mapVariables(string $type, $value){ + + if($value === null){ + return null; + } + + switch ($type){ + case 'float': + return (float) $value; + break; + case 'int': + case 'integer': + return (int) $value; + break; + case 'bool': + case 'boolean': + return (bool) $value; + break; + default: + return (string) $value; + } + } + + + /** + * @param string $class + * @param array $valuesArray + * @return mixed + * @throws \ReflectionException + */ + private function mapClassObjects(string $class, array $valuesArray){ + + $reflection = new \ReflectionClass($class); + $properties = $reflection->getProperties(); + + return new $class(...array_map(function ($property) use ($valuesArray) { + return $valuesArray[Str::snake($property->getName())] ?? null; + }, $properties)); + + } + +} \ No newline at end of file diff --git a/app/Classes/Modules/Orders/Processors/WarehouseArrivalOrder.php b/app/Classes/Modules/Orders/Processors/WarehouseArrivalOrder.php new file mode 100644 index 0000000..3fa1ed7 --- /dev/null +++ b/app/Classes/Modules/Orders/Processors/WarehouseArrivalOrder.php @@ -0,0 +1,38 @@ +completeStep($order, $step); + return new JsonResponse(null, HttpStatus::REQUEST_ACCEPTED); + + } catch (\Exception $exception) { + throw new InternalServerErrorException("Failed to update order step because {$exception->getMessage()}"); + } + + } + + +} \ No newline at end of file diff --git a/app/Classes/Modules/Orders/Processors/WarehousePackOrder.php b/app/Classes/Modules/Orders/Processors/WarehousePackOrder.php new file mode 100644 index 0000000..689d4d5 --- /dev/null +++ b/app/Classes/Modules/Orders/Processors/WarehousePackOrder.php @@ -0,0 +1,46 @@ +getOrderId())->firstOrFail(); + + if($packingList->confirmed) { + + $this->completeStep($order, $step); + + return new JsonResponse(null, HttpStatus::REQUEST_ACCEPTED); + } + + return new JsonResponse(['message' => 'Failed to update order step because packing list is in complete'], HttpStatus::VALIDATION_FAILED); + + } catch (\Exception $exception) { + throw new InternalServerErrorException("Failed to update order step because {$exception->getMessage()}"); + } + + } + + +} \ No newline at end of file diff --git a/app/Classes/Modules/Orders/Processors/WarehouseReceivesOrder.php b/app/Classes/Modules/Orders/Processors/WarehouseReceivesOrder.php new file mode 100644 index 0000000..b68a464 --- /dev/null +++ b/app/Classes/Modules/Orders/Processors/WarehouseReceivesOrder.php @@ -0,0 +1,54 @@ +createsReceiveNote = new CreatesReceiveNote(); + } + + /** + * @param OrderObject $order + * @param StepObject $step + * @param ReceiveNoteObject $object + * @return JsonResponse + * @throws InternalServerErrorException + */ + public function execute(OrderObject $order, StepObject $step, ReceiveNoteObject $object){ + try { + + $this->createsReceiveNote->execute($order, $object); + + $this->completeStep($order, $step); + + return new JsonResponse(null, HttpStatus::RESOURCE_CREATED); + + } catch (\Exception $exception){ + throw new InternalServerErrorException("Failed to update order step because {$exception->getMessage()}"); + } + + + } + +} \ No newline at end of file diff --git a/app/Classes/Modules/Orders/Processors/WarehouseUnpackingOrder.php b/app/Classes/Modules/Orders/Processors/WarehouseUnpackingOrder.php new file mode 100644 index 0000000..087db4a --- /dev/null +++ b/app/Classes/Modules/Orders/Processors/WarehouseUnpackingOrder.php @@ -0,0 +1,38 @@ +completeStep($order, $step); + return new JsonResponse(null, HttpStatus::REQUEST_ACCEPTED); + + } catch (\Exception $exception) { + throw new InternalServerErrorException("Failed to update order step because {$exception->getMessage()}"); + } + + } + + +} \ No newline at end of file diff --git a/app/Classes/Modules/Orders/Services/CreatesOrder.php b/app/Classes/Modules/Orders/Services/CreatesOrder.php index 916392b..4f24759 100644 --- a/app/Classes/Modules/Orders/Services/CreatesOrder.php +++ b/app/Classes/Modules/Orders/Services/CreatesOrder.php @@ -6,6 +6,7 @@ namespace App\Classes\Modules\Orders\Services; use App\Classes\Constants; use App\Classes\Modules\Accounts\Exceptions\CannotCreateOrderException; use App\Classes\Modules\Orders\DataTransferObjects\OrderObject; +use App\Models\AddressBook; use App\Models\Order; class CreatesOrder @@ -32,8 +33,11 @@ class CreatesOrder try { + $address = AddressBook::where('company_id', $order->getCompanyId()) + ->where('default', true)->firstOrFail(); $this->repository->company_id = $order->getCompanyId(); $this->repository->marking = $order->getOrderId(); + $this->repository->address_id = $address->id; $this->repository->current_step = Constants::ORDER_PROCESSING_STEP; $this->repository->save(); diff --git a/app/Classes/Modules/Orders/Services/CreatesPackingList.php b/app/Classes/Modules/Orders/Services/CreatesPackingList.php deleted file mode 100644 index 9e43c89..0000000 --- a/app/Classes/Modules/Orders/Services/CreatesPackingList.php +++ /dev/null @@ -1,15 +0,0 @@ -push(['date' => $createdAt->format('d-m-Y H:i'), 'description' => 'Order number has been created']); + $history->push(['date' => $createdAt->format('d-m-Y'), 'description' => 'Order number has been created']); foreach ($orderSteps as $step){ + $completeDate = Carbon::parse($step->complete_date)->format('d-m-Y'); switch ($step->reference_id){ case Constants::ORDER_PROCESSING_STEP: if($order->warehouse_id){ - $history->push(['date' => $step->updated_at->format('d-m-Y H:i'), 'description' => Warehouse::find($order->warehouse_id)->first()->name.' confirmed as your order\'s warehouse']); + $history->push(['date' => $completeDate, 'description' => Warehouse::find($order->warehouse_id)->first()->name.' confirmed as your order\'s warehouse']); } break; case Constants::ORDER_NO_WAREHOUSE_PENDING_SUPPLIER: - $history->push(['date' => $step->updated_at->format('d-m-Y H:i'), 'description' => 'Your Order has been loaded into container']); + $history->push(['date' => $completeDate, 'description' => 'Your Order has been loaded into container']); break; case Constants::ORDER_WAREHOUSE_RECEIVING_STEP: $warehouse = Warehouse::find($order->warehouse_id)->first(); - $history->push(['date' => $step->updated_at->format('d-m-Y H:i'), 'description' => 'Arrived at '.$warehouse ? $warehouse->name : null.' warehouse in china on: ['.Carbon::parse($order->receiveNotes()->firstOrFail()->receive_date)->format('d-m-Y').']']); + $history->push(['date' => $completeDate, 'description' => 'Arrived at '. $warehouse->name .' warehouse in china']); break; case Constants::ORDER_WAREHOUSE_PACKING_STEP: $packages = $order->packingLists()->firstOrFail()->packages()->selectRaw(DB::raw('((width/100) * (height/100) * (length/100)) * quantity as cbm, quantity'))->get(); - $history->push(['date' => $step->updated_at->format('d-m-Y H:i'), 'description' => '['.$packages->sum('quantity').' Packages, '.number_format((float)$packages->sum('cbm'), 2, '.', '').' CBM] Your order has been loaded into container']); - $history->push(['date' => $step->updated_at->format('d-m-Y H:i'), 'description' => 'Invoice has been issued, waiting for shipping payment']); + $history->push(['date' => $completeDate, 'description' => '['.$packages->sum('quantity').' Packages, '.number_format((float)$packages->sum('cbm'), 2, '.', '').' CBM] Your order has been loaded into container']); + $history->push(['date' => $completeDate, 'description' => 'Invoice has been issued, waiting for shipping payment']); break; case Constants::ORDER_SHIPPING_STEP: $shippingArrangement = $order->shippingArrangement()->first(); @@ -53,26 +54,26 @@ class ListsOrderHistory if($schedule->status === 2){ $customIssue = CustomIssues::where('schedule_id', $schedule->id)->first(); if($customIssue !== null){ - $history->push(['date' => $step->updated_at->format('d-m-Y H:i'), 'description' => '[ETD: '.$schedule->ETD.', ETA: '.$schedule->ETA.'] Shipping Schedule failed due to: '.$customIssue->remark]); + $history->push(['date' => $completeDate, 'description' => '[ETD: '.$schedule->ETD.', ETA: '.$schedule->ETA.'] Shipping Schedule failed due to: '.$customIssue->remark]); } else { - $history->push(['date' => $step->updated_at->format('d-m-Y H:i'), 'description' => '[ETD: '.$schedule->ETD.', ETA: '.$schedule->ETA.'] Shipping Schedule failed']); + $history->push(['date' => $completeDate, 'description' => '[ETD: '.$schedule->ETD.', ETA: '.$schedule->ETA.'] Shipping Schedule failed']); } } else { - $history->push(['date' => $step->updated_at->format('d-m-Y H:i'), 'description' => '[ETD: '.$schedule->ETD.', ETA: '.$schedule->ETA.'] Your Order has been scheduled for shipping ']); + $history->push(['date' => $completeDate, 'description' => '[ETD: '.$schedule->ETD.', ETA: '.$schedule->ETA.'] Your Order has been scheduled for shipping ']); } } } - $history->push(['date' => $step->updated_at->format('d-m-Y H:i'), 'description' => 'Arrived to Malaysian port']); - $history->push(['date' => $step->updated_at->format('d-m-Y H:i'), 'description' => 'Custom clearance is successful']); + $history->push(['date' => $completeDate, 'description' => 'Arrived to Malaysian port']); + $history->push(['date' => $completeDate, 'description' => 'Custom clearance is successful']); break; case Constants::ORDER_WAREHOUSE_ARRIVAL_STEP: - $history->push(['date' => $step->updated_at->format('d-m-Y H:i'), 'description' => 'Arrived at Malaysia\'s warehouse']); + $history->push(['date' => $completeDate, 'description' => 'Arrived at Malaysia\'s warehouse']); break; case Constants::ORDER_WAREHOUSE_UNPACKING_STEP: - $history->push(['date' => $step->updated_at->format('d-m-Y H:i'), 'description' => 'Your Order has been unloaded and being prepared for delivery']); + $history->push(['date' => $completeDate, 'description' => 'Your Order has been unloaded and being prepared for delivery']); break; case Constants::ORDER_DELIVERY_STEP: - $history->push(['date' => $step->updated_at->format('d-m-Y H:i'), 'description' => 'Out for delivery']); + $history->push(['date' => $completeDate, 'description' => 'Out for delivery']); break; } } @@ -85,12 +86,12 @@ class ListsOrderHistory if($schedule->status === 2){ $customIssue = CustomIssues::where('schedule_id', $schedule->id)->first(); if($customIssue !== null){ - $history->push(['date' => $schedule->updated_at->format('d-m-Y H:i'), 'description' => '[ETD: '.$schedule->ETD.', ETA: '.$schedule->ETA.'] Shipping Schedule failed due to: '.$customIssue->remark]); + $history->push(['date' => $schedule->updated_at->format('d-m-Y'), 'description' => '[ETD: '.$schedule->ETD.', ETA: '.$schedule->ETA.'] Shipping Schedule failed due to: '.$customIssue->remark]); } else { - $history->push(['date' => $schedule->updated_at->format('d-m-Y H:i'), 'description' => '[ETD: '.$schedule->ETD.', ETA: '.$schedule->ETA.'] Shipping Schedule failed']); + $history->push(['date' => $schedule->updated_at->format('d-m-Y'), 'description' => '[ETD: '.$schedule->ETD.', ETA: '.$schedule->ETA.'] Shipping Schedule failed']); } } else { - $history->push(['date' => $schedule->updated_at->format('d-m-Y H:i'), 'description' => '[ETD: '.$schedule->ETD.', ETA: '.$schedule->ETA.'] Your Order has been scheduled for shipping ']); + $history->push(['date' => $schedule->updated_at->format('d-m-Y'), 'description' => '[ETD: '.$schedule->ETD.', ETA: '.$schedule->ETA.'] Your Order has been scheduled for shipping ']); } } } @@ -98,7 +99,7 @@ class ListsOrderHistory } if($complete){ - $history->push(['date' => $lastUpdate->format('d-m-Y H:i'), 'description' => 'Your Order has successfully been delivered']); + $history->push(['date' => $lastUpdate->format('d-m-Y'), 'description' => 'Your Order has successfully been delivered']); } return $history->reverse()->toArray(); diff --git a/app/Classes/Modules/Orders/Services/ProcessesOrderStep.php b/app/Classes/Modules/Orders/Services/ProcessesOrderStep.php deleted file mode 100644 index b4cebdd..0000000 --- a/app/Classes/Modules/Orders/Services/ProcessesOrderStep.php +++ /dev/null @@ -1,63 +0,0 @@ -confirmOrder = $confirmOrder; - $this->warehouseReceivesOrder = $warehouseReceivesOrder; - $this->warehousePackingOrder = $warehousePackingOrder; - } - - - - public function execute(OrderObject $order, StepObject $step, Request $request): bool{ - switch ($step->getReferenceId()){ - case Constants::ORDER_PROCESSING_STEP: - return $this->confirmOrder->execute($order, $request); - case Constants::ORDER_NO_WAREHOUSE_PENDING_SUPPLIER: - return true; - case Constants::ORDER_WAREHOUSE_RECEIVING_STEP: - return $this->warehouseReceivesOrder->execute($order, $request); - case Constants::ORDER_WAREHOUSE_PACKING_STEP: - return $this->warehousePackingOrder->execute($order); - case Constants::ORDER_SHIPPING_STEP: - return true; - case Constants::ORDER_WAREHOUSE_ARRIVAL_STEP: - return true; - case Constants::ORDER_WAREHOUSE_UNPACKING_STEP: - return true; - case Constants::ORDER_DELIVERY_STEP: - return true; - default: - return false; - } - } - -} \ No newline at end of file diff --git a/app/Classes/Modules/Orders/Services/Processors/ConfirmsOrder.php b/app/Classes/Modules/Orders/Services/Processors/ConfirmsOrder.php deleted file mode 100644 index d8bfd55..0000000 --- a/app/Classes/Modules/Orders/Services/Processors/ConfirmsOrder.php +++ /dev/null @@ -1,79 +0,0 @@ -setOrderWarehouse = $setOrderWarehouse; - $this->generateOrderSteps = $generateOrderSteps; - $this->createsOrderSteps = $createsOrderSteps; - } - - - /** - * @param OrderObject $order - * @param Request $request - * @return bool - */ - public function execute(OrderObject $order, Request $request){ - - try { - - if($request->input('warehouse_id')){ - - $order->setWarehouseId($request->input('warehouse_id')); - - $this->setOrderWarehouse->execute($order); - } - - $modules = new Collection(); - - $order->getWarehouseId() ? $modules->push(Constants::ORDER_MODULE_WAREHOUSE) : $modules->push(Constants::ORDER_MODULE_NO_WAREHOUSE); - - $orderSteps = $this->generateOrderSteps->getSteps($modules->toArray())->toArray(); - - $this->createsOrderSteps->execute($order, $orderSteps); - - return true; - - } catch (\Exception $exception){ - - return false; - - } - - - } - -} \ No newline at end of file diff --git a/app/Classes/Modules/Orders/Services/Processors/WarehousePackingOrder.php b/app/Classes/Modules/Orders/Services/Processors/WarehousePackingOrder.php deleted file mode 100644 index 0814864..0000000 --- a/app/Classes/Modules/Orders/Services/Processors/WarehousePackingOrder.php +++ /dev/null @@ -1,33 +0,0 @@ -repository = $repository; - } - - public function execute(OrderObject $order){ - $packingList = $this->repository->where('order_id', $order->getOrderId())->firstOrFail(); - if($packingList->confirmed) { - return true; - } - - return false; - } - - -} \ No newline at end of file diff --git a/app/Classes/Modules/Orders/Services/Processors/WarehouseReceivesOrder.php b/app/Classes/Modules/Orders/Services/Processors/WarehouseReceivesOrder.php deleted file mode 100644 index 553e7fa..0000000 --- a/app/Classes/Modules/Orders/Services/Processors/WarehouseReceivesOrder.php +++ /dev/null @@ -1,33 +0,0 @@ -createsReceiveNote = $createsReceiveNote; - } - - - public function execute(OrderObject $order, Request $request){ - $object = new ReceiveNoteObject($request->input('tracking_no'), $request->input('receive_date')); - $this->createsReceiveNote->execute($order, $object); - return true; - } - -} \ No newline at end of file diff --git a/app/Classes/Modules/Orders/Services/CreatesReceiveNote.php b/app/Classes/Modules/Orders/Services/ReceiveNote/CreatesReceiveNote.php similarity index 63% rename from app/Classes/Modules/Orders/Services/CreatesReceiveNote.php rename to app/Classes/Modules/Orders/Services/ReceiveNote/CreatesReceiveNote.php index 3286cb2..be516af 100644 --- a/app/Classes/Modules/Orders/Services/CreatesReceiveNote.php +++ b/app/Classes/Modules/Orders/Services/ReceiveNote/CreatesReceiveNote.php @@ -1,6 +1,6 @@ repository = $repository; + $this->repository = new ReceiveNote(); } - public function execute(OrderObject $order , ReceiveNoteObject $receiveNote){ $this->repository->order_id = $order->getOrderId(); $this->repository->tracking_no = $receiveNote->getTrackingNumber(); - $this->repository->receive_date = $receiveNote->getDate(); $this->repository->save(); diff --git a/app/Classes/Modules/Orders/Services/SetsOrderWarehouse.php b/app/Classes/Modules/Orders/Services/SetsOrderWarehouse.php index 30c38d8..c56c02b 100644 --- a/app/Classes/Modules/Orders/Services/SetsOrderWarehouse.php +++ b/app/Classes/Modules/Orders/Services/SetsOrderWarehouse.php @@ -15,11 +15,10 @@ class SetsOrderWarehouse /** * SetsOrderWarehouse constructor. - * @param Order $repository */ - public function __construct(Order $repository) + public function __construct() { - $this->repository = $repository; + $this->repository = new Order(); } diff --git a/app/Classes/Modules/Orders/Services/CompletesOrderStep.php b/app/Classes/Modules/Orders/Services/Steps/CompletesOrderStep.php similarity index 60% rename from app/Classes/Modules/Orders/Services/CompletesOrderStep.php rename to app/Classes/Modules/Orders/Services/Steps/CompletesOrderStep.php index d0249e7..f4c6d22 100644 --- a/app/Classes/Modules/Orders/Services/CompletesOrderStep.php +++ b/app/Classes/Modules/Orders/Services/Steps/CompletesOrderStep.php @@ -1,6 +1,6 @@ repository = $repository; - } - - /** * @param OrderObject $order * @param StepObject $step @@ -29,11 +16,12 @@ class CompletesOrderStep { public function execute(OrderObject $order, StepObject $step){ /** @var Order $repository */ - $repository = $this->repository->findOrFail($order->getOrderId()); + $repository = Order::findOrFail($order->getOrderId()); $orderStep = $repository->orderSteps()->where('reference_id', $step->getReferenceId())->firstOrFail(); $orderStep->complete = 1; + $orderStep->complete_date = $step->getCompleteDate(); $orderStep->save(); diff --git a/app/Classes/Modules/Orders/Services/CreatesOrderSteps.php b/app/Classes/Modules/Orders/Services/Steps/CreatesOrderSteps.php similarity index 84% rename from app/Classes/Modules/Orders/Services/CreatesOrderSteps.php rename to app/Classes/Modules/Orders/Services/Steps/CreatesOrderSteps.php index 3b1a1f0..bac2b55 100644 --- a/app/Classes/Modules/Orders/Services/CreatesOrderSteps.php +++ b/app/Classes/Modules/Orders/Services/Steps/CreatesOrderSteps.php @@ -1,6 +1,6 @@ repository = $repository; + $this->repository = new Order(); } /** diff --git a/app/Classes/Modules/Orders/Steps/GenerateOrderSteps.php b/app/Classes/Modules/Orders/Services/Steps/GenerateOrderSteps.php similarity index 61% rename from app/Classes/Modules/Orders/Steps/GenerateOrderSteps.php rename to app/Classes/Modules/Orders/Services/Steps/GenerateOrderSteps.php index 9d74055..8263986 100644 --- a/app/Classes/Modules/Orders/Steps/GenerateOrderSteps.php +++ b/app/Classes/Modules/Orders/Services/Steps/GenerateOrderSteps.php @@ -1,28 +1,54 @@ steps = $steps; + $this->repository = new Order(); + $this->steps = new Collection(); + $this->createsOrderSteps = new CreatesOrderSteps(); } + /** + * @param OrderObject $order + * @throws \App\Classes\Modules\Accounts\Exceptions\CannotCreateOrderStepsException + */ + public function execute(OrderObject $order){ + + $modules = new Collection(); + + $order->getWarehouseId() ? $modules->push(Constants::ORDER_MODULE_WAREHOUSE) : $modules->push(Constants::ORDER_MODULE_NO_WAREHOUSE); + + $orderSteps = $this->getSteps([$this->repository->findOrFail($order->getOrderId())->pluck('warehouse_id') ? Constants::ORDER_MODULE_WAREHOUSE : Constants::ORDER_MODULE_NO_WAREHOUSE]); + + $this->createsOrderSteps->execute($order, $orderSteps->toArray()); + } /** * @param array $modules diff --git a/app/Classes/Modules/Orders/Services/UpdatesOrderCurrentStep.php b/app/Classes/Modules/Orders/Services/Steps/UpdatesOrderCurrentStep.php similarity index 53% rename from app/Classes/Modules/Orders/Services/UpdatesOrderCurrentStep.php rename to app/Classes/Modules/Orders/Services/Steps/UpdatesOrderCurrentStep.php index f30d73d..9d4bfeb 100644 --- a/app/Classes/Modules/Orders/Services/UpdatesOrderCurrentStep.php +++ b/app/Classes/Modules/Orders/Services/Steps/UpdatesOrderCurrentStep.php @@ -1,7 +1,6 @@ order = $order; - $this->orderStep = $orderStep; - } - - public function execute(OrderObject $order, StepObject $step){ - $orderStep = $this->orderStep->where('order_id', $order->getOrderId()) + $orderStep = OrderStep::where('order_id', $order->getOrderId()) ->where('complete', 0)->orderBy('sequence')->first(); $nextStep = $orderStep ? $orderStep->reference_id : null; - $repository = $this->order->findOrFail($order->getOrderId()); + $repository = order::findOrFail($order->getOrderId()); $repository->current_step = $nextStep; if($nextStep === null && $step !== Constants::ORDER_PROCESSING_STEP){ diff --git a/app/Classes/Modules/Orders/Services/Steps/UpdatesOrderSteps.php b/app/Classes/Modules/Orders/Services/Steps/UpdatesOrderSteps.php new file mode 100644 index 0000000..fbf7ed2 --- /dev/null +++ b/app/Classes/Modules/Orders/Services/Steps/UpdatesOrderSteps.php @@ -0,0 +1,30 @@ +getReferenceId()]; + $arguments = (new StepProcessMapper())->map($class, $request->all()); + + return (new $class())->execute($order, $step,...$arguments); + + } + +} \ No newline at end of file diff --git a/app/Classes/Modules/Orders/Services/UpdatesOrderSteps.php b/app/Classes/Modules/Orders/Services/UpdatesOrderSteps.php deleted file mode 100644 index fd5e13c..0000000 --- a/app/Classes/Modules/Orders/Services/UpdatesOrderSteps.php +++ /dev/null @@ -1,56 +0,0 @@ -processesOrderStep = $processesOrderStep; - $this->completesOrderStep = $completesOrderStep; - $this->updatesOrderCurrentStep = $updatesOrderCurrentStep; - } - - - /** - * @param OrderObject $order - * @param StepObject $step - * @param Request $request - * @return JsonResponse - */ - public function execute(OrderObject $order, StepObject $step, Request $request) { - - - if($this->processesOrderStep->execute($order, $step, $request)){ - $this->completesOrderStep->execute($order, $step); - $this->updatesOrderCurrentStep->execute($order, $step); - } - - return new JsonResponse(null, HttpStatus::OK); - } - -} \ No newline at end of file diff --git a/app/Classes/Modules/Orders/Steps/AbstractOrderStep.php b/app/Classes/Modules/Orders/Steps/AbstractOrderStep.php deleted file mode 100644 index 16053bc..0000000 --- a/app/Classes/Modules/Orders/Steps/AbstractOrderStep.php +++ /dev/null @@ -1,76 +0,0 @@ -orderId = $orderId; - $this->currentStep = $this->getCurrentStep(); - $this->currentStep = $this->getCurrentStep(); - } - - /** - * @return string - */ - public function getOrderId(): string - { - return $this->orderId; - } - - /** - * @return string - */ - public function getCurrentStep(): string - { - return Order::findOrFail($this->getOrderId())->current_step; - } - - /** - * @param string $currentStep - */ - public function setCurrentStep(string $currentStep): void - { - $this->currentStep = $currentStep; - } - - /** - * @return null|string - */ - public function getNextStep(): ?string - { - $nextStep = OrderStep::where('order_id', $this->getOrderId()) - ->where('complete', 0)->orderBy('sequence')->first(); - return $nextStep ? $nextStep->reference_id : null; - } - - /** - * @param null|string $nextStep - */ - public function setNextStep(?string $nextStep): void - { - $this->nextStep = $nextStep; - } - - -} \ No newline at end of file diff --git a/app/Classes/Modules/Orders/Steps/OrderStep.php b/app/Classes/Modules/Orders/Steps/OrderStep.php deleted file mode 100644 index e4c5dfc..0000000 --- a/app/Classes/Modules/Orders/Steps/OrderStep.php +++ /dev/null @@ -1,54 +0,0 @@ -isPrimary = $isPrimary; - $this->referenceId = $referenceId; - $this->sequence = $sequence; - } - - /** - * @return bool - */ - public function isPrimary(): bool - { - return $this->isPrimary; - } - - /** - * @return string - */ - public function getReferenceId(): string - { - return $this->referenceId; - } - - /** - * @return float - */ - public function getSequence(): float - { - return $this->sequence; - } -} \ No newline at end of file diff --git a/app/Classes/Modules/Orders/Steps/OrderStepUpdate.php b/app/Classes/Modules/Orders/Steps/OrderStepUpdate.php deleted file mode 100644 index 6d803a9..0000000 --- a/app/Classes/Modules/Orders/Steps/OrderStepUpdate.php +++ /dev/null @@ -1,23 +0,0 @@ -ProcessStep($request)){ - return $this->CompleteOrderCurrentStep(); - } - - return false; - } - - -} \ No newline at end of file diff --git a/app/Classes/Modules/Orders/Steps/ProcessStep.php b/app/Classes/Modules/Orders/Steps/ProcessStep.php deleted file mode 100644 index 7eaf38b..0000000 --- a/app/Classes/Modules/Orders/Steps/ProcessStep.php +++ /dev/null @@ -1,15 +0,0 @@ -orderId = $orderId; - $this->referenceId = $referenceId; - } - - /** - * @return string - */ - public function getOrderId(): string - { - return $this->orderId; - } - - /** - * @return string - */ - public function getReferenceId(): string - { - return $this->referenceId; - } - - /** - * @return bool - */ - public function completeStep(): bool { - - $orderStep = OrderStep::where('order_id', $this->getOrderId()) - ->where('reference_id', $this->getReferenceId())->firstOrFail(); - - $orderStep->complete = 1; - - if($orderStep->save()){ - return true; - } - - return false; - - } - - -} \ No newline at end of file diff --git a/app/Classes/Modules/Orders/Steps/Processors/Delivery.php b/app/Classes/Modules/Orders/Steps/Processors/Delivery.php deleted file mode 100644 index cad3c8a..0000000 --- a/app/Classes/Modules/Orders/Steps/Processors/Delivery.php +++ /dev/null @@ -1,10 +0,0 @@ -completeStep(); - } -} \ No newline at end of file diff --git a/app/Classes/Modules/Orders/Steps/Processors/OrderProcessing.php b/app/Classes/Modules/Orders/Steps/Processors/OrderProcessing.php deleted file mode 100644 index a44d70b..0000000 --- a/app/Classes/Modules/Orders/Steps/Processors/OrderProcessing.php +++ /dev/null @@ -1,10 +0,0 @@ -completeStep(); - } -} \ No newline at end of file diff --git a/app/Classes/Modules/Orders/Steps/Processors/Shipping.php b/app/Classes/Modules/Orders/Steps/Processors/Shipping.php deleted file mode 100644 index 7161e56..0000000 --- a/app/Classes/Modules/Orders/Steps/Processors/Shipping.php +++ /dev/null @@ -1,10 +0,0 @@ -completeStep(); - } -} \ No newline at end of file diff --git a/app/Classes/Modules/Orders/Steps/Processors/SupplierPacking.php b/app/Classes/Modules/Orders/Steps/Processors/SupplierPacking.php deleted file mode 100644 index 3dcc17e..0000000 --- a/app/Classes/Modules/Orders/Steps/Processors/SupplierPacking.php +++ /dev/null @@ -1,10 +0,0 @@ -completeStep(); - } -} \ No newline at end of file diff --git a/app/Classes/Modules/Orders/Steps/Processors/Validation/ReceiveNoteValidation.php b/app/Classes/Modules/Orders/Steps/Processors/Validation/ReceiveNoteValidation.php deleted file mode 100644 index e9b91c2..0000000 --- a/app/Classes/Modules/Orders/Steps/Processors/Validation/ReceiveNoteValidation.php +++ /dev/null @@ -1,17 +0,0 @@ -all(), [ - 'tracking_no' => 'required', - 'receive_date' => 'required|date' - ]))->fails(); - - } -} \ No newline at end of file diff --git a/app/Classes/Modules/Orders/Steps/Processors/WarehouseArrival.php b/app/Classes/Modules/Orders/Steps/Processors/WarehouseArrival.php deleted file mode 100644 index 2b6e019..0000000 --- a/app/Classes/Modules/Orders/Steps/Processors/WarehouseArrival.php +++ /dev/null @@ -1,10 +0,0 @@ -completeStep(); - } -} \ No newline at end of file diff --git a/app/Classes/Modules/Orders/Steps/Processors/WarehousePacking.php b/app/Classes/Modules/Orders/Steps/Processors/WarehousePacking.php deleted file mode 100644 index 3c72337..0000000 --- a/app/Classes/Modules/Orders/Steps/Processors/WarehousePacking.php +++ /dev/null @@ -1,22 +0,0 @@ -getOrderId())->first(); - if($packingList){ - if($packingList->confirmed){ - return $this->completeStep(); - } - } - - - return false; - - } -} \ No newline at end of file diff --git a/app/Classes/Modules/Orders/Steps/Processors/WarehouseReceive.php b/app/Classes/Modules/Orders/Steps/Processors/WarehouseReceive.php deleted file mode 100644 index 90f0b80..0000000 --- a/app/Classes/Modules/Orders/Steps/Processors/WarehouseReceive.php +++ /dev/null @@ -1,24 +0,0 @@ -execute($request)){ - - if((new CreateReceiveNote())->execute(new ReceiveNoteObject($this->getOrderId(), $request))){ - return $this->completeStep(); - } - - } - - return false; - - } -} \ No newline at end of file diff --git a/app/Classes/Modules/Orders/Steps/Processors/WarehouseUnpacking.php b/app/Classes/Modules/Orders/Steps/Processors/WarehouseUnpacking.php deleted file mode 100644 index b8db8f1..0000000 --- a/app/Classes/Modules/Orders/Steps/Processors/WarehouseUnpacking.php +++ /dev/null @@ -1,10 +0,0 @@ -completeStep(); - } -} \ No newline at end of file diff --git a/app/Classes/Modules/Orders/Steps/StepManager.php b/app/Classes/Modules/Orders/Steps/StepManager.php deleted file mode 100644 index 4e5f5ed..0000000 --- a/app/Classes/Modules/Orders/Steps/StepManager.php +++ /dev/null @@ -1,64 +0,0 @@ -orderId = $orderId; - $this->step = $step; - $this->request = $request; - } - - - public function execute(): bool{ - switch ($this->step){ - case Constants::ORDER_PROCESSING_STEP: - return (new OrderProcessing($this->orderId, $this->step))->execute(); - case Constants::ORDER_WAREHOUSE_RECEIVING_STEP: - return (new WarehouseReceive($this->orderId, $this->step))->execute($this->request); - case Constants::ORDER_WAREHOUSE_PACKING_STEP: - return (new WarehousePacking($this->orderId, $this->step))->execute($this->request); - case Constants::ORDER_NO_WAREHOUSE_PENDING_SUPPLIER: - return (new SupplierPacking($this->orderId, $this->step))->execute(); - case Constants::ORDER_SHIPPING_STEP: - return (new Shipping($this->orderId, $this->step))->execute(); - case Constants::ORDER_WAREHOUSE_ARRIVAL_STEP: - return (new WarehouseArrival($this->orderId, $this->step))->execute(); - case Constants::ORDER_WAREHOUSE_UNPACKING_STEP: - return (new WarehouseUnpacking($this->orderId, $this->step))->execute(); - case Constants::ORDER_DELIVERY_STEP: - return (new Delivery($this->orderId, $this->step))->execute(); - - } - } - -} \ No newline at end of file diff --git a/app/Classes/ValueObjects/Constants/OrderSteps.php b/app/Classes/ValueObjects/Constants/OrderSteps.php index 6e4893e..b1b94ab 100644 --- a/app/Classes/ValueObjects/Constants/OrderSteps.php +++ b/app/Classes/ValueObjects/Constants/OrderSteps.php @@ -4,6 +4,13 @@ namespace App\Classes\ValueObjects\Constants; use App\Classes\Constants; +use App\Classes\Modules\Orders\Processors\ConfirmsOrder; +use App\Classes\Modules\Orders\Processors\DeliverOrder; +use App\Classes\Modules\Orders\Processors\ShipOrder; +use App\Classes\Modules\Orders\Processors\WarehouseArrivalOrder; +use App\Classes\Modules\Orders\Processors\WarehousePackOrder; +use App\Classes\Modules\Orders\Processors\WarehouseReceivesOrder; +use App\Classes\Modules\Orders\Processors\WarehouseUnpackingOrder; class OrderSteps { @@ -52,4 +59,14 @@ class OrderSteps Constants::ORDER_DELIVERY_STEP ]; + public const STEP_PROCESSOR = [ + Constants::ORDER_PROCESSING_STEP => ConfirmsOrder::class, + Constants::ORDER_WAREHOUSE_RECEIVING_STEP => WarehouseReceivesOrder::class, + Constants::ORDER_WAREHOUSE_PACKING_STEP => WarehousePackOrder::class, + Constants::ORDER_SHIPPING_STEP => ShipOrder::class, + Constants::ORDER_WAREHOUSE_ARRIVAL_STEP => WarehouseArrivalOrder::class, + Constants::ORDER_WAREHOUSE_UNPACKING_STEP => WarehouseUnpackingOrder::class, + Constants::ORDER_DELIVERY_STEP => DeliverOrder::class, + ]; + } \ No newline at end of file diff --git a/app/Http/Controllers/Companies/CompanyController.php b/app/Http/Controllers/Companies/CompanyController.php index 0615c1b..9bc44b9 100644 --- a/app/Http/Controllers/Companies/CompanyController.php +++ b/app/Http/Controllers/Companies/CompanyController.php @@ -18,8 +18,8 @@ class CompanyController extends Controller * Display a listing of the resource. * */ - public function index() { - return (new ListCompanies())->execute(); + public function index(?bool $pagination = true) { + return (new ListCompanies())->execute($pagination); } /** diff --git a/app/Http/Controllers/Orders/BulkReceiveNotesController.php b/app/Http/Controllers/Orders/BulkReceiveNotesController.php new file mode 100644 index 0000000..b4a4088 --- /dev/null +++ b/app/Http/Controllers/Orders/BulkReceiveNotesController.php @@ -0,0 +1,27 @@ +input('receive_date'); + foreach ($request->input('orders') as $note){ + $requestObject = new Request(); + $requestObject->merge(['tracking_number' => $note['tracking_number'], 'receive_date' => $receiveDate]); + $logic->execute($note['id'], $requestObject); + } + + } + +} \ No newline at end of file diff --git a/app/Http/Controllers/Orders/ListOrderController.php b/app/Http/Controllers/Orders/ListOrderController.php index 98db3f8..90351f0 100644 --- a/app/Http/Controllers/Orders/ListOrderController.php +++ b/app/Http/Controllers/Orders/ListOrderController.php @@ -1,10 +1,4 @@ execute($category); } diff --git a/app/Http/Controllers/Orders/OrderController.php b/app/Http/Controllers/Orders/OrderController.php index 53c8a51..b1db9ec 100644 --- a/app/Http/Controllers/Orders/OrderController.php +++ b/app/Http/Controllers/Orders/OrderController.php @@ -8,7 +8,6 @@ use App\Classes\Modules\Orders\DataTransferObjects\PackageObject; use App\Classes\Modules\Orders\DataTransferObjects\PackingListObject; use App\Models\CustomIssues; use App\Models\Order; -use App\Models\OrderStep; use App\Models\PackingList; use App\Models\ShippingArrangement; use Carbon\Carbon; @@ -19,6 +18,11 @@ use App\Http\Resources\Order as OrderResource; class OrderController extends Controller { + public function show($id){ + $order = Order::findOrFail($id)->first(); + return new OrderResource($order); + } + public function listCompanyOrders(String $companyId){ $orders = Order::where('company_id', $companyId)->orderBy('created_at', 'DESC') ->paginate(100); @@ -31,11 +35,6 @@ class OrderController extends Controller return OrderResource::collection($orders); } - public function updateStep(String $orderId, Request $request, UpdateOrderStepLogic $logic){ - return $logic->execute($orderId, $request); -// return (new UpdateOrderStepLogic())->execute($orderId, $request) ? 200 : 408; - } - public function updatePackingList(String $orderId, Request $request){ $packingList = PackingList::updateOrCreate(['order_id' => $orderId],['reference_no' => $request->input('reference_no')]); $confirmed = true; diff --git a/app/Http/Controllers/Orders/UpdateOrderStepController.php b/app/Http/Controllers/Orders/UpdateOrderStepController.php index 9e06540..b668682 100644 --- a/app/Http/Controllers/Orders/UpdateOrderStepController.php +++ b/app/Http/Controllers/Orders/UpdateOrderStepController.php @@ -9,12 +9,13 @@ class UpdateOrderStepController { /** - * @param int $companyId + * @param String $orderId * @param Request $request * @param UpdateOrderStepLogic $logic * @return \Illuminate\Http\JsonResponse + * @throws \ReflectionException */ - public function create(int $companyId, Request $request, UpdateOrderStepLogic $logic){ - return $logic->execute($companyId, $request); + public function update(String $orderId, Request $request, UpdateOrderStepLogic $logic){ + return $logic->execute($orderId, $request); } } \ No newline at end of file diff --git a/app/Http/Resources/Order.php b/app/Http/Resources/Order.php index 54bbf77..d172872 100644 --- a/app/Http/Resources/Order.php +++ b/app/Http/Resources/Order.php @@ -6,6 +6,7 @@ use App\Classes\Modules\Orders\Services\ListsOrderHistory; use App\Classes\Modules\Steps\GetStep; use App\Classes\Modules\Steps\StepAttachments; use Illuminate\Http\Resources\Json\JsonResource; +use App\Models\AddressBook; class Order extends JsonResource { @@ -17,6 +18,7 @@ class Order extends JsonResource */ public function toArray($request) { + $addressBook = AddressBook::find($this->address_id)->first(); return [ 'id' => $this->id, 'company_id' => $this->company_id, @@ -24,6 +26,7 @@ class Order extends JsonResource 'forwarder_id' => $this->forwarder_id, 'supplier_id' => $this->supplier_id, 'warehouse_id' => $this->warehouse_id, + 'address' => new \App\Http\Resources\AddressBook($addressBook), 'current_step' => $this->current_step, 'complete' => (float)$this->complete, 'date' => $this->created_at->format('d/m/Y'), diff --git a/app/Models/Order.php b/app/Models/Order.php index e25bfd5..f4a63fd 100644 --- a/app/Models/Order.php +++ b/app/Models/Order.php @@ -12,7 +12,7 @@ class Order extends AbstractModel protected $table = 'orders'; protected $fillable = [ - 'company_id', 'marking', 'forwarder_id', 'supplier_id', 'warehouse_id', 'current_step', 'complete' + 'company_id', 'marking', 'forwarder_id', 'supplier_id', 'warehouse_id', 'address_id', 'current_step', 'complete' ]; public function orderSteps() diff --git a/app/Models/OrderStep.php b/app/Models/OrderStep.php index ff1e2c6..0975a89 100644 --- a/app/Models/OrderStep.php +++ b/app/Models/OrderStep.php @@ -8,7 +8,7 @@ class OrderStep extends AbstractModel protected $table = 'order_steps'; protected $fillable = [ - 'order_id', 'reference_id', 'primary', 'sequence', 'complete' + 'order_id', 'reference_id', 'primary', 'sequence', 'complete', 'complete_date' ]; public function order() diff --git a/app/Traits/updatesStep.php b/app/Traits/updatesStep.php new file mode 100644 index 0000000..b1fa83f --- /dev/null +++ b/app/Traits/updatesStep.php @@ -0,0 +1,27 @@ +CompleteOrderStep($order, $step); + $this->updatesOrderCurrentStep($order, $step); + } + + public function CompleteOrderStep(OrderObject $order, StepObject $step){ + (new CompletesOrderStep())->execute($order, $step); + } + + public function updatesOrderCurrentStep(OrderObject $order, StepObject $step){ + (new UpdatesOrderCurrentStep())->execute($order, $step); + } + + +} \ No newline at end of file diff --git a/database/migrations/2018_09_08_072451_create_companies_table.php b/database/migrations/2018_09_08_072451_create_companies_table.php index 3dbc602..7470a22 100644 --- a/database/migrations/2018_09_08_072451_create_companies_table.php +++ b/database/migrations/2018_09_08_072451_create_companies_table.php @@ -15,9 +15,10 @@ class CreateCompaniesTable extends Migration { Schema::create('companies', function (Blueprint $table) { $table->increments('id'); - $table->string('name', 50); + $table->string('name', 80); $table->string('marking', 80)->unique(); $table->string('email', 80)->nullable(); + $table->string('wechat_id', 80)->nullable(); $table->string('registration_no', 25)->nullable(); $table->string('tax_no', 25)->nullable(); $table->double('rate')->default(0); diff --git a/database/migrations/2018_11_26_145701_create_orders_table.php b/database/migrations/2018_11_26_145701_create_orders_table.php index fe0bb3f..fb3f8d1 100644 --- a/database/migrations/2018_11_26_145701_create_orders_table.php +++ b/database/migrations/2018_11_26_145701_create_orders_table.php @@ -20,6 +20,7 @@ class CreateOrdersTable extends Migration $table->string('forwarder_id')->nullable(); $table->string('supplier_id')->nullable(); $table->string('warehouse_id')->nullable(); + $table->string('address_id'); $table->string('current_step')->nullable(); $table->integer('complete')->default(0); $table->softDeletes(); diff --git a/database/migrations/2018_11_26_150411_create_order_steps_table.php b/database/migrations/2018_11_26_150411_create_order_steps_table.php index aa1d963..48b7995 100644 --- a/database/migrations/2018_11_26_150411_create_order_steps_table.php +++ b/database/migrations/2018_11_26_150411_create_order_steps_table.php @@ -20,6 +20,7 @@ class CreateOrderStepsTable extends Migration $table->integer('primary')->default(0); $table->decimal('sequence'); $table->integer('complete')->default(0); + $table->date('complete_date')->nullable(); $table->timestamps(); $table->foreign('order_id')->references('id')->on('orders'); diff --git a/database/migrations/2018_11_27_070848_create_receive_notes_table.php b/database/migrations/2018_11_27_070848_create_receive_notes_table.php index 94b281a..de62c9c 100644 --- a/database/migrations/2018_11_27_070848_create_receive_notes_table.php +++ b/database/migrations/2018_11_27_070848_create_receive_notes_table.php @@ -17,7 +17,6 @@ class CreateReceiveNotesTable extends Migration $table->increments('id'); $table->integer('order_id')->unsigned()->index(); $table->string('tracking_no'); - $table->date('receive_date'); $table->timestamps(); $table->foreign('order_id')->references('id')->on('orders'); diff --git a/database/seeds/DatabaseSeeder.php b/database/seeds/DatabaseSeeder.php index f77f1b1..514b2d7 100644 --- a/database/seeds/DatabaseSeeder.php +++ b/database/seeds/DatabaseSeeder.php @@ -15,9 +15,9 @@ class DatabaseSeeder extends Seeder $this->call(AddressBookTableSeeder::class); $this->call(ContactsTableSeeder::class); $this->call(WarehousesTableSeeder::class); - $this->call(OrdersTableSeeder::class); - $this->call(PackingListsTableSeeder::class); - $this->call(PackagesTableSeeder::class); +// $this->call(OrdersTableSeeder::class); +// $this->call(PackingListsTableSeeder::class); +// $this->call(PackagesTableSeeder::class); } $this->call(PrimaryStepsTableSeeder::class); diff --git a/resources/assets/vue/constant/notification.js b/resources/assets/js/notification.js similarity index 100% rename from resources/assets/vue/constant/notification.js rename to resources/assets/js/notification.js diff --git a/resources/assets/js/scripts.js b/resources/assets/js/scripts.js index 3a0d829..9cf0e18 100644 --- a/resources/assets/js/scripts.js +++ b/resources/assets/js/scripts.js @@ -1,4 +1,5 @@ $(function() { + $('.page-container').scrollbar().addClass('scrollbar-macosx'); $.fn.selectListTrigger = function(eventName) { return this.each(function() { var el = $(this).get(0); diff --git a/resources/assets/sass/modules/_layout.scss b/resources/assets/sass/modules/_layout.scss index 7ca3835..f9fb821 100644 --- a/resources/assets/sass/modules/_layout.scss +++ b/resources/assets/sass/modules/_layout.scss @@ -2006,6 +2006,44 @@ padding-right: 30px; z-index: 1050 !important; } +.select2-container--open .select2-dropdown { + border-radius: 0px !important; + border: none !important; +} + +.select2-dropdown { + box-shadow: none !important; + &.select2-dark { + background-color: $color-master !important; + .select2-search--dropdown .select2-search__field { + background-color: $color-master-dark !important; + color: $color-master-lightest; + } + .select2-results { + li { + color: $color-master-lighter !important; + &.select2-results__option--highlighted { + color: $color-white !important; + background-color: $color-master-darkest !important; + } + } + } + } +} + +.select2-dark { + .select2-container--default { + .select2-selection__arrow b { + border-color: #fff transparent transparent transparent !important; + } + } + .select2-container--open { + .select2-selection__arrow b { + border-color: transparent transparent #fff transparent !important; + } + } +} + .side-tab { .tab-container { border-left: solid 3px transparent !important; diff --git a/resources/assets/vue/app.js b/resources/assets/vue/app.js index 75e286e..d0ea778 100644 --- a/resources/assets/vue/app.js +++ b/resources/assets/vue/app.js @@ -53,7 +53,8 @@ Vue.component('contact-list-component', require('./components/contact/list/Conta Vue.component('warehouses-list-component', require('./components/warehouse/lists/WarehousesListComponenet.vue')); -Vue.component('orders-list-component', require('./components/order/lists/OrdersListComponenet.vue')); +Vue.component('orders-list-component', require('./components/order/lists/OrdersListComponent.vue')); +Vue.component('orders-select-list-component', require('./components/order/lists/OrdersSelectListComponent.vue')); //elements @@ -76,16 +77,23 @@ Vue.component('warehouse-summary-component', require('./components/warehouse/ele Vue.component('order-page-component', require('./components/order/elements/OrdersPageComponent.vue')); +Vue.component('order-select-component', require('./components/order/elements/OrderSelectComponent.vue')); + Vue.component('order-component', require('./components/order/elements/OrderComponenet.vue')); -Vue.component('confirm-order-component', require('./components/order/elements/ConfirmOrderComponent.vue')); -Vue.component('receive-step-component', require('./components/order/elements/ReceiveStepComponenet.vue')); -Vue.component('packing-step-component', require('./components/order/elements/PackingStepComponenet.vue')); -Vue.component('supplier-packing-step-component', require('./components/order/elements/SupplierPackingStepComponenet.vue')); -Vue.component('shipping-step-component', require('./components/order/elements/ShippingStepComponenet.vue')); -Vue.component('arrival-step-component', require('./components/order/elements/ArrivalStepComponenet.vue')); -Vue.component('unpacking-step-component', require('./components/order/elements/UnpackingStepComponenet.vue')); -Vue.component('delivery-step-component', require('./components/order/elements/DeliveryStepComponenet.vue')); -Vue.component('complete-order-component', require('./components/order/elements/CompleteOrderComponenet.vue')); +Vue.component('order-profile-component', require('./components/order/elements/OrdersProfileComponent.vue')); +Vue.component('order-header-component', require('./components/order/elements/OrderHeaderComponenet.vue')); +Vue.component('order-action-component', require('./components/order/elements/OrderActionComponenet.vue')); +Vue.component('order-history-component', require('./components/order/elements/OrderHistoryComponenet.vue')); + + +Vue.component('confirm-order-component', require('./components/order/elements/steps/ConfirmOrderComponent.vue')); +Vue.component('receive-step-component', require('./components/order/elements/steps/ReceiveStepComponenet.vue')); +Vue.component('packing-step-component', require('./components/order/elements/steps/PackingStepComponenet.vue')); +Vue.component('supplier-packing-step-component', require('./components/order/elements/steps/SupplierPackingStepComponenet.vue')); +Vue.component('shipping-step-component', require('./components/order/elements/steps/ShippingStepComponenet.vue')); +Vue.component('arrival-step-component', require('./components/order/elements/steps/ArrivalStepComponenet.vue')); +Vue.component('unpacking-step-component', require('./components/order/elements/steps/UnpackingStepComponenet.vue')); +Vue.component('delivery-step-component', require('./components/order/elements/steps/DeliveryStepComponenet.vue')); //forms Vue.component('invite-account-form-component', require('./components/account/forms/InviteAccountFormComponent.vue')); @@ -98,6 +106,8 @@ Vue.component('contact-form-component', require('./components/contact/forms/Cont Vue.component('warehouse-form-component', require('./components/warehouse/forms/WarehouseFormComponent.vue')); Vue.component('order-form-component', require('./components/order/forms/OrderFormComponent.vue')); +Vue.component('addon-order-form-component', require('./components/order/forms/AddonOrderFormComponent.vue')); +Vue.component('warehouse-receive-note-form-component', require('./components/order/forms/WarehouseReceiveNoteFormComponent.vue')); Vue.component('notification-component', require('./components/common/NotificationComponent.vue')); diff --git a/resources/assets/vue/components/company/elements/CompanyProfileComponenet.vue b/resources/assets/vue/components/company/elements/CompanyProfileComponenet.vue index 2852be1..01051fe 100644 --- a/resources/assets/vue/components/company/elements/CompanyProfileComponenet.vue +++ b/resources/assets/vue/components/company/elements/CompanyProfileComponenet.vue @@ -89,7 +89,7 @@ -
+
@@ -158,26 +158,26 @@
-
-
-
- - - - -
-
-
-
- -
-
-
-
- -
-
-
+ + + + + + + + + + + + + + + + + + + +
diff --git a/resources/assets/vue/components/company/elements/CompanySummaryComponenet.vue b/resources/assets/vue/components/company/elements/CompanySummaryComponenet.vue index dce4f9c..dd8b6a1 100644 --- a/resources/assets/vue/components/company/elements/CompanySummaryComponenet.vue +++ b/resources/assets/vue/components/company/elements/CompanySummaryComponenet.vue @@ -24,7 +24,8 @@ Registration No:
- {{this.company.registration_no}} + {{this.company.registration_no}} + Empty
@@ -32,8 +33,8 @@ Tax No:
- {{this.company.tax_no}} - Empty + {{this.company.tax_no}} + Empty
@@ -41,8 +42,8 @@ Email:
- {{this.company.email}} - Empty + {{this.company.email}} + Empty
diff --git a/resources/assets/vue/components/company/forms/AddressBookFormComponent.vue b/resources/assets/vue/components/company/forms/AddressBookFormComponent.vue index 72d7434..8bd3e7a 100644 --- a/resources/assets/vue/components/company/forms/AddressBookFormComponent.vue +++ b/resources/assets/vue/components/company/forms/AddressBookFormComponent.vue @@ -48,7 +48,7 @@ \ No newline at end of file diff --git a/resources/assets/vue/components/order/elements/OrderActionComponenet.vue b/resources/assets/vue/components/order/elements/OrderActionComponenet.vue new file mode 100644 index 0000000..59594c6 --- /dev/null +++ b/resources/assets/vue/components/order/elements/OrderActionComponenet.vue @@ -0,0 +1,75 @@ + + + \ No newline at end of file diff --git a/resources/assets/vue/components/order/elements/OrderComponenet.vue b/resources/assets/vue/components/order/elements/OrderComponenet.vue index 13ca042..0f73d73 100644 --- a/resources/assets/vue/components/order/elements/OrderComponenet.vue +++ b/resources/assets/vue/components/order/elements/OrderComponenet.vue @@ -1,89 +1,10 @@ @@ -97,49 +18,12 @@ data() { return { order: this.data, - receiveNote: { - tracking_no: '', - receive_date: '' - } } }, watch: { 'data': function() { this.order = this.data; } - }, - methods: { - deleteOrder(){ - fetch(route('api.order.delete', {'id': this.data}), { - method: 'delete' - }).then(() => { - Event.$emit('updateOrdersList'); - }) - .catch(error => console.log(error)) - }, - stepComponent(stepReference){ - switch (stepReference) { - case 'PS_PROCESSING': - return 'confirm-order-component'; - case 'MS_WAREHOUSE_RECEIVING': - return 'receive-step-component'; - case 'MS_WAREHOUSE_PACKING': - return 'packing-step-component'; - case 'MS_NO_WAREHOUSE_PENDING_SUPPLIER': - return 'supplier-packing-step-component'; - case 'PS_SHIPPING': - return 'shipping-step-component'; - case 'MS_WAREHOUSE_ARRIVAL': - return 'arrival-step-component'; - case 'MS_WAREHOUSE_UNPACKING': - return 'unpacking-step-component'; - case 'PS_DELIVERY': - if(this.order.complete){ - return 'complete-order-component'; - } - return 'delivery-step-component'; - } - } } } \ No newline at end of file diff --git a/resources/assets/vue/components/order/elements/OrderHeaderComponenet.vue b/resources/assets/vue/components/order/elements/OrderHeaderComponenet.vue new file mode 100644 index 0000000..1550e9a --- /dev/null +++ b/resources/assets/vue/components/order/elements/OrderHeaderComponenet.vue @@ -0,0 +1,58 @@ + + + \ No newline at end of file diff --git a/resources/assets/vue/components/order/elements/OrderHistoryComponenet.vue b/resources/assets/vue/components/order/elements/OrderHistoryComponenet.vue new file mode 100644 index 0000000..b7615d6 --- /dev/null +++ b/resources/assets/vue/components/order/elements/OrderHistoryComponenet.vue @@ -0,0 +1,74 @@ + + + \ No newline at end of file diff --git a/resources/assets/vue/components/order/elements/OrderSelectComponent.vue b/resources/assets/vue/components/order/elements/OrderSelectComponent.vue new file mode 100644 index 0000000..6cbf5a2 --- /dev/null +++ b/resources/assets/vue/components/order/elements/OrderSelectComponent.vue @@ -0,0 +1,77 @@ + + + \ No newline at end of file diff --git a/resources/assets/vue/components/order/elements/OrdersProfileComponent.vue b/resources/assets/vue/components/order/elements/OrdersProfileComponent.vue new file mode 100644 index 0000000..64b468c --- /dev/null +++ b/resources/assets/vue/components/order/elements/OrdersProfileComponent.vue @@ -0,0 +1,43 @@ + + \ No newline at end of file diff --git a/resources/assets/vue/components/order/elements/ArrivalStepComponenet.vue b/resources/assets/vue/components/order/elements/steps/ArrivalStepComponenet.vue similarity index 96% rename from resources/assets/vue/components/order/elements/ArrivalStepComponenet.vue rename to resources/assets/vue/components/order/elements/steps/ArrivalStepComponenet.vue index d8f3459..bc1582c 100644 --- a/resources/assets/vue/components/order/elements/ArrivalStepComponenet.vue +++ b/resources/assets/vue/components/order/elements/steps/ArrivalStepComponenet.vue @@ -12,7 +12,7 @@ diff --git a/resources/assets/vue/components/order/forms/OrderFormComponent.vue b/resources/assets/vue/components/order/forms/OrderFormComponent.vue index a8d770e..8efbf16 100644 --- a/resources/assets/vue/components/order/forms/OrderFormComponent.vue +++ b/resources/assets/vue/components/order/forms/OrderFormComponent.vue @@ -48,7 +48,7 @@ \ No newline at end of file diff --git a/resources/assets/vue/components/order/lists/OrdersListComponenet.vue b/resources/assets/vue/components/order/lists/OrdersListComponent.vue similarity index 100% rename from resources/assets/vue/components/order/lists/OrdersListComponenet.vue rename to resources/assets/vue/components/order/lists/OrdersListComponent.vue diff --git a/resources/assets/vue/components/order/lists/OrdersSelectListComponent.vue b/resources/assets/vue/components/order/lists/OrdersSelectListComponent.vue new file mode 100644 index 0000000..6916d4e --- /dev/null +++ b/resources/assets/vue/components/order/lists/OrdersSelectListComponent.vue @@ -0,0 +1,92 @@ + + + \ No newline at end of file diff --git a/resources/assets/vue/components/warehouse/elements/WarehouseProfileComponenet.vue b/resources/assets/vue/components/warehouse/elements/WarehouseProfileComponenet.vue index ce00985..1f7e1c8 100644 --- a/resources/assets/vue/components/warehouse/elements/WarehouseProfileComponenet.vue +++ b/resources/assets/vue/components/warehouse/elements/WarehouseProfileComponenet.vue @@ -126,6 +126,13 @@ +
+
+ +
+
@@ -143,6 +150,7 @@ this.fetchWarehouse(); }, methods: { + route: route, fetchWarehouse(){ fetch(route('api.warehouse.profile', {'id': this.warehouseId})).then(response => response.json()) .then(response => { diff --git a/resources/assets/vue/components/warehouse/forms/WarehouseFormComponent.vue b/resources/assets/vue/components/warehouse/forms/WarehouseFormComponent.vue index c760a34..e919ebe 100644 --- a/resources/assets/vue/components/warehouse/forms/WarehouseFormComponent.vue +++ b/resources/assets/vue/components/warehouse/forms/WarehouseFormComponent.vue @@ -39,7 +39,7 @@