Corrected Usesum

This commit is contained in:
2025-03-10 14:59:54 +01:00
parent d83f31c3c2
commit 14e4e79c43
3 changed files with 30 additions and 9 deletions

View File

@@ -1,6 +1,8 @@
export const useSum = () => {
const supabase = useSupabaseClient()
const getIncomingInvoiceSum = (invoice) => {
let sum = 0
invoice.accounts.forEach(account => {
@@ -16,11 +18,26 @@ export const useSum = () => {
return sum.toFixed(2)
}
const getCreatedDocumentSum = (createddocument) => {
const getCreatedDocumentSum = (createddocument,createddocuments = []) => {
let totalNet = 0
let total19 = 0
let total7 = 0
/*let usedadvanceinvoices = []
if(createddocument.usedAdvanceInvoices.length > 0) {
console.log(createddocument)
console.log(createddocument.usedAdvanceInvoices)
console.log((await supabase.from("createddocuments").select().in("id", createddocument.usedAdvanceInvoices)))
usedadvanceinvoices = (await supabase.from("createddocuments").select().in("id", createddocument.usedAdvanceInvoices)).data
console.log(usedadvanceinvoices)
}*/
createddocument.rows.forEach(row => {
if(!['pagebreak','title','text'].includes(row.mode)){
let rowPrice = Number(Number(row.quantity) * Number(row.price) * (1 - Number(row.discountPercent) /100) ).toFixed(3)
@@ -41,8 +58,9 @@ export const useSum = () => {
let totalGrossAlreadyPaid = 0
createddocument.usedAdvanceInvoices.forEach(advanceInvoiceId => {
let advanceInvoice = createddocuments.value.find(i => i.id === advanceInvoiceId)
let advanceInvoice = createddocuments.find(i => i.id === advanceInvoiceId)
let priceNet = advanceInvoice.rows.find(i => i.advanceInvoiceData).price

View File

@@ -28,6 +28,8 @@ const allocatedDocuments = ref([])
const openIncomingInvoices = ref([])
const allocatedIncomingInvoices = ref([])
const createddocuments = ref([])
const accounts = ref([])
const loading = ref(true)
@@ -39,19 +41,20 @@ const setup = async () => {
manualAllocationSum.value = calculateOpenSum.value
const documents = (await useSupabaseSelect("createddocuments","*, statementallocations(*), customer(id,name)")).filter(i => i.type === "invoices" ||i.type === "advanceInvoices")
createddocuments.value = (await useSupabaseSelect("createddocuments","*, statementallocations(*), customer(id,name)"))
const documents = createddocuments.value.filter(i => i.type === "invoices" ||i.type === "advanceInvoices")
const incominginvoices = (await useSupabaseSelect("incominginvoices","*, statementallocations(*), vendor(id,name)")).filter(i => i.state === "Gebucht")
accounts.value = (await supabase.from("accounts").select()).data
openDocuments.value = documents.filter(i => i.statementallocations.reduce((n,{amount}) => n + amount, 0).toFixed(2) !== useSum().getCreatedDocumentSum(i).toFixed(2))
openDocuments.value = documents.filter(i => i.statementallocations.reduce((n,{amount}) => n + amount, 0).toFixed(2) !== useSum().getCreatedDocumentSum(i,createddocuments.value).toFixed(2))
openDocuments.value = openDocuments.value.map(i => {
return {
...i,
docTotal: useSum().getCreatedDocumentSum(i),
docTotal: useSum().getCreatedDocumentSum(i,createddocuments.value),
statementTotal: Number(i.statementallocations.reduce((n,{amount}) => n + amount, 0)),
openSum: (useSum().getCreatedDocumentSum(i) - Number(i.statementallocations.reduce((n,{amount}) => n + amount, 0))).toFixed(2)
openSum: (useSum().getCreatedDocumentSum(i,createddocuments.value) - Number(i.statementallocations.reduce((n,{amount}) => n + amount, 0))).toFixed(2)
}
})
@@ -381,7 +384,7 @@ setup()
<template #header>
<div class="flex flex-row justify-between">
<span>{{document.customer ? document.customer.name : ""}} - {{document.documentNumber}}</span>
<span class="font-semibold text-nowrap">{{displayCurrency(useSum().getCreatedDocumentSum(document))}}</span>
<span class="font-semibold text-nowrap">{{displayCurrency(useSum().getCreatedDocumentSum(document, createddocuments))}}</span>
</div>
</template>
<UButton
@@ -389,7 +392,7 @@ setup()
variant="outline"
class="mr-3"
v-if="!itemInfo.statementallocations.find(i => i.cd_id === document.id)"
@click="saveAllocation({cd_id: document.id, bs_id: itemInfo.id, amount: Number(useSum().getCreatedDocumentSum(document))})"
@click="saveAllocation({cd_id: document.id, bs_id: itemInfo.id, amount: Number(useSum().getCreatedDocumentSum(document,createddocuments))})"
/>
<UButton
icon="i-heroicons-x-mark"

View File

@@ -125,7 +125,7 @@
</div>
</template>
<template #amount-data="{row}">
<span v-if="row.type !== 'deliveryNotes'">{{displayCurrency(useSum().getCreatedDocumentSum(row))}}</span>
<span v-if="row.type !== 'deliveryNotes'">{{displayCurrency(useSum().getCreatedDocumentSum(row,items))}}</span>
</template>
</UTable>