From c0e47c3effb829f80998b245553af6569e4602cd Mon Sep 17 00:00:00 2001 From: Dillon Ngo Date: Fri, 14 Nov 2025 00:12:28 +0800 Subject: [PATCH] Manual Invoice / BA - drop down listing new UI --- .../bookings/forms/BookingFormComponent.vue | 64 +++++++++++-------- .../forms/CurrencyConverterComponent.vue | 2 +- .../forms/PurchaseOrderFormComponent.vue | 6 +- 3 files changed, 42 insertions(+), 30 deletions(-) diff --git a/resources/assets/vue/components/bookings/forms/BookingFormComponent.vue b/resources/assets/vue/components/bookings/forms/BookingFormComponent.vue index 779fd6ad..bda010ab 100644 --- a/resources/assets/vue/components/bookings/forms/BookingFormComponent.vue +++ b/resources/assets/vue/components/bookings/forms/BookingFormComponent.vue @@ -72,8 +72,17 @@
-
-
+
+
+
+
+
{{service.name}}
+
+
+
+
+
+
-
-
-
-
{{service.name}}
-
-
-
@@ -140,11 +142,11 @@

The recipient can expect to receive the transfer within 3-5 working days. Explore our BANK TRANSFER (SAVER) option for a better rate!

Enjoy a better rate with this option! The recipient will receive the transfer after 5-7 working days.

You can request Pay-on-Behalf via Alipay for platforms like Taobao, 1688, Pinduoduo, or any Alipay-supported platform.
Please use Alipay account "2766384544@QQ.com" to apply for Daifu. This account may change, so always confirm the latest Alipay account before placing an order.

-

The customer may request an official invoice first for Bank submission (e.g. BA Trade Line).

+

The customer may request an official invoice first for Bank submission (e.g. BA Trade Line).

The 2% service fee is already included in each product unit price, so it will not appear separately.
🕓 Transfer will be processed once bank payment is received.

-

The customer may request an official invoice first for Bank submission (e.g. BA Trade Line).

+

The customer may request an official invoice first for Bank submission (e.g. BA Trade Line).

Invoice will show a 2% service fee as a separate item.
🕓 Transfer will be processed once bank payment is received.

@@ -253,7 +255,7 @@ subservice: null, option: null }, - serviceInfo: { + hardcodeBankingInvoiceServices: { services: [ { id: 1, @@ -261,11 +263,11 @@ subservices: [ { id: 14, - name: "(IN) BANK TRANSFER", + name: "(IN) BANK TRANSFER (CNY/USD) - BA", }, { id: 15, - name: "(EX) BANK TRANSFER", + name: "(EX) BANK TRANSFER (CNY/USD) - BA", }, ] }, @@ -274,12 +276,12 @@ name: "ALIPAY TRANSFER", subservices: [ { - id: 14, - name: "(IN) ALIPAY TRANSFER", + id: 17, + name: "(IN) ALIPAY - BA", }, { - id: 15, - name: "(EX) ALIPAY TRANSFER", + id: 16, + name: "(EX) ALIPAY - BA", }, ] }, @@ -288,12 +290,12 @@ name: "ENTERPRISE TO ENTERPRISE 公打公", subservices: [ { - id: 14, - name: "(IN) ENTERPRISE TO ENTERPRISE 公打公", + id: 18, + name: "(IN) ENTERPRISE TO ENTERPRISE - BA", }, { - id: 15, - name: "(EX) ENTERPRISE TO ENTERPRISE 公打公", + id: 19, + name: "(EX) ENTERPRISE TO ENTERPRISE - BA", }, ] }, @@ -314,6 +316,16 @@ this.summary.recipientBanks = this.data.recipient_banks.accounts; }, + mounted() { + this.hardcodeBankingInvoiceServices.services.forEach(service => { + service.subservices = service.subservices.map(sub => { + const match = this.data.services.find(s => s.id === sub.id); + return match + ? { ...sub, name: match.name, currencies: match.currencies } + : sub; + }); + }); + }, computed: { displaySelection() { var defaultName = "BANKING INVOICE"; @@ -353,8 +365,8 @@ this.innerDropdownHovered.service = service; this.innerDropdownHovered.subservice = null; }, - selectSubservice(service, svc, sub) { - this.updateServiceType(service); + selectSubservice(svc, sub) { + this.updateServiceType(sub); this.innerDropdownSelected = { service: svc, subservice: sub }; this.innerDropdownSelected.subservice = sub; diff --git a/resources/assets/vue/components/bookings/forms/CurrencyConverterComponent.vue b/resources/assets/vue/components/bookings/forms/CurrencyConverterComponent.vue index 489458b7..317918c6 100644 --- a/resources/assets/vue/components/bookings/forms/CurrencyConverterComponent.vue +++ b/resources/assets/vue/components/bookings/forms/CurrencyConverterComponent.vue @@ -222,7 +222,7 @@ }) }, disabledMyr(){ - if (this.data.id === 14 || this.data.id === 15) { //default for service type manual / banking invoice + if (this.data.id === 14 || this.data.id === 15 || this.data.id === 16 || this.data.id === 17 || this.data.id === 18 || this.data.id === 19) { //default for service type manual / banking invoice return false; } diff --git a/resources/assets/vue/components/bookings/forms/PurchaseOrderFormComponent.vue b/resources/assets/vue/components/bookings/forms/PurchaseOrderFormComponent.vue index 7aa47d49..a96af8fc 100644 --- a/resources/assets/vue/components/bookings/forms/PurchaseOrderFormComponent.vue +++ b/resources/assets/vue/components/bookings/forms/PurchaseOrderFormComponent.vue @@ -206,7 +206,7 @@
-
+
@@ -216,7 +216,7 @@
-