public Response<DeleteReceipt> Delete(int accountNumber) { var repo = new AccountRepository(); var response = new Response<DeleteReceipt>(); try { var account = repo.GetAllAccounts(); if (account == null) { response.Success = false; response.Message = "Account was not found!"; } else { response.Success = true; repo.OverwriteFile(account, accountNumber); } } catch (Exception ex) { // log the exception response.Success = false; response.Message = "There was an error. Please try again later."; } return response; }
public Response CreateAccount() { AccountRepository repo = new AccountRepository(); Account newAccount = new Account(); Response response = new Response(); newAccount.AccountNumber = 1; Console.Write("Account holder First name :"); newAccount.FirstName = Console.ReadLine(); Console.Write("Account holder Last name :"); newAccount.LastName = Console.ReadLine(); newAccount.Balance = 0.00M; int returnedAccountNumber = repo.WriteNewLine(newAccount); if (returnedAccountNumber == repo.GetAllAccounts().Count) { response.Success = true; response.CreateAccountInfo = new CreateAccountSlip(); response.CreateAccountInfo.AccountNumber = returnedAccountNumber; response.CreateAccountInfo.FirstName = newAccount.FirstName; response.CreateAccountInfo.LastName = newAccount.LastName; response.CreateAccountInfo.NewBalance = newAccount.Balance; } else { response.Success = false; response.Message = "The account was not created, please try again."; } return response; }
public void WriteNewAccount() { Account account = new Account(); account.FirstName = "Victor"; account.LastName = "Smith"; account.Balance = 1000000000000.00M; var repo = new AccountRepository(); var accounts = repo.GetAllAccounts(); var numAccounts = accounts.Count; repo.WriteNewLine(account); var accountsAfterAdd = repo.GetAllAccounts(); var numAccountsAfterAdd = accountsAfterAdd.Count; Assert.AreEqual(numAccounts +1, numAccountsAfterAdd); }
public Response<CreateReceipt> Create(string[] newAccount) { AccountRepository repo = new AccountRepository(); var response = new Response<CreateReceipt>(); var allAccounts = repo.GetAllAccounts(); List<int> accountNums = new List<int>(); foreach (var accout in allAccounts) { accountNums.Add(accout.AccountNumber); } int freshAccountNumber = accountNums.Max() + 1; try { if (Decimal.Parse(newAccount[2]) <= 0) { response.Success = false; response.Message = "Must initially deposit a positive value."; } else { response.Data = new CreateReceipt(); response.Data.AccountNumber = freshAccountNumber; response.Data.FirstName = newAccount[0]; response.Data.LastName = newAccount[1]; response.Data.InitalAmount = Decimal.Parse(newAccount[2]); response.Success = true; response.Message = "Account successfully created. Press any key to continue..."; repo.CreateAccount(response); } } catch (Exception ex) { response.Success = false; response.Message = ex.Message; } return response; }
public void CheckAddAccount() { var repo = new AccountRepository(); var newAccount = new Account() { FirstName = "Homer", LastName = "Simpson", Balance = 500 }; repo.AddAccount(newAccount); repo.GetAllAccounts(); var result = repo.LoadAccount(repo.HighestAccountNumber()); Assert.AreEqual(result.Balance, newAccount.Balance); Assert.AreEqual(result.LastName, newAccount.LastName); Assert.AreEqual(result.FirstName, newAccount.FirstName); Assert.AreEqual(result.AccountNumber, 5); }