public void RefreshDisplayLines() { DisplayedTransactionLines.Clear(); using (var context = new ERPContext()) { SetBeginningBalanceFromDatabaseContext(context); var balanceTracker = _selectedBeginningBalance; var transactionLines = context.Ledger_Transaction_Lines .Where(e => e.LedgerAccountID == _selectedAccount.ID && e.LedgerTransaction.Date.Month == _selectedMonth) .Include("LedgerTransaction") .Include("LedgerAccount") .OrderBy(e => e.LedgerTransaction.Date); if (_selectedClass == "Asset" || _selectedClass == "Expense") _normalSeq = "Debit"; else _normalSeq = "Credit"; foreach (var opposingLine in transactionLines.ToList().Select( line => new LedgerTransactionLineVM { Model = line }).SelectMany(lineVM => lineVM.OpposingLines)) { opposingLine.Seq = opposingLine.Seq == "Debit" ? "Credit" : "Debit"; if (_normalSeq == opposingLine.Seq) balanceTracker += opposingLine.Amount; else balanceTracker -= opposingLine.Amount; if (opposingLine.Seq == "Debit") _totalDebit += opposingLine.Amount; else _totalCredit += opposingLine.Amount; opposingLine.Balance = balanceTracker; DisplayedTransactionLines.Add(opposingLine); } _selectedEndingBalance = balanceTracker; } }
private void ResetUI() { TotalDebit = 0; TotalCredit = 0; DisplayedTransactionLines.Clear(); }