예제 #1
0
        /// <summary>
        /// DataGrid aktualisieren
        /// </summary>
        private void refreshDataGrid()
        {
            CashClosureHelper cashClosureHelper = new CashClosureHelper();
            List<Account> closureAccounts = cashClosureHelper.closureAccounts;
            this.accountModels.Clear();

            double sumRevenues = 0;
            double sumExpenses = 0;
            double sumNewBalances = 0;

            // Berechne für jedes Kassenschluss-Konto die Summen
            foreach (var account in closureAccounts)
            {
                double oldBalance = cashClosureHelper.getOldBalanceForAccount(account.AccountID);
                double revenues = cashClosureHelper.getRevenuesForAccount(account.AccountID);
                double expenses = cashClosureHelper.getExpensesForAccount(account.AccountID);
                double newBalance = oldBalance + revenues - expenses;

                CashClosureAccountsDataGridModel model = new CashClosureAccountsDataGridModel(account, oldBalance, revenues, expenses, newBalance);
                accountModels.Add(model);

                sumRevenues += revenues;
                sumExpenses += expenses;
                sumNewBalances += newBalance;
            }
            AccountsDataGrid.ItemsSource = accountModels;
            AccountsDataGrid.Items.Refresh();

            // Zeige Gesamt-Summen an
            lbRevenues.Content = SafeStringParser.safeParseToMoney(sumRevenues, true);
            lbExpenses.Content = SafeStringParser.safeParseToMoney(sumExpenses, true);
            lbSum.Content = SafeStringParser.safeParseToMoney(sumNewBalances, true);

            this.expensesTotal = sumExpenses;
            this.revenuesTotal = sumRevenues;
        }