diff --git a/frontend/src/routes/accounting/account.svelte b/frontend/src/routes/accounting/account.svelte index b30224f2..f0a360fd 100644 --- a/frontend/src/routes/accounting/account.svelte +++ b/frontend/src/routes/accounting/account.svelte @@ -13,6 +13,19 @@ let sums = {}; + function calcSums(){ + sums[0] = 0; + for (let user of Object.values(users)) sums[user.id] = 0; + for (let transaction of transactions) { + for (let user of Object.values(users)){ + if (user.id == transaction.destination.id) sums[user.id] += transaction.amount; + if (user.id == transaction.source.id) sums[user.id] -= transaction.amount; + } + if (!transaction.destination.id) sums[0] += transaction.amount; + if (!transaction.source.id) sums[0] -= transaction.amount; + } + } + async function load(){ let url = api(`accounting/${id}`); let res = await get(url); @@ -22,6 +35,7 @@ transactions = json.transactions; users = json.user_list; account = json.account; + calcSums(); } else error(res); } @@ -31,6 +45,11 @@ onMount(load); + + + {#if account}