public void SaveTransactionToSource(Transaction transaction) { Account account = accountDataService.GetAccountByAccountId(transaction.SourceAccountId); account.transactions.Add(transaction); MasterBank.SaveCurrentState(); }
public void SaveTransactionToDestination(Transaction transaction) { Bank DestinationBank = MasterBank.GetBankById(transaction.DestinationBankId); Account destinationAccount = accountDataService.GetAccountByAccountId(transaction.DestinationAccountId); destinationAccount.transactions.Add(transaction); MasterBank.bankList[MasterBank.bankList.FindIndex(bank => bank.BankId == transaction.DestinationBankId)] = DestinationBank; MasterBank.SaveCurrentState(); }
public void ShowHomeMenuOptions() { MasterBank.GetBanksFromFile(); switch (EnumHelper.ConvertInEnum <BankUiOption>(bankUI.MainView())) { case BankUiOption.SetupNewBank: bool Result = bankUI.CreateNewBankDisplay(); // Thread.Sleep(1000); if (Result == false) { } else { MasterBank.currentBankIndex = MasterBank.bankList.Count - 1; adminUI.CreateDefaultAdminDisplay(); } ShowHomeMenuOptions(); break; case BankUiOption.LoginInBank: if (File.Exists("BankData.data")) { int choice = int.Parse(bankUI.SelectBankPortalMenu()); if (choice <= MasterBank.bankList.Count()) { MasterBank.currentBankIndex = choice - 1; MasterBank.currentBank = MasterBank.bankList[MasterBank.currentBankIndex]; BankLoginOptions(); } else { DisplayHelper.PrintTextAtXY(60, 22, "WRONG CHOICE ENTERED"); Thread.Sleep(1000); ShowHomeMenuOptions(); } } else { DisplayHelper.PrintTextAtXY(65, 20, "YOU MUST CREATE A BANK FIRST"); Thread.Sleep(1000); ShowHomeMenuOptions(); } break; case BankUiOption.ExitApplication: Thread.Sleep(1000); Environment.Exit(0); break; default: DisplayHelper.PrintTextAtXY(60, 22, "WRONG CHOICE ENTERED"); Thread.Sleep(1000); ShowHomeMenuOptions(); break; } }
public void OtherBankTransferDisplay(string type) { Console.Clear(); InputForm.OtherTransferFundField(); double amount = Validator.ValidatorHelper.DoubleValidator(40, 10); string destinationBankId = Validator.ValidatorHelper.StringValidator(40, 12); string destinationAccountId = Validator.ValidatorHelper.StringValidator(40, 14); accountService.OtherBankTransfer(amount, destinationAccountId, MasterBank.GetBankById(destinationBankId), type); }
public void AddBank(MasterBank banksList, Bank bank, List <Currency> currencies) { banksList.Banks.Add(new Bank() { Id = bank.Id, Name = bank.Name, Currency = bank.Currency, IMPSToSameBank = bank.IMPSToSameBank, RTGSToSameBank = bank.RTGSToSameBank, IMPSToOtherBanks = bank.IMPSToOtherBanks, RTGSToOtherBanks = bank.IMPSToOtherBanks, AcceptedCurrencies = currencies }); }
public string TransferFunds(string senderId, string toBankId, string receiverId, int amount, string frombankId, MasterBank banksModel) { Bank frombankModel = banksModel.Banks.Find(s => s.Id == frombankId); Bank tobankModel = banksModel.Banks.Find(s => s.Id == toBankId); Account senderAccount = banksModel.Banks.Find(s => s.Id == frombankId).Accounts.Find(s => s.Id == senderId); if (frombankModel.Accounts.FindIndex(s => s.Id == senderId) != -1 && tobankModel.Accounts.FindIndex(s => s.Id == receiverId) != -1) { if (frombankModel.Accounts.Find(s => s.Id == senderId).Balance < amount) { return("Insufficient Funds to send"); } else { frombankModel.Accounts.Find(s => s.Id == senderId).Balance -= amount; tobankModel.Accounts.Find(s => s.Id == receiverId).Balance += amount; string fromTransacId = IdGenerator.CreateTransacId(frombankId, frombankModel.Accounts.Find(s => s.Id == senderId).User.Name); transactionService.AddTransaction(fromTransacId, string.Format("Transfer {0} from {1} to {2}", amount, senderId, receiverId), senderId, receiverId, amount, (TransactionType)Enum.Parse(typeof(TransactionType), "Transfer"), frombankId, toBankId, senderAccount); return("Transfer Successful"); } } return("Entered User doesnt exit to transfer"); }
public App() { banksRepo = new MasterBank(); }
internal MasterForm(MasterBank master) { masterBank = master; mainForm = new Form1(this); }