Beispiel #1
0
        public IActionResult Deposit([Bind] Models.Transaction trans)
        {
            lock (transactionLock)
            {
                using (var ts = new TransactionScope())
                {
                    try
                    {
                        _transactionDAL.AddTransaction(new Models.Transaction
                        {
                            AccountNumber = trans.AccountNumber,
                            Amount        = trans.Amount,
                            Type          = "DEPOSIT"
                        });

                        ViewData["SuccessMessage"] = "Deposit success";

                        var accountNumber = Convert.ToInt64(HttpContext.User.Identity.Name);

                        var user = _userDAL.GetUserData(accountNumber);

                        ViewData["LoginName"]     = user.LoginName;
                        ViewData["AccountNumber"] = accountNumber;
                        ViewData["Balance"]       = _transactionDAL.GetBalance(accountNumber);

                        ts.Complete();
                        return(View());
                    }
                    catch (Exception e)
                    {
                        ViewData["Message"] = e.Message;
                        ts.Dispose();
                        return(View());
                    }
                }
            }
        }
Beispiel #2
0
 /// <summary>
 ///passing the object to the DAL
 /// </summary>
 /// <param name="t1">object</param>
 public void AddTranscation(Transaction t)
 {
     try
     {
         if (account != null)
         {
             SavingsAccount result = account.GetAccountByAccountNumber(t.AccountNumber);
             if (result != null)
             {
                 transactionDAL.AddTransaction(t);
             }
             else
             {
                 throw new TransactionException("Wrong Data");
             }
         }
     }
     catch (TransactionException)
     {
         throw;
     }
 }