public static void Deposit() { Console.Clear(); Console.Write("\t Ingrese su contaseña porfavor: "); string password = ConsolePlus.ReadPassword(); var User = AdminSection._Users.Find(x => x.Password == password); var userindex = CRUD.GetElement(AdminSection._Users, AdminSection._Users.IndexOf(User)); if (AdminSection._Users.Contains(userindex)) { Console.Write("\n\t Introduzca la cantidad a depositar: "); double deposit = Convert.ToInt32(Console.ReadLine()); double BalanceP = userindex.Balance; if (deposit % 100 != 0) { Console.WriteLine("\n" + "\t Lo sentimos, debe introducir un valor mayor de RD$100 pesos \n\t" + " y solo cantidades en enteras. "); Console.ReadKey(); } else { double BalanceA = userindex.Balance += deposit; Console.WriteLine("\n\t\t Banco: " + ATM.BankName + " \n" + " \t Nombre....................... " + userindex.Name + " " + userindex.LastName + " \n" + " \t Balance anterior............. -RD$: " + BalanceP + " Pesos." + " \n" + " \t Su Balance actual ahora es... -RD$: {0}", BalanceA + " Pesos."); //transaction DateTime date = DateTime.Today; LogTransacciones log = new LogTransacciones { Client = (userindex.Name + " " + userindex.LastName), Target = userindex.TargetNumber, Date = date.ToString(), Type = "Depósito", Info = ("Depósiyo de " + deposit + " pesos.") }; CRUD.Add(LogTransacciones.transactions, log); Console.ReadKey(); } } else { Console.Clear(); Console.WriteLine("\t\t##### Acceso denegado, intente de nuevo porfavor #####\n"); Console.ReadKey(); CheckCBalance(); } }
public static void CheckCBalance() { Console.Clear(); Console.Write("\t Ingrese su contaseña porfavor: "); string password = ConsolePlus.ReadPassword(); var User = AdminSection._Users.Find(x => x.Password == password); var userindex = CRUD.GetElement(AdminSection._Users, AdminSection._Users.IndexOf(User)); if (AdminSection._Users.Contains(userindex)) { Console.WriteLine("\n\t BANCO: " + ATM.BankName); Console.WriteLine("\t Número de tarjeta: " + userindex.TargetNumber); Console.WriteLine("\t Balance disponible RD$: {0} ", userindex.Balance + " Pesos."); //transaction DateTime date = DateTime.Today; LogTransacciones log = new LogTransacciones { Client = (userindex.Name + " " + userindex.LastName), Target = userindex.TargetNumber, Date = date.ToString(), Type = "Chequeo de balance", Info = ("Balance disponlible: " + userindex.Balance) }; CRUD.Add(LogTransacciones.transactions, log); Console.ReadKey(); } else { Console.Clear(); Console.WriteLine("\t\t##### Acceso denegado, Desea cancelar ? S/N #####\n"); string selection = Console.ReadLine(); if (selection == "s") { CheckCBalance(); } Console.ReadKey(); Menu(); } }
public static void Buy() { Console.Clear(); Console.Write("\t Ingrese su contaseña porfavor: "); string password = ConsolePlus.ReadPassword(); var User = AdminSection._Users.Find(x => x.Password == password); var userindex = CRUD.GetElement(AdminSection._Users, AdminSection._Users.IndexOf(User)); if (AdminSection._Users.Contains(userindex)) { Company.Add("Claro"); Company.Add("Altice"); Company.Add("Viva"); Amount.Add(25); Amount.Add(60); Amount.Add(100); Amount.Add(150); Amount.Add(200); Console.Clear(); Console.WriteLine("\t\t Venta de tarjetas"); Console.WriteLine("\t 1. Claro "); Console.WriteLine("\t 2. Altice "); Console.WriteLine("\t 3. Viva "); Console.Write("\n\t Seleccione la compañia telefónica: "); int c = Convert.ToInt32(Console.ReadLine()); var element = CRUD.GetElement(Company, c - 1); Console.Clear(); Console.WriteLine("\n\t$$$$$$$$$$$$$$$$$"); Console.WriteLine("\t$$ $$"); Console.WriteLine("\t$$ 1. 25 $$"); Console.WriteLine("\t$$ 2. 60 $$"); Console.WriteLine("\t$$ 3. 100 $$"); Console.WriteLine("\t$$ 4. 150 $$"); Console.WriteLine("\t$$ 5. 200 $$"); Console.WriteLine("\t$$ $$"); Console.WriteLine("\t$$$$$$$$$$$$$$$$$$$\n\n"); Console.Write("\t Selecione el monto: "); int amount = Convert.ToInt32(Console.ReadLine()); double Item = CRUD.GetElement(Amount, amount - 1); double balance = userindex.Balance - Item; if (userindex.Balance <= balance) { Console.WriteLine("\t Balance insuficiente "); Console.ReadKey(); } else { if (amount != 1 || amount != 2 || amount != 3 || amount != 4 || amount != 5) { Console.WriteLine("\t Este número de selección no es válido. "); Console.ReadKey(); Menu(); } double New = userindex.Balance - balance; Console.WriteLine("\n\t Banco: " + ATM.BankName); Console.WriteLine("\t Cliente: " + userindex.Name + " " + userindex.LastName); Console.WriteLine("\t Compañia de telefono: " + element); Console.WriteLine("\t Monto: RD$" + Item + " pesos."); Console.WriteLine("\t Balance Anterior: RD$ " + userindex.Balance + " pesos."); Console.WriteLine("\t Balance Actual: RD$ " + New + " pesos."); DateTime date = DateTime.Today; LogTransacciones log = new LogTransacciones { Client = (userindex.Name + " " + userindex.LastName), Date = date.ToString(), Type = "Compra", Info = ("Compra de tarjeta de RD$" + balance + " pesos.") }; CRUD.Add(LogTransacciones.transactions, log); Console.ReadKey(); } } }
public static void Withdraw() { Console.Clear(); Console.Write("\t Ingrese su contaseña porfavor: "); string password = ConsolePlus.ReadPassword(); var User = AdminSection._Users.Find(x => x.Password == password); var userindex = CRUD.GetElement(AdminSection._Users, AdminSection._Users.IndexOf(User)); if (AdminSection._Users.Contains(userindex)) { if (ATM.DispensingMode == 1) { Console.Write("\n\t Introduzca la cantidad a retirar: "); double amount = Convert.ToDouble(Console.ReadLine()); var balanceA = userindex.Balance - amount; if (amount % 1000 == 0 || amount % 200 == 0) { if (amount >= 1000) { int b1000 = (int)amount / 1000; amount = (amount % 1000); Console.WriteLine("\n\t Se dispensará: " + b1000 + " Billetes de RD$ 1,000 pesos."); } if (amount >= 200) { int b200 = (int)amount / 200; amount = (amount % 200); Console.WriteLine("\n\t Se dispensará: " + b200 + " Billetes de RD$ 200 pesos."); } Console.WriteLine("\n\n\t\t Retiro realizado! \n\n" + " \t Favor retirar su dinero y tarjeta."); Console.WriteLine("\n\t Su balance actual es : " + balanceA); User.Balance = balanceA; //transaction DateTime date = DateTime.Today; LogTransacciones log = new LogTransacciones { Client = (userindex.Name + " " + userindex.LastName), Target = userindex.TargetNumber, Date = date.ToString(), Type = "Retiro", Info = ("Retiro de " + amount + " pesos.") }; CRUD.Add(LogTransacciones.transactions, log); Console.ReadKey(); Menu(); } else if (userindex.Balance <= balanceA) { Console.WriteLine("\n\t Su cuenta no posee fondos suficientes \n\t " + "Nota: Para realizar un retiro debe tener mas de RD$100 pesos. \n"); Console.ReadKey(); } else if (amount % 100 != 0) { Console.WriteLine("\n" + "\t Lo sentimos, debe introducir un valor mayor de RD$100 pesos \n\t" + " y solo cantidades en enteras. \n\n " + "\t Desea realizar otra transacción? S/N"); string selection = Console.ReadLine(); if (selection == "s") { Withdraw(); } Console.ReadKey(); Menu(); Console.ReadKey(); } else { Console.WriteLine("\n\t Lo sentimos, este cajero solo dispensa \n\t papeletas de RD$200 y RD$1,000 pesos." + " \n\n " + "\t Desea realizar otra transacción? S/N"); string selection = Console.ReadLine(); if (selection == "s") { Withdraw(); } Console.ReadKey(); Menu(); } } if (ATM.DispensingMode == 2) { Console.Write("\n\t Introduzca la cantidad a retirar: "); double amount = Convert.ToDouble(Console.ReadLine()); var balanceA = userindex.Balance - amount; if (amount % 500 == 0 || amount % 100 == 0) { if (amount >= 500) { int b500 = (int)amount / 500; amount = (amount % 500); Console.WriteLine("\n\t Se dispensará: " + b500 + " Billetes de RD$ 500 pesos."); } if (amount >= 100) { int b100 = (int)amount / 100; amount = (amount % 100); Console.WriteLine("\n\t Se dispensará: " + b100 + " Billetes de RD$ 100 pesos."); } Console.WriteLine("\n\n\t\t Retiro realizado! \n\n" + " \t Favor retirar su dinero y tarjeta."); Console.WriteLine("\n\t Su balance actual es : " + balanceA); User.Balance = balanceA; //transaction DateTime date = DateTime.Today; LogTransacciones log = new LogTransacciones { Client = (userindex.Name + " " + userindex.LastName), Target = userindex.TargetNumber, Date = date.ToString(), Type = "Retiro", Info = ("Retiro de " + amount + " pesos.") }; CRUD.Add(LogTransacciones.transactions, log); Console.ReadKey(); Menu(); } else if (userindex.Balance <= balanceA) { Console.WriteLine("\n\t Su cuenta no posee fondos suficientes \n\t " + "Nota: Para realizar un retiro debe tener mas de RD$100 pesos. \n"); Console.ReadKey(); } else if (amount % 100 != 0) { Console.WriteLine("\n" + "\t Lo sentimos, debe introducir un valor mayor de RD$100 pesos \n\t" + " y solo cantidades en enteras. \n\n " + "\t Desea realizar otra transacción? S/N"); string selection = Console.ReadLine(); if (selection == "s") { Withdraw(); } Console.ReadKey(); Menu(); Console.ReadKey(); } else { Console.WriteLine("\n\t Lo sentimos, este cajero solo dispensa \n\t papeletas de RD$500 y RD$100 pesos." + " \n\n " + "\t Desea realizar otra transacción? S/N"); string selection = Console.ReadLine(); if (selection == "s") { Withdraw(); } Console.ReadKey(); Menu(); } } if (ATM.DispensingMode == 3) { Console.Write("\n\t Introduzca la cantidad a retirar: "); double amount = Convert.ToDouble(Console.ReadLine()); var balanceA = userindex.Balance - amount; if (amount >= 1000) { int b = (int)amount / 1000; Console.WriteLine("\n\t Se dispensará: " + b + " Billetes de RD$ 1000 pesos."); amount -= (1000 * b); } if (amount >= 500) { int b = (int)amount / 500; amount -= (500 * b); Console.WriteLine("\n\t Se dispensará: " + b + " Billetes de RD$ 500 pesos."); } if (amount >= 200) { int b = (int)amount / 200; amount -= (200 * b); Console.WriteLine("\n\t Se dispensará: " + b + " Billetes de RD$ 200 pesos."); } if (amount >= 100) { int b = (int)amount / 100; amount -= (100 * b); Console.WriteLine("\n\t Se dispensará: " + b + " Billetes de RD$ 100 pesos."); } Console.WriteLine("\n\n\t\t Retiro realizado! \n\n" + " \t Favor retirar su dinero y tarjeta."); Console.WriteLine("\n\t Su balance actual es : " + balanceA); User.Balance = balanceA; //transaction DateTime date = DateTime.Today; LogTransacciones log = new LogTransacciones { Client = (userindex.Name + " " + userindex.LastName), Target = userindex.TargetNumber, Date = date.ToString(), Type = "Retiro", Info = ("Retiro de RD$" + amount + " pesos.") }; CRUD.Add(LogTransacciones.transactions, log); Console.ReadKey(); Menu(); } if (ATM.DispensingMode == 0) { Console.Write("\n\t Lo sentimos, Cajero no configurado.\n\t Estamos trabajando en ello. "); Console.ReadKey(); Menu(); } } else { Console.Clear(); Console.WriteLine("\t\t##### Acceso denegado, Desea cancelar ? S/N #####\n"); string selection = Console.ReadLine(); if (selection == "s") { CheckCBalance(); } Console.ReadKey(); Menu(); } }
public static void Menu_Admin() { while (true) { Console.Clear(); Console.Title = "SECCIÓN ADMINISTRADOR"; Console.WriteLine("\n\n\t\t ################################################\n"); Console.WriteLine("\t\t #### MENU PRINCIPAL - SECCIÓN ADMINISTRADOR ####\n"); Console.WriteLine("\t\t ################################################\n"); Console.WriteLine("\t\t 1. Agregar Usuario."); Console.WriteLine("\t\t 2. Editar Usuario. "); Console.WriteLine("\t\t 3. Eliminar Usuario. "); Console.WriteLine("\t\t 4. Listar Usuarios. "); Console.WriteLine("\t\t 5. Restablecer Contraseña. "); Console.WriteLine("\t\t 6. Ver Log de Transacciones. "); Console.WriteLine("\t\t 7. Configuracion de ATM. "); Console.WriteLine("\t\t 8. Administrar usuarios. "); Console.WriteLine("\t\t 9. Reactivación de usuario. "); Console.WriteLine("\t\t 10. Agregar saldo. "); Console.WriteLine("\t\t 0. Cerrar sección. \n"); try { Console.Write("\t Ingrese el número segun la opcion deseada: "); int Menu = Convert.ToInt32(Console.ReadLine()); switch (Menu) { case (int)AdminMenu.ADD_USER: _UsersCRUD.FormAddUser(); break; case (int)AdminMenu.EDIT_USER: _UsersCRUD.FormEditUsers(); break; case (int)AdminMenu.DELETE_USER: _UsersCRUD.FormDeleteUser(); break; case (int)AdminMenu.SHOW_USER: Console.Clear(); _UsersCRUD.FormShowUsers(true); break; case (int)AdminMenu.RESTART_PASSWORDS: RestartPassword.Restart(); break; case (int)AdminMenu.TRANSACTIONS: Console.Clear(); LogTransacciones.Show(true); break; case (int)AdminMenu.ATM: ATM.Menu_ATM(); break; case (int)AdminMenu.USER_ADMINISTRATION: UserAdminAdministrator.MenuAdmin(); break; case (int)AdminMenu.USER_ACTIVE: ActiveUser.Active(); break; case (int)AdminMenu.ADD_BALANCE: AddBalance.AddB(); break; case 0: Console.Write("\t Sección de Administrador cerrada "); Console.ReadKey(); Login._Login(); break; default: Menu_Admin(); break; } } catch (Exception) { Menu_Admin(); } } }