From 8e3d9b2bf356033b94d109498d559265fc70fca5 Mon Sep 17 00:00:00 2001 From: jorgep Date: Thu, 28 Nov 2024 14:52:39 +0100 Subject: [PATCH] feat: refs #7936 calculate exchange & update taxable base --- src/composables/getExchange.js | 16 ++++++++++++++++ .../InvoiceIn/Card/InvoiceInBasicData.vue | 1 + src/pages/InvoiceIn/Card/InvoiceInVat.vue | 19 +++++++++++++++---- 3 files changed, 32 insertions(+), 4 deletions(-) create mode 100644 src/composables/getExchange.js diff --git a/src/composables/getExchange.js b/src/composables/getExchange.js new file mode 100644 index 000000000..e81e9e895 --- /dev/null +++ b/src/composables/getExchange.js @@ -0,0 +1,16 @@ +import axios from 'axios'; +export async function getExchange(amount, currencyFk, dated, decimalPlaces = 2) { + try { + const { data } = await axios.get('ReferenceRates/findOne', { + params: { + filter: { + fields: ['value'], + where: { currencyFk, dated }, + }, + }, + }); + return (amount / data.value).toFixed(decimalPlaces); + } catch (e) { + return null; + } +} diff --git a/src/pages/InvoiceIn/Card/InvoiceInBasicData.vue b/src/pages/InvoiceIn/Card/InvoiceInBasicData.vue index d22ee5b16..fd5ea0931 100644 --- a/src/pages/InvoiceIn/Card/InvoiceInBasicData.vue +++ b/src/pages/InvoiceIn/Card/InvoiceInBasicData.vue @@ -249,6 +249,7 @@ function deleteFile(dmsFk) { :options="currencies" option-value="id" option-label="code" + sort-by="id" /> arrayData.store.data); -const invoiceId = +useRoute().params.id; const currency = computed(() => invoiceIn.value?.currency?.code); const expenses = ref([]); const sageTaxTypes = ref([]); @@ -106,7 +107,7 @@ const filter = { 'transactionTypeSageFk', ], where: { - invoiceInFk: invoiceId, + invoiceInFk: route.params.id, }, }; @@ -148,10 +149,10 @@ const formatOpt = (row, { model, options }, prop) => { data-key="InvoiceInTaxes" url="InvoiceInTaxes" :filter="filter" - :data-required="{ invoiceInFk: invoiceId }" + :data-required="{ invoiceInFk: $route.params.id }" auto-load v-model:selected="rowsSelected" - :go-to="`/invoice-in/${invoiceId}/due-day`" + :go-to="`/invoice-in/${$route.params.id}/due-day`" >