Esempio n. 1
0
        public void UpdateAccountTransaction(UpdateAccountTransactionPayload payloadData)
        {
            AccountTransactionResult accountTransactionResult = new AccountTransactionResult();

            accountTransactionResult.AccountTransactionId = payloadData.AccountTransactionId;
            accountTransactionResult.Date                = payloadData.Date;
            accountTransactionResult.Amount              = payloadData.Amount;
            accountTransactionResult.TransactionTypeId   = payloadData.TransactionTypeId;
            accountTransactionResult.TransactionSourceId = payloadData.TransactionSourceId;
            accountTransactionResult.Notes               = payloadData.Note;


            TransactionSourceResult transactionSourceResult = new TransactionSourceResult();

            transactionSourceResult.Name = payloadData.TransactionSourceName;
            using (AccountTransactionRepository accountTransactionRepository = new AccountTransactionRepository(_appConfiguration["DatabaseConnectionString"].Value.ToString()))
            {
                try
                {
                    accountTransactionRepository.BeginTransaction();

                    if (accountTransactionResult.TransactionSourceId == 0)
                    {
                        accountTransactionResult.TransactionSourceId = accountTransactionRepository.Insert <TransactionSourceResult>(typeof(TransactionSource), transactionSourceResult);
                    }

                    accountTransactionRepository.Update <AccountTransactionResult>(typeof(AccountTransaction), accountTransactionResult);

                    accountTransactionRepository.CommitTransaction();

                    clearMemoryCache();
                }
                catch (Exception)
                {
                    accountTransactionRepository.RollbackTransaction();
                    throw;
                }
            }
        }
 internal AccountTransactionBuilder(AccountTransactionResult accountTransactionResult, AccountTransactionFacade accountTransactionFacade)
 {
     _accountTransactionFacade = accountTransactionFacade;
     _accountTransactionResult = accountTransactionResult;
 }