From 6c10c82fcce84c0a6605e33bbde7ebf7267bd3a0 Mon Sep 17 00:00:00 2001 From: Methapon Metanipat Date: Wed, 16 Oct 2024 16:22:45 +0700 Subject: [PATCH] feat: add calc vat into product (will be calc in quotation) --- .../04_product-service/PriceDataComponent.vue | 17 +++++++++++++++++ src/i18n/eng/index.ts | 1 + src/i18n/tha/index.ts | 1 + src/pages/04_product-service/MainPage.vue | 5 +++++ src/stores/product-service/types.ts | 3 +++ 5 files changed, 27 insertions(+) diff --git a/src/components/04_product-service/PriceDataComponent.vue b/src/components/04_product-service/PriceDataComponent.vue index 1aee6669..ba8990bf 100644 --- a/src/components/04_product-service/PriceDataComponent.vue +++ b/src/components/04_product-service/PriceDataComponent.vue @@ -6,6 +6,7 @@ const serviceCharge = defineModel('serviceCharge'); const agentPrice = defineModel('agentPrice'); const price = defineModel('price'); const vatIncluded = defineModel('vatIncluded'); +const calcVat = defineModel('calcVat'); const price4Show = ref(''); const agentPrice4Show = ref(''); @@ -154,6 +155,22 @@ withDefaults( } " /> + +
+ + +
diff --git a/src/i18n/eng/index.ts b/src/i18n/eng/index.ts index 77d29531..7fd7a559 100644 --- a/src/i18n/eng/index.ts +++ b/src/i18n/eng/index.ts @@ -75,6 +75,7 @@ export default { about: 'About', total: 'Total', discount: 'Discount (Baht)', + calculateVat: 'Calculate VAT', discountAfterVat: 'Discount after vat', totalAfterDiscount: 'Total after discount', totalVatExcluded: 'Tax exemption amount', diff --git a/src/i18n/tha/index.ts b/src/i18n/tha/index.ts index d3c014f6..8b9f9c30 100644 --- a/src/i18n/tha/index.ts +++ b/src/i18n/tha/index.ts @@ -76,6 +76,7 @@ export default { total: 'ยอดรวม', discount: 'ส่วนลด (บาท)', discountAfterVat: 'ส่วนลดหลังคำนวณภาษี', + calculateVat: 'คำนวณภาษี', totalAfterDiscount: 'จำนวนเงินหลังหักส่วนลด', totalVatExcluded: 'จำนวนเงินยกเว้นภาษี', totalVatIncluded: 'จำนวนเงินที่คำนวณภาษี', diff --git a/src/pages/04_product-service/MainPage.vue b/src/pages/04_product-service/MainPage.vue index 14cf2fcf..34060ba8 100644 --- a/src/pages/04_product-service/MainPage.vue +++ b/src/pages/04_product-service/MainPage.vue @@ -252,6 +252,7 @@ const formDataProduct = ref({ productGroupId: '', remark: '', serviceCharge: 0, + calcVat: true, agentPrice: 0, price: 0, process: 0, @@ -982,12 +983,14 @@ async function assignFormDataProduct(data: Product) { detail: data.detail, name: data.name, code: data.code, + calcVat: data.calcVat, image: undefined, status: data.status, expenseType: data.expenseType, vatIncluded: data.vatIncluded, selectedImage: data.selectedImage, }; + console.log(data.calcVat); formDataProduct.value = { ...prevProduct.value }; } @@ -3519,6 +3522,7 @@ watch( v-model:agent-price="formDataProduct.agentPrice" v-model:service-charge="formDataProduct.serviceCharge" v-model:vat-included="formDataProduct.vatIncluded" + v-model:calc-vat="formDataProduct.calcVat" dense /> @@ -3702,6 +3706,7 @@ watch( v-model:agent-price="formDataProduct.agentPrice" v-model:service-charge="formDataProduct.serviceCharge" v-model:vat-included="formDataProduct.vatIncluded" + v-model:calc-vat="formDataProduct.calcVat" dense :priceDisplay="priceDisplay" /> diff --git a/src/stores/product-service/types.ts b/src/stores/product-service/types.ts index 8208f79e..fcc59cbd 100644 --- a/src/stores/product-service/types.ts +++ b/src/stores/product-service/types.ts @@ -136,6 +136,7 @@ export interface WorkItems { export interface Product { selectedImage?: string; + calcVat: boolean; expenseType: string; vatIncluded: boolean; remark: string; @@ -164,6 +165,7 @@ export interface ProductCreate { productGroupId: string; remark: string; serviceCharge: number; + calcVat?: boolean; agentPrice: number; price: number; process: number; @@ -181,6 +183,7 @@ export interface ProductUpdate { serviceCharge: number; agentPrice: number; price: number; + calcVat?: boolean; process: string; detail: string; name: string;