// PROCEDIMIENTO PARA CONTRATAR UN DIRECTOR (DIOS) PARA LA BANKA public static void contratarDirector(ref Banka banka) { // 1. Crear objeto cliente y pedir los datos // 2. Asignarle el TipoEmpleado DIRECTOR // 3. Añadir a plantilla de empleados de la banka bool salir = false; Cliente cliente = new Cliente(); Empleado empleado; TipoEmpleado tipo = banka.getTipoEmpleado(1); // COGEMOS EL TIPO DE EMPLEADO 1 -> DIRECCION PARA ASIGNARSELO AL CLIENTE Producto producto = banka.lista_productos[0]; // EL PRODUCTO CUENTA DE AHORROS POR DEFECTO... Contrato contrato = null; // EL CONTRATO PARA EL DIRECTOR - CON SALDO Y TARJETA BLACK do { cliente.nombre = InterfazCliente.leerNombre(); cliente.apellidos = InterfazCliente.leerApellidos(); do { try { cliente.dni = InterfazCliente.leerDni(); salir = true; } catch (Exception e) { CH.lcd(e.Message); //CH.lcd(e.StackTrace); } } while (!salir); salir = false; do { try { cliente.fecha_nac = CH.leerCadena("FECHA NACIMIENTO.."); salir = true; } catch (Exception e) { CH.lcd(e.Message); } } while (!salir); salir = false; cliente.usuario = CH.leerCadena("NOMBRE DE USUARIO."); cliente.password = CH.leerCadena("CONTRASEÑA........"); salir = true; } while (!salir); empleado = new Empleado(1, cliente.nombre, cliente.apellidos, cliente.dni, cliente.fecha_nac, cliente.usuario, cliente.password, new TipoCliente("PLATINUM", 100000.00F, 5000000), cliente, tipo); contrato = new Contrato(1, 1, 1, DateTime.Now.ToString(), null, 1000000.0F, true, producto); empleado.agregarContrato(contrato); banka.contratarEmpleado(empleado); banka.agregarCliente(empleado); CH.lcd("\ni> Se ha contratado al director de la banka... \n"); CH.pausa(); }
// PROCEDIMIENTO PARA REGISTRAR UN CLIENTE EN LA BANKA // @param Banka - la banca para usar su metodo agregarCliente public static void registrarEmpleado(ref Banka banka) { // 1. Creamos un cliente vacio // 2. Pedimos datos uno a uno // 3. Con el cliente completo, le contratamos una cuenta de ahorros, // 4. Evaluamos el tipoCliente y asignamos // 4. Lo agregamos a la banka bool salir = false; Empleado empleado = new Empleado(); Cliente cliente = new Cliente(); Contrato contrato = null; TipoCliente tipoc = null; TipoEmpleado tipoe = null; int indice = 0; int indicee = 0; float saldo = 0.0F; byte totalte; string dni = ""; if (banka.lista_clientes != null) { indice = banka.lista_clientes.Length + 1; } do { empleado.id = indice; empleado.nombre = InterfazCliente.leerNombre(); empleado.apellidos = InterfazCliente.leerApellidos(); do { try { dni = InterfazCliente.leerDni().ToUpper(); if (!banka.existeDNI(dni)) { empleado.dni = dni; salir = true; } else { CH.lcdColor("!> EL D.N.I. YA ESTÁ REGISTRADO EN EL SISTEMA", ConsoleColor.Red); } } catch (Exception e) { CH.lcd(e.Message); //CH.lcd(e.StackTrace); } } while (!salir); salir = false; do { try { empleado.fecha_nac = CH.leerCadena("FECHA NACIMIENTO.."); salir = true; } catch (Exception e) { CH.lcd(e.Message); } } while (!salir); salir = false; CH.lcdColor("-- DATOS DE ACCESO --", ConsoleColor.Blue); empleado.usuario = CH.leerCadena("NOMBRE DE USUARIO."); empleado.password = CH.leerCadena("CONTRASEÑA........"); salir = true; } while (!salir); // YA TENEMOS EL CLIENTE... A CONTRATAR UNA CUENTA CUENTA AHORROS SI O SI contrato = ControladorContrato.crearContratoDefault(banka.lista_productos[0]); // 0 - Cuenta Ahorros contrato.id_cliente = empleado.id; // EN VERDAD NO ES NECESARIO, PUES ES CONTRARO ES CONTENIDO EN UN CLIENTE empleado.agregarContrato(contrato); // YA QUE TENEMOS EL CONTRATO, EVALUAMOS EL IMPORTE PARA VER EL TIPO DE CLIENTE saldo = contrato.saldo; if (saldo > 15000.00F) { tipoc = banka.lista_tipos_clientes[2]; // 0-silver 1-gold 2-platinum } else if (saldo > 6000.00F) { tipoc = banka.lista_tipos_clientes[1]; } else { tipoc = banka.lista_tipos_clientes[0]; } CH.lcd("\n" + contrato.ToString()); empleado.tipo_cliente = tipoc; // AHORA VAMOS A DECIRLE QUE TIPO DE EMPLEADO ES... CH.lcd("\ni> OK, MiK... Ahora vamos a decir que tipo de empleado es...\n"); Byte.TryParse(banka.lista_tipos_empleados.Length.ToString(), out totalte); InterfazEmpleado.listarTiposEmpleadosIndice(banka.lista_tipos_empleados); indicee = CH.leerOpcionMsg(totalte, "Elige un Tipo de Empleado"); tipoe = banka.lista_tipos_empleados[indicee - 1]; empleado.tipo_empleado = tipoe; cliente = new Cliente(empleado.id, empleado.nombre, empleado.apellidos, empleado.dni, empleado.fecha_nac, empleado.usuario, empleado.password, tipoc); empleado.cliente = cliente; banka.contratarEmpleado(empleado); banka.agregarCliente(empleado); CH.lcd(empleado.ToString()); CH.lcdColor("\ni> Se ha agregado un nuevo empleado y cliente a la banka...", ConsoleColor.Green); CH.pausa(); }
// PROCEDIMIENTO PARA REGISTRAR UN CLIENTE EN LA BANKA // @param Banka - la banca para usar su metodo agregarCliente public static void registrarCliente(ref Banka banka) { // 1. Creamos un cliente vacio // 2. Pedimos datos uno a uno // 3. Con el cliente completo, le contratamos una cuenta de ahorros // 4. Lo agregamos a la banka bool salir = false; Cliente cliente = new Cliente(); Contrato contrato = null; TipoCliente tipoc = null; int indice = 0; float saldo = 0.0F; string dni = ""; if (banka.lista_clientes != null) { indice = banka.lista_clientes.Length + 1; } do { cliente.id = indice; cliente.nombre = InterfazCliente.leerNombre(); cliente.apellidos = InterfazCliente.leerApellidos(); do { try { dni = InterfazCliente.leerDni().ToUpper(); if (!banka.existeDNI(dni)) { cliente.dni = dni; salir = true; } else { CH.lcdColor("!> EL D.N.I. YA ESTÁ REGISTRADO EN EL SISTEMA", ConsoleColor.Red); } } catch (Exception e) { CH.lcd(e.Message); //CH.lcd(e.StackTrace); } } while (!salir); salir = false; do { try { cliente.fecha_nac = CH.leerCadena("FECHA NACIMIENTO.."); salir = true; } catch (Exception e) { CH.lcd(e.Message); } } while (!salir); salir = false; CH.lcdColor("-- DATOS DE ACCESO --", ConsoleColor.Blue); cliente.usuario = CH.leerCadena("NOMBRE DE USUARIO."); cliente.password = CH.leerCadena("CONTRASEÑA........"); salir = true; } while (!salir); // YA TENEMOS EL CLIENTE... A CONTRATAR UNA CUENTA CUENTA AHORROS SI O SI contrato = ControladorContrato.crearContratoDefault(banka.lista_productos[0]); // 0 - Cuenta de Ahorros contrato.id_cliente = cliente.id; // EN VERDAD NO ES NECESARIO, PUES EL CONTRARO ES CONTENIDO EN UN CLIENTE cliente.agregarContrato(contrato); // YA QUE TENEMOS EL CONTRATO, EVALUAMOS EL IMPORTE PARA VER EL TIPO DE CLIENTE saldo = contrato.saldo; if (saldo > 15000.00F) { tipoc = banka.lista_tipos_clientes[2]; // 0-silver 1-gold 2-platinum } else if (saldo > 6000.00F) { tipoc = banka.lista_tipos_clientes[1]; } else { tipoc = banka.lista_tipos_clientes[0]; } cliente.tipo_cliente = tipoc; banka.agregarCliente(cliente); CH.lcd("\n" + contrato.ToString()); CH.lcd("\ni> Se ha agregado un nuevo cliente a la banka..."); CH.pausa(); }