From a19db06b6bd6b3d2bc1c59fb5c89f1ffab45543b Mon Sep 17 00:00:00 2001 From: omair saleh Date: Tue, 5 Apr 2022 11:20:45 +0800 Subject: [PATCH 01/11] custom clearance status --- app/Http/Resources/TransportResource.php | 6 ++++-- .../vue/components/orders/elements/PackageComponent.vue | 2 +- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/app/Http/Resources/TransportResource.php b/app/Http/Resources/TransportResource.php index 2677782f..960579ad 100644 --- a/app/Http/Resources/TransportResource.php +++ b/app/Http/Resources/TransportResource.php @@ -16,6 +16,7 @@ class TransportResource extends JsonResource */ public function toArray($request) { + $currentSchedule = $this->schedules()->where('status', '=', ApprovalStatus::APPROVED)->first(); return [ 'id' => $this->id, 'type' => $this->type, @@ -24,9 +25,10 @@ class TransportResource extends JsonResource 'dispatch_date' => $this->dispatch_date ? $this->dispatch_date->format('d-m-Y') : $this->dispatch_date, 'drop_date' => $this->drop_date ? $this->drop_date->format('d-m-Y') : $this->drop_date, 'status' => $this->status, - 'current_schedule' => new ScheduleResource($this->schedules()->where('status', '=', ApprovalStatus::APPROVED)->first()), + 'current_schedule' => new ScheduleResource($currentSchedule), 'schedule_history' => ScheduleResource::collection($this->schedules()->where('status', '=', ApprovalStatus::EXPIRED)->get()), - 'dropped_days' => Carbon::now()->diffInDays($this->drop_date, false) + 'dropped_days' => Carbon::now()->diffInDays($this->drop_date, false), + 'schedule_complete' => $currentSchedule->eta >= Carbon::now() ]; } } diff --git a/resources/assets/vue/components/orders/elements/PackageComponent.vue b/resources/assets/vue/components/orders/elements/PackageComponent.vue index 11c9386b..44401377 100644 --- a/resources/assets/vue/components/orders/elements/PackageComponent.vue +++ b/resources/assets/vue/components/orders/elements/PackageComponent.vue @@ -50,7 +50,7 @@
Status -

{{status}}

+

{{item.container ? item.container.transport.schedule_complete ? 'Custom Clearance' : status : status}}

Container From 6910dce35ffa95ab7302969e4368416a49d5d87b Mon Sep 17 00:00:00 2001 From: omair saleh Date: Tue, 5 Apr 2022 11:23:39 +0800 Subject: [PATCH 02/11] custom clearance status --- app/Http/Resources/TransportResource.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/Http/Resources/TransportResource.php b/app/Http/Resources/TransportResource.php index 960579ad..df533aed 100644 --- a/app/Http/Resources/TransportResource.php +++ b/app/Http/Resources/TransportResource.php @@ -28,7 +28,7 @@ class TransportResource extends JsonResource 'current_schedule' => new ScheduleResource($currentSchedule), 'schedule_history' => ScheduleResource::collection($this->schedules()->where('status', '=', ApprovalStatus::EXPIRED)->get()), 'dropped_days' => Carbon::now()->diffInDays($this->drop_date, false), - 'schedule_complete' => $currentSchedule->eta >= Carbon::now() + 'schedule_complete' => $currentSchedule->eta <= Carbon::now() ]; } } From 2c29e5939e3685a4a61b5331da45aa29538d2c01 Mon Sep 17 00:00:00 2001 From: omair saleh Date: Tue, 5 Apr 2022 11:25:56 +0800 Subject: [PATCH 03/11] custom clearance status --- app/Http/Resources/TransportResource.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/Http/Resources/TransportResource.php b/app/Http/Resources/TransportResource.php index df533aed..c69bfd06 100644 --- a/app/Http/Resources/TransportResource.php +++ b/app/Http/Resources/TransportResource.php @@ -28,7 +28,7 @@ class TransportResource extends JsonResource 'current_schedule' => new ScheduleResource($currentSchedule), 'schedule_history' => ScheduleResource::collection($this->schedules()->where('status', '=', ApprovalStatus::EXPIRED)->get()), 'dropped_days' => Carbon::now()->diffInDays($this->drop_date, false), - 'schedule_complete' => $currentSchedule->eta <= Carbon::now() + 'schedule_complete' => $currentSchedule ? $currentSchedule->eta <= Carbon::now() : false ]; } } From 68d961a68115efee4bf2b170744eb27d60a5f2ae Mon Sep 17 00:00:00 2001 From: omair saleh Date: Tue, 5 Apr 2022 11:38:21 +0800 Subject: [PATCH 04/11] custom clearance status --- .../assets/vue/components/orders/elements/PackageComponent.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/assets/vue/components/orders/elements/PackageComponent.vue b/resources/assets/vue/components/orders/elements/PackageComponent.vue index 44401377..63fd48af 100644 --- a/resources/assets/vue/components/orders/elements/PackageComponent.vue +++ b/resources/assets/vue/components/orders/elements/PackageComponent.vue @@ -50,7 +50,7 @@
Status -

{{item.container ? item.container.transport.schedule_complete ? 'Custom Clearance' : status : status}}

+

{{item.container ? item.container.transport.schedule_complete && status === 'Shipping' ? 'Custom Clearance' : status : status}}

Container From 0fa0d8daab695f4bb6ce7518bf25b8e3a8021755 Mon Sep 17 00:00:00 2001 From: edmondlang Date: Wed, 6 Apr 2022 13:30:16 +0800 Subject: [PATCH 05/11] Shipping portal - export function for Delivery list (only 'Pending Arrangement' tab) --- .../ExportsPendingArrangementDeliveryList.php | 70 +++++++++++++++++++ ...endingArrangementPackingListController.php | 29 ++++++++ resources/views/pages/delivery_list.blade.php | 12 +++- routes/web.php | 1 + 4 files changed, 111 insertions(+), 1 deletion(-) create mode 100644 app/Classes/Modules/Exports/Services/ExportsPendingArrangementDeliveryList.php create mode 100644 app/Http/Controllers/Exports/ExportPendingArrangementPackingListController.php diff --git a/app/Classes/Modules/Exports/Services/ExportsPendingArrangementDeliveryList.php b/app/Classes/Modules/Exports/Services/ExportsPendingArrangementDeliveryList.php new file mode 100644 index 00000000..0d52ca72 --- /dev/null +++ b/app/Classes/Modules/Exports/Services/ExportsPendingArrangementDeliveryList.php @@ -0,0 +1,70 @@ +whereHas('containers', function ($query){ + $query->where('containers.status', ApprovalStatus::COMPLETED); + })->whereDoesntHave('transports'); + } + + /** + * @param PackingList $packingList + * + * @return array + */ + public function map($packingList): array + { + $order = $packingList->owner; + $marking = $order->companyModule->inviters()->withPivot('invitee_reference')->first()->pivot->invitee_reference; + $defaultAddress = $order->companyModule->addresses()->defaultAddress()->first(); + $defaultAddress = $defaultAddress ? $defaultAddress : $order->companyModule->addresses()->first(); + $address = $defaultAddress->street_one.', '.$defaultAddress->street_two.' '.$defaultAddress->district->name.' '.$defaultAddress->postcode.' '.$defaultAddress->state->name.' '.$defaultAddress->country->name; + $contacts = $defaultAddress->contacts->first() ? $defaultAddress->contacts->first(): ''; + $transport = $packingList->transports()->first(); + + return [ + $order->reference, + $marking, + $packingList->packages()->sum('quantity'), + $defaultAddress->remarks->first() ? $defaultAddress->remarks->first()->content: '', + $contacts ? $contacts ->reference : '', + $contacts ? $contacts ->phone : '', + $transport ? Carbon::now()->diffInDays($transport->drop_date, false) : '', + $address + ]; + } +} \ No newline at end of file diff --git a/app/Http/Controllers/Exports/ExportPendingArrangementPackingListController.php b/app/Http/Controllers/Exports/ExportPendingArrangementPackingListController.php new file mode 100644 index 00000000..8575e88c --- /dev/null +++ b/app/Http/Controllers/Exports/ExportPendingArrangementPackingListController.php @@ -0,0 +1,29 @@ +headers->set('Authorization', 'Bearer '.$token); + } + + public function export(Request $request) { + $exportsPendingArrangementDeliveryList = new ExportsPendingArrangementDeliveryList($request); + $response = $exportsPendingArrangementDeliveryList->download('pending-arrangement-packing-list.xls', Excel::XLS, ['Content-Type' => 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet']); + ob_end_clean(); + return $response; + } +} diff --git a/resources/views/pages/delivery_list.blade.php b/resources/views/pages/delivery_list.blade.php index 2f27f146..89717e81 100644 --- a/resources/views/pages/delivery_list.blade.php +++ b/resources/views/pages/delivery_list.blade.php @@ -77,7 +77,17 @@
-
+ + + +
Marking
Quantity
CBM
diff --git a/routes/web.php b/routes/web.php index 98a630ec..8ba22313 100644 --- a/routes/web.php +++ b/routes/web.php @@ -231,6 +231,7 @@ Route::get('/warehouse/{id}/show', function ($id) { })->name('warehouse.show'); Route::get('/export/customer-latest-order-date/f614e339d7058904a831aad742e24d55', 'Exports\ExportCustomersToExcelController@export'); Route::get('/export/packing-list/{id}', 'Exports\ExportContainerPackingListController@export')->name('container.packaging_list.export'); +Route::get('/export/pending-arrangement-delivery-list', 'Exports\ExportPendingArrangementPackingListController@export')->name('packaging_list.pending_arrangement.export'); Route::get('/settings', function () { return view('pages.settings'); From 10d62dd8d182e814e520353800e9e0952a103159 Mon Sep 17 00:00:00 2001 From: edmondlang Date: Wed, 6 Apr 2022 13:53:43 +0800 Subject: [PATCH 06/11] update export delivery list - include state and postcode --- .../ExportsPendingArrangementDeliveryList.php | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/app/Classes/Modules/Exports/Services/ExportsPendingArrangementDeliveryList.php b/app/Classes/Modules/Exports/Services/ExportsPendingArrangementDeliveryList.php index 0d52ca72..7a09bf62 100644 --- a/app/Classes/Modules/Exports/Services/ExportsPendingArrangementDeliveryList.php +++ b/app/Classes/Modules/Exports/Services/ExportsPendingArrangementDeliveryList.php @@ -27,7 +27,9 @@ class ExportsPendingArrangementDeliveryList implements FromQuery, WithHeadings, 'Contact Person Name', 'Contact Number', 'Delivery Date', - 'Delivery Address' + 'Delivery Address', + 'Delivery State', + 'Delivery Postcode' ]; } @@ -54,7 +56,8 @@ class ExportsPendingArrangementDeliveryList implements FromQuery, WithHeadings, $defaultAddress = $defaultAddress ? $defaultAddress : $order->companyModule->addresses()->first(); $address = $defaultAddress->street_one.', '.$defaultAddress->street_two.' '.$defaultAddress->district->name.' '.$defaultAddress->postcode.' '.$defaultAddress->state->name.' '.$defaultAddress->country->name; $contacts = $defaultAddress->contacts->first() ? $defaultAddress->contacts->first(): ''; - $transport = $packingList->transports()->first(); + $originalPackingList = $packingList->owner instanceof PackingList ? $packingList->owner : $packingList; + $transport = $originalPackingList->containers()->first()->transports()->first(); return [ $order->reference, @@ -63,8 +66,10 @@ class ExportsPendingArrangementDeliveryList implements FromQuery, WithHeadings, $defaultAddress->remarks->first() ? $defaultAddress->remarks->first()->content: '', $contacts ? $contacts ->reference : '', $contacts ? $contacts ->phone : '', - $transport ? Carbon::now()->diffInDays($transport->drop_date, false) : '', - $address + $transport ? Carbon::now()->diffInDays($transport->drop_date, false) . ' Days' : '', + $address, + $defaultAddress->state->name, + $defaultAddress->postcode ]; } } \ No newline at end of file From bf325ff028554ff30f027e18cfc918931291f1ec Mon Sep 17 00:00:00 2001 From: omair saleh Date: Wed, 6 Apr 2022 15:55:31 +0800 Subject: [PATCH 07/11] update pending delivery report excel --- .../ExportsPendingArrangementDeliveryList.php | 38 +++++++++++-------- 1 file changed, 22 insertions(+), 16 deletions(-) diff --git a/app/Classes/Modules/Exports/Services/ExportsPendingArrangementDeliveryList.php b/app/Classes/Modules/Exports/Services/ExportsPendingArrangementDeliveryList.php index 7a09bf62..cd9f9e47 100644 --- a/app/Classes/Modules/Exports/Services/ExportsPendingArrangementDeliveryList.php +++ b/app/Classes/Modules/Exports/Services/ExportsPendingArrangementDeliveryList.php @@ -20,16 +20,19 @@ class ExportsPendingArrangementDeliveryList implements FromQuery, WithHeadings, public function headings(): array { return [ - 'Order Number', + 'Container Ref.', + 'ETA', + 'Unstuffing', 'Marking', + 'Order Number', 'Quantity', + 'State', + 'Postcode', + 'Address', + 'PIC', + 'Phone', 'Remark', - 'Contact Person Name', - 'Contact Number', - 'Delivery Date', - 'Delivery Address', - 'Delivery State', - 'Delivery Postcode' + 'Delay Days' ]; } @@ -50,26 +53,29 @@ class ExportsPendingArrangementDeliveryList implements FromQuery, WithHeadings, */ public function map($packingList): array { + $container = $packingList->containers()->first(); + $ContainerTransport = $container->transports()->first(); $order = $packingList->owner; $marking = $order->companyModule->inviters()->withPivot('invitee_reference')->first()->pivot->invitee_reference; - $defaultAddress = $order->companyModule->addresses()->defaultAddress()->first(); - $defaultAddress = $defaultAddress ? $defaultAddress : $order->companyModule->addresses()->first(); - $address = $defaultAddress->street_one.', '.$defaultAddress->street_two.' '.$defaultAddress->district->name.' '.$defaultAddress->postcode.' '.$defaultAddress->state->name.' '.$defaultAddress->country->name; - $contacts = $defaultAddress->contacts->first() ? $defaultAddress->contacts->first(): ''; + $address = $order->addresses()->where('status', ApprovalStatus::APPROVED)->first(); + $contacts = $address->contacts->first() ? $address->contacts->first(): ''; $originalPackingList = $packingList->owner instanceof PackingList ? $packingList->owner : $packingList; $transport = $originalPackingList->containers()->first()->transports()->first(); return [ - $order->reference, + $container->reference, + $ContainerTransport->schedules()->where('status', '=', ApprovalStatus::APPROVED)->first(), + $ContainerTransport->drop_date, $marking, + $order->reference, $packingList->packages()->sum('quantity'), - $defaultAddress->remarks->first() ? $defaultAddress->remarks->first()->content: '', + $address->state->name, + $address->postcode, + $address->street_one.', '.$address->street_two.' '.$address->district->name.' '.$address->postcode.' '.$address->state->name.' '.$address->country->name, + $address->remarks->first() ? $address->remarks->first()->content: '', $contacts ? $contacts ->reference : '', $contacts ? $contacts ->phone : '', $transport ? Carbon::now()->diffInDays($transport->drop_date, false) . ' Days' : '', - $address, - $defaultAddress->state->name, - $defaultAddress->postcode ]; } } \ No newline at end of file From 5727801918334dfa3326f0a2827e3c6319a67e11 Mon Sep 17 00:00:00 2001 From: omair saleh Date: Wed, 6 Apr 2022 15:59:28 +0800 Subject: [PATCH 08/11] update pending delivery report excel --- .../Services/ExportsPendingArrangementDeliveryList.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/Classes/Modules/Exports/Services/ExportsPendingArrangementDeliveryList.php b/app/Classes/Modules/Exports/Services/ExportsPendingArrangementDeliveryList.php index cd9f9e47..f610aa2c 100644 --- a/app/Classes/Modules/Exports/Services/ExportsPendingArrangementDeliveryList.php +++ b/app/Classes/Modules/Exports/Services/ExportsPendingArrangementDeliveryList.php @@ -64,10 +64,11 @@ class ExportsPendingArrangementDeliveryList implements FromQuery, WithHeadings, return [ $container->reference, - $ContainerTransport->schedules()->where('status', '=', ApprovalStatus::APPROVED)->first(), + $ContainerTransport->schedules()->where('status', '=', ApprovalStatus::APPROVED)->first()->eta, $ContainerTransport->drop_date, $marking, $order->reference, + $transport ? Carbon::now()->diffInDays($transport->drop_date, false) . ' Days' : '', $packingList->packages()->sum('quantity'), $address->state->name, $address->postcode, @@ -75,7 +76,6 @@ class ExportsPendingArrangementDeliveryList implements FromQuery, WithHeadings, $address->remarks->first() ? $address->remarks->first()->content: '', $contacts ? $contacts ->reference : '', $contacts ? $contacts ->phone : '', - $transport ? Carbon::now()->diffInDays($transport->drop_date, false) . ' Days' : '', ]; } } \ No newline at end of file From e57dc231e67c637137e24ad6d45542d7423ba1d0 Mon Sep 17 00:00:00 2001 From: omair saleh Date: Wed, 6 Apr 2022 16:01:03 +0800 Subject: [PATCH 09/11] update pending delivery report excel --- .../Services/ExportsPendingArrangementDeliveryList.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/Classes/Modules/Exports/Services/ExportsPendingArrangementDeliveryList.php b/app/Classes/Modules/Exports/Services/ExportsPendingArrangementDeliveryList.php index f610aa2c..678c9c06 100644 --- a/app/Classes/Modules/Exports/Services/ExportsPendingArrangementDeliveryList.php +++ b/app/Classes/Modules/Exports/Services/ExportsPendingArrangementDeliveryList.php @@ -26,13 +26,13 @@ class ExportsPendingArrangementDeliveryList implements FromQuery, WithHeadings, 'Marking', 'Order Number', 'Quantity', + 'Delay Days', 'State', 'Postcode', 'Address', 'PIC', 'Phone', - 'Remark', - 'Delay Days' + 'Remark' ]; } From 5b370a299cfef1c760310d5871c4f6281577001d Mon Sep 17 00:00:00 2001 From: omair saleh Date: Wed, 6 Apr 2022 16:01:31 +0800 Subject: [PATCH 10/11] update pending delivery report excel --- .../Exports/Services/ExportsPendingArrangementDeliveryList.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/Classes/Modules/Exports/Services/ExportsPendingArrangementDeliveryList.php b/app/Classes/Modules/Exports/Services/ExportsPendingArrangementDeliveryList.php index 678c9c06..bd46f9d0 100644 --- a/app/Classes/Modules/Exports/Services/ExportsPendingArrangementDeliveryList.php +++ b/app/Classes/Modules/Exports/Services/ExportsPendingArrangementDeliveryList.php @@ -25,8 +25,8 @@ class ExportsPendingArrangementDeliveryList implements FromQuery, WithHeadings, 'Unstuffing', 'Marking', 'Order Number', - 'Quantity', 'Delay Days', + 'Quantity', 'State', 'Postcode', 'Address', From bed78c053a6e027bedd048b0da848e1497b10980 Mon Sep 17 00:00:00 2001 From: omair saleh Date: Thu, 7 Apr 2022 10:59:50 +0800 Subject: [PATCH 11/11] remove memo --- .../CustomerProfileSectionComponent.vue | 31 ------------------- 1 file changed, 31 deletions(-) diff --git a/resources/assets/vue/components/companies/sections/CustomerProfileSectionComponent.vue b/resources/assets/vue/components/companies/sections/CustomerProfileSectionComponent.vue index b10344e3..749e7ef8 100644 --- a/resources/assets/vue/components/companies/sections/CustomerProfileSectionComponent.vue +++ b/resources/assets/vue/components/companies/sections/CustomerProfileSectionComponent.vue @@ -6,37 +6,6 @@
-