public static void Deposit() { Console.Write("//////////Insert ammount//////////: "); decimal amount = decimal.Parse(Console.ReadLine()); Console.Write("/////Insert account/////: "); string name = Console.ReadLine(); using (DatabaseAccessCtx dbd = new DatabaseAccessCtx()) { List <string> names = (from usersss in dbd.Users select usersss.Username).ToList(); bool valid = false; foreach (var nameelement in names) { if (nameelement == name) { valid = true; if (amount > 0 && name != LoginScreen.Username) { Account main = (from y in dbd.Accounts where y.User.Username == LoginScreen.Username select y).First(); Account internalacc = (from x in dbd.Accounts where x.User.Username == name select x).First(); if (main.Amount >= amount) { string list; internalacc.Amount += amount; internalacc.Transaction_Date = DateTime.Now; main.Amount -= amount; main.Transaction_Date = DateTime.Now; internalacc.Transaction_Date.ToString("dd-MM-yyyy HH.mm.ss.FFF"); Console.WriteLine("SUCCESFULL TRANSACTION"); Console.ReadKey(); dbd.SaveChanges(); Console.WriteLine($"\nMoney tranfer from {String.Format("{0:0.00}", amount)} {name} account"); list = $"{internalacc.Transaction_Date.ToString("dd-MM-yyyy HH.mm.ss.FFF")}, {String.Format("{0:0.00}", amount)} withdrawed from {name.ToUpper()}"; ListforTxt.Add(list); dbd.SaveChanges(); break; } else { Console.WriteLine("LACK OF MONEY!!!"); } } else { //invalid inputs = account||money Console.WriteLine("ERROR"); } } } if (valid == false) { //wrong name input. Console.WriteLine("ERROR"); } } }
public static void Withdraw() { Console.Write("//////////Insert ammount//////////: "); decimal amount = decimal.Parse(Console.ReadLine()); Console.Write("/////Insert account/////: "); string name = Console.ReadLine(); using (DatabaseAccessCtx dbd = new DatabaseAccessCtx()) { List <string> names = (from n in dbd.Users select n.Username).ToList(); bool valid = false; foreach (var nameElement in names) { if (nameElement == name) { valid = true; if (amount > 0 && name != LoginScreen.Username) { Account main = (from x in dbd.Accounts where x.User.Username == name select x).First(); Account internalacc = (from y in dbd.Accounts where y.User.Username == LoginScreen.Username select y).First(); if (main.Amount >= amount) { string list; main.Amount -= amount; main.Transaction_Date = DateTime.Now; internalacc.Amount += amount; internalacc.Transaction_Date = DateTime.Now; internalacc.Transaction_Date.ToString("dd-MM-yyyy HH.mm.ss.FFF"); Console.WriteLine("SUCCESFULL TRANSACTION"); Console.ReadKey(); dbd.SaveChanges(); Console.WriteLine($"\nYou have succesfully transfered {String.Format("{0:0.00}", amount)} in {name}"); list = $"{internalacc.Transaction_Date.ToString("dd-MM-yyyy HH.mm.ss.FFF")}, {String.Format("{0:0.00}", amount)} withdrawed from {name.ToUpper()}"; ListforTxt.Add(list); dbd.SaveChanges(); } else { Console.WriteLine($"\n{name} doesn't have enough money in his account for this transaction"); } } else { //Wrong ammount || owner Console.WriteLine("ERROR"); } } } if (valid == false) { //Wrong name input. Console.WriteLine("ERROR"); } } }