From 4f72c53648f536125166f0c490365519050410af Mon Sep 17 00:00:00 2001 From: florianfederspiel Date: Tue, 4 Feb 2025 12:45:50 +0100 Subject: [PATCH] Added TitleSims --- pages/createDocument/edit/[[id]].vue | 40 ++++++++++++++++++++++++++-- 1 file changed, 38 insertions(+), 2 deletions(-) diff --git a/pages/createDocument/edit/[[id]].vue b/pages/createDocument/edit/[[id]].vue index ae5a895..e93c923 100644 --- a/pages/createDocument/edit/[[id]].vue +++ b/pages/createDocument/edit/[[id]].vue @@ -540,6 +540,23 @@ const documentTotal = computed(() => { } }) + //Title Sum + + let titleSums = {} + let lastTitle = "" + + itemInfo.value.rows.forEach(row => { + if(row.mode === 'title'){ + titleSums[`${row.pos} - ${row.text}`] = 0 + lastTitle = `${row.pos} - ${row.text}` + } else if(!['pagebreak','text'].includes(row.mode)){ + titleSums[lastTitle] = Number(titleSums[lastTitle]) + Number(Number(row.quantity) * Number(row.price) * (1 - Number(row.discountPercent) /100) ) + } + }) + + + + let totalGross = Number(totalNet.toFixed(2)) + Number(total19.toFixed(2)) + Number(total7.toFixed(2)) let totalGrossAlreadyPaid = 0 @@ -559,6 +576,7 @@ const documentTotal = computed(() => { let sumToPay = totalGross - totalGrossAlreadyPaid return { + titleSums: titleSums, totalNet: totalNet, total19: total19, total7: total7, @@ -688,6 +706,14 @@ const getDocumentData = () => { let contactPerson = profileStore.getProfileById(itemInfo.value.contactPerson) + let returnTitleSums = {} + Object.keys(documentTotal.value.titleSums).forEach(key => { + returnTitleSums[key] = renderCurrency(documentTotal.value.titleSums[key]) + }) + + console.log(returnTitleSums) + + const returnData = { type: itemInfo.value.type, taxType: itemInfo.value.taxType, @@ -758,7 +784,8 @@ const getDocumentData = () => { total19: renderCurrency(documentTotal.value.total19), totalGross: renderCurrency(documentTotal.value.totalGross), totalGrossAlreadyPaid: renderCurrency(documentTotal.value.totalGrossAlreadyPaid), - totalSumToPay: renderCurrency(documentTotal.value.totalSumToPay) + totalSumToPay: renderCurrency(documentTotal.value.totalSumToPay), + titleSums: returnTitleSums }, agriculture: itemInfo.value.agriculture, usedAdvanceInvoices: itemInfo.value.usedAdvanceInvoices.map(i => { @@ -2101,7 +2128,16 @@ const setRowData = (row) => { - + Überschriften + + + + + + +
{{sumKey}}{{useCurrency(documentTotal.titleSums[sumKey])}}
+ + Gesamt