Esempio n. 1
0
        private void CreateExecute(object obj)
        {
            Transaction hint = null;

            if (SelectedTransaction != null)
            {
                hint = m_transactionService.Get(SelectedTransaction.TransactionId);
            }
            else if (Transactions.Any())
            {
                hint = m_transactionService.Get(
                    Transactions.OrderByDescending(t => t.At).First().TransactionId);
            }
            else
            {
                AccountLink thisAccountLink = m_accountService.GetAsLink(m_accountId);
                hint = new Transaction
                {
                    CreditAccount = thisAccountLink,
                    DebitAccount  = thisAccountLink,
                    Amount        = 0,
                    At            = DateTime.Now
                };
            }

            Transaction newTransaction;

            if (m_transactionCreateViewService.Show(hint, out newTransaction))
            {
                IAccountTransactionItemViewModel newTransactionViewModel
                    = m_accountTransactionItemViewModelFactory.Create(newTransaction);
                Transactions.Add(newTransactionViewModel);
                PopulateTransactionBalances();
            }
        }
Esempio n. 2
0
        private void EditExecute(object obj)
        {
            Transaction updatedTransaction;

            if (m_transactionEditViewService.Show(SelectedTransaction.TransactionId, out updatedTransaction))
            {
                Transactions.Remove(SelectedTransaction);
                SelectedTransaction = m_accountTransactionItemViewModelFactory.Create(updatedTransaction);
                Transactions.Add(SelectedTransaction);
                PopulateTransactionBalances();
            }
        }