Extract AccountWithReconciled
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing

This commit is contained in:
2022-03-14 19:48:45 +00:00
parent 6f4e286b7a
commit 450324d29e
2 changed files with 34 additions and 38 deletions

View File

@ -4,6 +4,7 @@ import Currency from "../components/Currency.vue"
import { useBudgetsStore } from "../stores/budget"
import { Account, useAccountStore } from "../stores/budget-account"
import { useSettingsStore } from "../stores/settings"
import AccountWithReconciled from "../components/AccountWithReconciled.vue";
const settings = useSettingsStore();
const ExpandMenu = computed(() => settings.Menu.Expand);
@ -18,38 +19,6 @@ const OnBudgetAccounts = computed(() => accountStore.OnBudgetAccounts);
const OffBudgetAccounts = computed(() => accountStore.OffBudgetAccounts);
const OnBudgetAccountsBalance = computed(() => accountStore.OnBudgetAccountsBalance);
const OffBudgetAccountsBalance = computed(() => accountStore.OffBudgetAccountsBalance);
const days = 24 * 60 * 60 * 1000;
function daysSinceLastReconciled(account: Account) {
if(!account.LastReconciled.Valid)
return false;
const now = new Date().getTime();
const diff = new Date(now).getTime() - account.LastReconciled.Time.getTime();
return Math.floor(diff / days);
//const recently = 7 * days;
}
function isRecentlyReconciled(account: Account) {
if(!account.LastReconciled.Valid)
return false;
const now = new Date().getTime();
const recently = 7 * days;
return new Date(now - recently).getTime() < account.LastReconciled.Time.getTime();
}
function getAccountName(account: Account) {
const days = daysSinceLastReconciled(account);
if(days === false)
return account.Name + " *";
if(days <= 7)
return account.Name;
//const reconciledMarker = isRecentlyReconciled(account) ? "" : " *";
return account.Name + " " + days;
}
</script>
<template>
@ -77,9 +46,7 @@ function getAccountName(account: Account) {
<Currency :class="ExpandMenu ? 'md:inline' : 'md:hidden'" :value="OnBudgetAccountsBalance" />
</div>
<div v-for="account in OnBudgetAccounts" class="flex flex-row justify-between">
<router-link
:to="'/budget/' + CurrentBudgetID + '/account/' + account.ID"
>{{ getAccountName(account) }}</router-link>
<AccountWithReconciled :account="account" />
<Currency :class="ExpandMenu ? 'md:inline' : 'md:hidden'" :value="account.ClearedBalance" />
</div>
</li>
@ -89,9 +56,7 @@ function getAccountName(account: Account) {
<Currency :class="ExpandMenu ? 'md:inline' : 'md:hidden'" :value="OffBudgetAccountsBalance" />
</div>
<div v-for="account in OffBudgetAccounts" class="flex flex-row justify-between">
<router-link
:to="'/budget/' + CurrentBudgetID + '/account/' + account.ID"
>{{ getAccountName(account) }}</router-link>
<AccountWithReconciled :account="account" />
<Currency :class="ExpandMenu ? 'md:inline' : 'md:hidden'" :value="account.ClearedBalance" />
</div>
</li>