diff --git a/app/Classes/General/Eloquent/Filters/WithContainersPackages.php b/app/Classes/General/Eloquent/Filters/WithContainersPackages.php new file mode 100644 index 00000000..5fabff27 --- /dev/null +++ b/app/Classes/General/Eloquent/Filters/WithContainersPackages.php @@ -0,0 +1,20 @@ +with(['containers', 'packages']); + } +} diff --git a/app/Classes/Modules/PackingLists/Processors/ListPackingListsJobProcessor.php b/app/Classes/Modules/PackingLists/Processors/ListPackingListsJobProcessor.php index 4e67f7a1..2a85778e 100644 --- a/app/Classes/Modules/PackingLists/Processors/ListPackingListsJobProcessor.php +++ b/app/Classes/Modules/PackingLists/Processors/ListPackingListsJobProcessor.php @@ -37,7 +37,7 @@ class ListPackingListsJobProcessor */ public function execute(ListGenericJobObject $listGenericJobObject) { - $query = $this->listsPackingLists->execute($this->listsPackingLists->deserializeFilters($listGenericJobObject->getPayload()['filters']), ['page' => $listGenericJobObject->getPayload()['page']]); + $query = $this->listsPackingLists->execute($this->listsPackingLists->deserializeFilters($listGenericJobObject->getPayload()['filters']), ['page' => $listGenericJobObject->getPayload()['page'], 'with_containers_packages' => true]); foreach ($query->items() as &$item) { $item['userInfo'] = $listGenericJobObject->getUserInfo(); } diff --git a/app/Http/Resources/ListPackingListJobResource.php b/app/Http/Resources/ListPackingListJobResource.php index 348b64a0..1e6ad3aa 100644 --- a/app/Http/Resources/ListPackingListJobResource.php +++ b/app/Http/Resources/ListPackingListJobResource.php @@ -36,7 +36,8 @@ class ListPackingListJobResource extends JsonResource // $this->mergeWhen($this->owner instanceof Order, [ // 'order' => New OrderResource($this->owner) // ]), - 'packages' => PackageWithoutOrderResource::collection($packages), + 'container' => new ContainerResource($this->containers->first()), + 'packages' => PackageWithoutOrderResource::collection($this->packages), $this->mergeWhen($this->owner instanceof Order, [ 'order' => New OrderResource($this->owner) ]), 'shipping_transaction' => new TransactionResource($this->transactions()->where('type', TransactionType::SHIPPING_INVOICE)->whereNotIn('status', [ApprovalStatus::SUSPENDED, ApprovalStatus::EXPIRED])->first()), 'suspended_invoice' => new TransactionResource($this->transactions()->where('type', TransactionType::SHIPPING_INVOICE)->whereIn('status', [ApprovalStatus::SUSPENDED])->first()), diff --git a/app/Http/Resources/PackageWithoutOrderResource.php b/app/Http/Resources/PackageWithoutOrderResource.php index 4400aa44..fea5500b 100644 --- a/app/Http/Resources/PackageWithoutOrderResource.php +++ b/app/Http/Resources/PackageWithoutOrderResource.php @@ -16,9 +16,6 @@ class PackageWithoutOrderResource extends JsonResource */ public function toArray($request) { - - $originalPackingList = $this->packingList->owner instanceof PackingList ? $this->packingList->owner : $this->packingList; - return [ 'id' => $this->id, 'type' => $this->type, @@ -34,8 +31,8 @@ class PackageWithoutOrderResource extends JsonResource // $this->mergeWhen($originalPackingList->owner instanceof Order, [ // 'order' => New OrderResource($originalPackingList->owner) // ]), - 'container' => new ContainerResource($originalPackingList->containers()->first()), - 'transport' => new TransportResource($originalPackingList->transports()->first()) + // 'container' => new ContainerResource($originalPackingList->containers()->first()), + // 'transport' => new TransportResource($originalPackingList->transports()->first()) ]; } } diff --git a/resources/assets/vue/components/paymentsBilling/elements/AdminPaymentsBillingWithSearchPollingComponent.vue b/resources/assets/vue/components/paymentsBilling/elements/AdminPaymentsBillingWithSearchPollingComponent.vue index 120fc803..13df803e 100644 --- a/resources/assets/vue/components/paymentsBilling/elements/AdminPaymentsBillingWithSearchPollingComponent.vue +++ b/resources/assets/vue/components/paymentsBilling/elements/AdminPaymentsBillingWithSearchPollingComponent.vue @@ -42,7 +42,7 @@ --> - + diff --git a/resources/assets/vue/components/paymentsBilling/elements/SingleAdminPaymentsBillingComponent.vue b/resources/assets/vue/components/paymentsBilling/elements/SingleAdminPaymentsBillingComponent.vue new file mode 100644 index 00000000..825d9a67 --- /dev/null +++ b/resources/assets/vue/components/paymentsBilling/elements/SingleAdminPaymentsBillingComponent.vue @@ -0,0 +1,322 @@ + + + + + + + + Marking + + + {{item.order.company_module.marking}}/{{item.order.reference}} + {{item.loading_days_ago}} + + Unclaimed Packing List + + + + Container + {{item.container.container_reference}} + + + Invoice Date + n/a + {{ item.shipping_transaction.updated_at }} + + + + Address + {{ item.order.address.post_code_area}} + {{ item.order.address.district.name +' '+item.order.address.postcode+' '+item.order.address.state.name }} + + Unclaimed + + + Status + {{ invoice_status }} + + + Amount + n/a + MYR {{ item.shipping_transaction.amount.toFixed(2) }} + + + + + + + + + + + + + + + + + + + + + + + + + + Add Warehouse Transport + + + + + + + + + + + + + + + Add Billing Address + + + + + + + + Edit billing Address + + + + + + + + + + + + Define Location + + + + + Generate Invoice + + + Generate Invoice + + + + + + + + + + + + + + + + + + + + + + + + + + + Container Reference + {{ item.container ? item.container.container_reference : 'n/a' }} + n/a + + + Due Date + + + {{ item.container.transport.drop_date == null ? item.container.transport.current_schedule.etd : item.container.transport.drop_date }} + n/a + + n/a + + n/a + + + + Total CBM + {{ (parseFloat(cbm) + parseFloat(overweight)).toFixed(3) }} + + + + + + Invoice Details + + + + + Subtotal + {{ item.shipping_transaction.amount - item.shipping_transaction.service_charge - item.shipping_transaction.tax }} + + + Service Charges + {{ item.shipping_transaction.service_charge }} + + + Tax + {{ item.shipping_transaction.tax }} + + + Total + {{ item.shipping_transaction.amount }} + + + + + + + + + + + + + Payment Attempt + + + + + + + + + + + + + + Payment History + + + + + + + + + + + + + + + + + + + + Total Amount: + + + MYR {{(Math.round((item.shipping_transaction.amount + Number.EPSILON) * 100) / 100).toFixed(2).toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",")}} + + + + + Paid Total: + + + + Paid Total + + + + + Floating Amount: + + + + Floating Amount + + + + + OutStanding Total: + + + MYR {{(Math.round((item.shipping_transaction.outstanding + Number.EPSILON) * 100) / 100).toFixed(2).toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",")}} + + + + + Make Payment + + + + + + + + + + + + + + +
Marking
{{item.loading_days_ago}}
Container
Invoice Date
Address
Status
Amount
Container Reference
Due Date
Total CBM
Subtotal
Service Charges
Tax
Total