private static void ModificarEmpleado(Facultad facultad) { try { Console.WriteLine("Los empleados disponibles para su modificacion son: \n" + facultad.ListarEmpleados()); int legajo = ServValidac.PedirInt("Ingrese el codigo de empleado a modificar"); Console.WriteLine("El alumno a modificar es: \n" + facultad.TraerEmpleadoPorLegajo(legajo)); Empleado empleadoAModificar = facultad.TraerEmpleadoPorLegajo(legajo); string apellido = ServValidac.PedirStrNoVac("Ingrese apellido "); string nombre = ServValidac.PedirStrNoVac("Ingrese nombre"); DateTime fechanac = ServValidac.PedirFechaNac("Ingrese fecha de nacimiento"); DateTime fechaIngreso = ServValidac.PedirFechaNac("Ingrese fecha de ingreso"); double bruto = ServValidac.PedirDouble("Ingrese remuneracion bruta"); Empleado empleadoNuevo = null; if (empleadoAModificar is Bedel) { string apodo = ServValidac.PedirStrNoVac("Ingrese apodo"); empleadoNuevo = new Bedel(nombre, apodo, apellido, fechanac, fechaIngreso, legajo, bruto); } else if (empleadoAModificar is Docente) { empleadoNuevo = new Docente(nombre, apellido, fechanac, fechaIngreso, legajo, bruto); } else if (empleadoAModificar is Directivo) { empleadoNuevo = new Directivo(nombre, apellido, fechanac, fechaIngreso, legajo, bruto); } facultad.ModificarEmpleado(empleadoNuevo); Console.WriteLine("El empleado quedo modificado de la siguiente manera: \n" + facultad.TraerEmpleadoPorLegajo(legajo)); } catch (MenorDeEdadException ed) { Console.WriteLine(ed.Message); } catch (Exception ex) { Console.WriteLine(ex.Message); } }
public static void ModificarEmpleado(Facultad FCE) { try { Console.WriteLine("MODIFICAR EMPLEADOS\n"); ListarEmpleados(FCE); int legajo = ConsolaHelper.PedirLegajo(0, 999999); string apellido = ConsolaHelper.PedirApellidoEmpleado(); FCE.ModificarEmpleado(legajo, apellido); Console.WriteLine("\nEmpleado modificado correctamente."); Console.WriteLine("\nIngrese una tecla para continuar."); Console.ReadKey(); Console.Clear(); } catch (Exception ex) { Console.WriteLine("\nLo sentimos hubo un error en el sistema. " + ex.Message + "Intentelo nuevamente."); Console.WriteLine("\nIngrese una tecla para continuar."); Console.ReadKey(); Console.Clear(); } }
public static void ModificarEmpleado(Facultad facultad) { string nombre; string apellido; DateTime fechaNac; DateTime fechaIngreso; string apodo = ""; ListarTodosLosEmpleados(facultad); Empleado empleado = facultad.TraerEmpleadoPorLegajo(Validaciones.Entero("legajo", Validaciones.minLegajo, Validaciones.maxLegajo)); if (empleado == null) { Console.WriteLine("No hay empleado con ese legajo"); } else { Console.WriteLine("Desea cambiar el nombre " + empleado.Nombre + "? Ingrese S si desea cambiarlo...."); if (Console.ReadLine().ToLower() == "s") { nombre = Validaciones.Texto("nuevo nombre"); } else { nombre = empleado.Nombre; } Console.WriteLine("Desea cambiar el apellido " + empleado.Apellido + "? Ingrese S si desea cambiarlo...."); if (Console.ReadLine().ToLower() == "s") { apellido = Validaciones.Texto("nuevo apellido"); } else { apellido = empleado.Apellido; } Console.WriteLine("Desea cambiar la fecha de nacimiento " + empleado.FechaNacimiento.ToString("DD/MM/YYYY") + "? Ingrese S si desea cambiarlo...."); if (Console.ReadLine().ToLower() == "s") { fechaNac = Validaciones.Fecha("nueva fecha de nacimiento"); } else { fechaNac = empleado.FechaNacimiento; } Console.WriteLine("Desea cambiar la fecha de ingreso " + empleado.FechaIngreso.ToString("dd/MM/YYYY") + "? Ingrese S si desea cambiarlo...."); if (Console.ReadLine().ToLower() == "s") { fechaIngreso = Validaciones.Fecha("nueva fecha de ingreso"); } else { fechaIngreso = empleado.FechaIngreso; } if (empleado is Bedel) { Bedel empleadoAux = (Bedel)empleado; Console.WriteLine("Desea cambiar el apodo " + empleadoAux.Apodo + "? Ingrese S si desea cambiarlo...."); if (Console.ReadLine().ToLower() == "s") { apodo = Validaciones.Texto("nuevo apodo"); } else { apodo = empleadoAux.Apodo; } } try { facultad.ModificarEmpleado(nombre, apellido, fechaNac, empleado.Legajo, fechaIngreso, apodo); Console.WriteLine("El Empleado se modifico con exito!"); } catch (Exception e) { Console.WriteLine("Error - " + e.Message); } } }
static void Main(string[] args) { Facultad f1 = new Facultad("La Dieguito Maradona", 1); ConsolaHelper.PedirTexto("Bienvenido a la facultad: " + f1.Nombre + ". Presione -ENTER-"); bool finalizar = false; do { string listado = null; int eleccion = ConsolaHelper.PedirNumero("\nSelecione opción: \n1- Agregar Alumno \n" + "2- Agregar Empleado \n3- Eliminar Alumno \n4- Eliminar Empleado \n5- Modificar Empleado \n" + "6- Traer Alumnos \n7- Traer Empleados x legajo \n8- Traer Empleados \n" + "9- Traer Empleados x nombre \n10- Apagar \n"); if (eleccion > 10 || eleccion < 0) { ConsolaHelper.Mensaje("\n--Debe ingresar una opción válida--\n"); } else { switch (eleccion) { case 1: f1.AgregarAlumno( ConsolaHelper.PedirTexto("Ingrese nombre del alumno"), ConsolaHelper.PedirTexto("Ingrese apellido del alumno"), ConsolaHelper.PedirFecha("Ingrese fecha de nacimiento"), ConsolaHelper.PedirNumero("Ingrese código del alumno")); break; case 2: try { f1.AgregarEmpleado( ConsolaHelper.PedirTexto("Ingrese tipo de empleado: BEDEL - DOCENTE - DIRECTIVO"), ConsolaHelper.PedirTexto("Ingrese nombre del empleado"), ConsolaHelper.PedirTexto("Ingrese apellido del empleado"), ConsolaHelper.PedirFecha("Ingrese fecha de nacimiento del empleado"), DateTime.Today, ConsolaHelper.PedirNumero("Ingrese legajo"), ConsolaHelper.PedirTexto("En caso de ser BEDEL ingrese apodo, caso contrario presione ENTER")); ConsolaHelper.Mensaje("Se agregó el nuevo empleado"); }catch (Exception ex1) { ConsolaHelper.Mensaje(ex1.Message); } break; case 3: try { f1.EliminarAlumno(ConsolaHelper.PedirNumero("Ingrese código del alumno a eliminar")); ConsolaHelper.Mensaje("Se ha eliminado el alumno"); } catch (Exception ex1) { ConsolaHelper.Mensaje(ex1.Message); } break; case 4: try { f1.EliminarEmpleado(ConsolaHelper.PedirNumero("Ingrese legajo del empleado")); ConsolaHelper.Mensaje("Se ha eliminado el empleado"); } catch (Exception ex1) { ConsolaHelper.Mensaje(ex1.Message); } break; case 5: try { f1.ModificarEmpleado( ConsolaHelper.PedirNumero("Ingrese legajo del empleado a modificar"), ConsolaHelper.PedirTexto("Ingrese nombre"), ConsolaHelper.PedirTexto("Ingrese apellido"), ConsolaHelper.PedirFecha("Ingrese nacimiento")); } catch (Exception ex1) { ConsolaHelper.Mensaje(ex1.Message); } break; case 6: foreach (Alumno al in f1.TraerAlumnos()) { listado += (al.ToString() + "\n"); } ConsolaHelper.Mensaje(listado); break; case 7: foreach (Empleado emp in f1.TraerEmpleadoPorLegajo(ConsolaHelper.PedirNumero("Ingrese legajo"))) { listado += (emp.ToString() + "\n"); } ConsolaHelper.Mensaje(listado); break; case 8: foreach (Empleado emp in f1.TraerEmpleado()) { listado += (emp.ToString() + "\n"); } ConsolaHelper.Mensaje(listado); break; case 9: foreach (Empleado emp in f1.TraerEmpleadoPorNombre(ConsolaHelper.PedirTexto("Ingrese nombre"))) { listado += (emp.ToString() + "\n"); } ConsolaHelper.Mensaje(listado); break; case 10: finalizar = true; ConsolaHelper.Mensaje("\nGracias por usar la app"); break; } } } while (finalizar == false); }
static void Main(string[] args) { int opcionMenu; int codAlumno; string nombre; string apellido; string apodo; int codEmpleado; int tipoEmpleado; DateTime fechaNacimiento; DateTime fechaIngreso; Facultad facultad = new Facultad("UBA"); while (true) { DesplegarOpcionesMenu(); opcionMenu = Validacion.PedirNumero("la opción de menú que desee"); switch (opcionMenu) { case 1: //Agregar alumno nombre = Validacion.PedirString("nombre del alumno"); apellido = Validacion.PedirString("apellido del alumno"); fechaNacimiento = Validacion.PedirFecha("fecha de nacimiento"); try { facultad.AgregarAlumno(nombre, apellido, fechaNacimiento); } catch (AlumnoExistenteException e) { Console.WriteLine(e); } break; case 2: //modificar alumno ListarAlumnosDe(facultad); codAlumno = Validacion.PedirNumero("el código de alumno a modificar"); try { Console.WriteLine("Elegiste " + facultad.BuscarAlumno(codAlumno).ToString()); nombre = Validacion.PedirString("nombre del alumno"); apellido = Validacion.PedirString("apellido del alumno"); fechaNacimiento = Validacion.PedirFecha("fecha de nacimiento"); Alumno alumnoAModificar = new Alumno(nombre, apellido, fechaNacimiento, codAlumno); facultad.ModificarAlumno(alumnoAModificar); Console.WriteLine("Alumno modificado exitosamente"); } catch (PersonaInexistenteException e) { Console.WriteLine(e.Message); } break; case 3: //eliminar alumno facultad.AgregarAlumno("Michelle", "Rosenblat", new DateTime(1998, 03, 04)); facultad.AgregarAlumno("Juan", "Perez", new DateTime(1998, 04, 04)); ListarAlumnosDe(facultad); codAlumno = Validacion.PedirNumero("el código de alumno a eliminar"); try { facultad.EliminarAlumno(codAlumno); Console.WriteLine("Alumno eliminado exitosamente"); } catch (PersonaInexistenteException e) { Console.WriteLine(e.Message); } break; case 4: //buscar alumno especifico codAlumno = Validacion.PedirNumero("el código de alumno a buscar"); try { Console.WriteLine(facultad.BuscarAlumno(codAlumno)); } catch (PersonaInexistenteException e) { Console.WriteLine(e.Message); } break; case 5: //listar todos los alumnos ListarAlumnosDe(facultad); break; case 6: //agregar empleado //esto se puede mejorar? para no tener q asignar todo el tiempo en estas variables. nombre = Validacion.PedirString("nombre del empleado"); apellido = Validacion.PedirString("apellido del empleado"); fechaNacimiento = Validacion.PedirFecha("fecha de nacimiento del empleado"); fechaIngreso = Validacion.PedirFecha("fecha de ingreso del empleado"); tipoEmpleado = Validacion.PedirNumero("1 para Docente, 2 para Directivo, 3 para Bedel"); switch (tipoEmpleado) { case 1: facultad.AgregarEmpleado(nombre, apellido, fechaNacimiento, fechaIngreso, tipoEmpleado); break; case 2: facultad.AgregarEmpleado(nombre, apellido, fechaNacimiento, fechaIngreso, tipoEmpleado); break; case 3: apodo = Validacion.PedirString("apodo del bedel"); facultad.AgregarEmpleado(nombre, apodo, apellido, fechaNacimiento, fechaIngreso, tipoEmpleado); break; } break; case 7: //Modificar empleado Docente michu = new Docente("Michelle", "Rosen", new DateTime(1998, 04, 03), new DateTime(2020, 10, 05), facultad.UltimoLegajoEmpleado() + 1); facultad.AgregarEmpleado(michu); ListarEmpleadosDe(facultad); codEmpleado = Validacion.PedirNumero("el código de empleado a modificar"); try { Empleado empleadoAModificar = facultad.BuscarEmpleado(codEmpleado); Console.WriteLine("Elegiste " + empleadoAModificar.GetCredencial()); switch (empleadoAModificar) { case Docente docente: ModificarEmpleado(out nombre, out apellido, out fechaNacimiento, out fechaIngreso, empleadoAModificar); Docente docenteAModificar = new Docente(nombre, apellido, fechaNacimiento, fechaIngreso, codEmpleado); facultad.ModificarEmpleado(docenteAModificar); Console.WriteLine(docenteAModificar.ToString()); break; case Directivo directivo: ModificarEmpleado(out nombre, out apellido, out fechaNacimiento, out fechaIngreso, empleadoAModificar); Directivo directivoAModificar = new Directivo(nombre, apellido, fechaNacimiento, fechaIngreso, codEmpleado); facultad.ModificarEmpleado(directivoAModificar); Console.WriteLine(directivoAModificar.ToString()); break; case Bedel bedel: ModificarEmpleado(out nombre, out apellido, out fechaNacimiento, out fechaIngreso, empleadoAModificar); Console.WriteLine(bedel.Apodo); apodo = Validacion.PedirStringOEnter("apodo", bedel.Apodo); Bedel bedelAModificar = new Bedel(nombre, apellido, apodo, fechaNacimiento, fechaIngreso, codEmpleado); facultad.ModificarEmpleado(bedelAModificar); Console.WriteLine(bedelAModificar.ToString()); break; } } catch (PersonaInexistenteException e) { Console.WriteLine(e.Message); } break; case 8: ListarEmpleadosDe(facultad); codEmpleado = Validacion.PedirNumero("el código de empleado a eliminar"); try { Empleado empleadoAEliminar = facultad.BuscarEmpleado(codEmpleado); Console.WriteLine("Elegiste " + empleadoAEliminar.GetCredencial()); facultad.EliminarEmpleado(codEmpleado); Console.WriteLine("Se ha eliminado exitosamente el empleado con codigo " + codEmpleado); } catch (PersonaInexistenteException ex) { Console.WriteLine(ex.Message); } break; case 9: try { codEmpleado = Validacion.PedirNumero("el código de empleado a buscar"); Empleado empleado = facultad.BuscarEmpleado(codEmpleado); Console.WriteLine("Elegiste a " + empleado.ToString()); } catch (PersonaInexistenteException ex) { Console.WriteLine(ex.Message); } break; case 10: ListarEmpleadosDe(facultad); break; } } }
static void Main(string[] args) { Facultad f1 = new Facultad("La Dieguito Maradona", 1); Console.WriteLine("Bienvenido a " + f1.Nombre + " - Presione -ENTER- para continuar.."); bool finalizar = false; do { int eleccion = ConsolaHelper.PedirNumero("\nSelecione opción: \n1 - Agregar Alumno \n" + "2- Agregar Empleado \n3- Eliminar Alumno \n4- Eliminar Empleado \n5- Modificar Empleado \n" + "6- Traer Alumnos \n7- Traer Empleados x legajo \n8- Traer Empleados \n" + "9- Traer Empleados x nombre \n10- Agregar Salario \n11- Apagar \n"); if (eleccion > 11) { throw new Exception("Eliga una opción válida"); } else { switch (eleccion) { case 1: Alumno al = new Alumno(f1.TraerUltimoCodigo(), ConsolaHelper.PedirTexto("Ingrese nombre"), ConsolaHelper.PedirTexto("Ingrese apellido"), ConsolaHelper.PedirFecha("Ingrese fecha de nacimiento")); f1.AgregarAlumno(al); Console.WriteLine("\nSe ha ingresado el alumno con éxito"); break; case 2: int tipo = ConsolaHelper.PedirNumero("Ingrese el tipo de empleado: 1-Bedel 2 -Docente 3 - Directivo"); switch (tipo) { case 1: Bedel bedel = new Bedel(ConsolaHelper.PedirTexto("Ingrese apodo"), ConsolaHelper.PedirTexto("Ingrese nombre"), ConsolaHelper.PedirTexto("Ingrese apellido"), ConsolaHelper.PedirFecha("Ingrese fecha de nacimiento"), ConsolaHelper.PedirFecha("Ingrese fecha de ingreso"), f1.TraerUltimoLegajo()); f1.AgregarEmpleado(bedel, tipo, bedel.Apodo); Console.WriteLine("\nSe ha ingresado el empleado con éxito"); break; case 2: Docente docente = new Docente(ConsolaHelper.PedirTexto("Ingrese nombre"), ConsolaHelper.PedirTexto("Ingrese apellido"), ConsolaHelper.PedirFecha("Ingrese fecha de nacimiento"), f1.TraerUltimoLegajo(), ConsolaHelper.PedirFecha("Ingrese fecha de ingreso")); Console.WriteLine("\nSe ha ingresado el empleado con éxito"); break; case 3: Directivo directivo = new Directivo(ConsolaHelper.PedirTexto("Ingrese nombre"), ConsolaHelper.PedirTexto("Ingrese apellido"), ConsolaHelper.PedirFecha("Ingrese fecha de nacimiento"), f1.TraerUltimoLegajo(), ConsolaHelper.PedirFecha("Ingrese fecha de ingreso")); Console.WriteLine("\nSe ha ingresado el empleado con éxito"); break; } break; case 3: f1.EliminarAlumno(ConsolaHelper.PedirNumero("Ingrese código del alumno")); Console.WriteLine("\nSe ha eliminado el alumno con éxito"); break; case 4: f1.EliminarEmpleado(ConsolaHelper.PedirNumero("Ingrese legajo del empleado")); Console.WriteLine("\nSe ha eliminado el empleado con éxito"); break; case 5: Empleado amodificar = f1.TraerEmpleadoPorLegajo(ConsolaHelper.PedirNumero("Ingrese número de legajo")); Console.WriteLine(amodificar.GetNombreCompleto()); f1.ModificarEmpleado(ConsolaHelper.PedirTexto("Ingrese nuevo apellido"), ConsolaHelper.PedirTexto("Ingrese nuevo nombre"), amodificar.Legajo, ConsolaHelper.PedirTexto("En caso de ser bedel ingrese apodo")); Console.WriteLine("\nSe ha modificado el empleado con éxito"); break; case 6: Console.WriteLine(f1.ListarAlumnos()); break; case 7: Console.WriteLine(f1.TraerEmpleadoPorLegajo(ConsolaHelper.PedirNumero("Ingrese legajo"))); break; case 8: Console.WriteLine(f1.ListarEmpleados()); break; case 9: string listado = ""; foreach (Empleado emp in f1.TraerEmpleadoPorNombre(ConsolaHelper.PedirTexto("Ingrese nombre"))) { listado += emp.GetNombreCompleto() + "\n"; } Console.WriteLine("\n" + listado); break; case 10: Console.WriteLine(f1.ListarEmpleados()); f1.AgregarNuevoSalario(ConsolaHelper.PedirNumero("Ingrese el legajo del empleado a ingresar salario"), new Salario(ConsolaHelper.PedirDouble("Ingrese sueldo bruto"), ConsolaHelper.PedirTexto("Ingrese código de transferencia"))); Console.WriteLine("\nSe ha agregado el nuevo salario con éxito"); break; case 11: finalizar = true; break; } } } while (finalizar == false); }
static void ModificarEmpleado(Facultad F) { ConsolaHelper H = new ConsolaHelper(); Validaciones V = new Validaciones(); try { if (F.CantidadEmpleados() == 0) { throw new ListaEmpleadoVaciaException(); } else { try { string leg; bool flag = false; do { leg = H.PedirLegajoAModificar(); flag = V.ValidarLegajoEmpleado(leg); } while (!flag); try { if (F.TraerEmpleadoporLegajo(Convert.ToInt32(leg)) == null) { throw new EmpleadoInexistenteException(); } else { Empleado E = F.TraerEmpleadoporLegajo(Convert.ToInt32(leg)); H.MostrarMensaje("Nombre: " + E.Nombre + " Apellido: " + E.Apellido); bool flag2 = false; bool flag3 = false; string pedirN; string pedirA; do { H.MostrarMensaje("Ingrese el nuevo nombre o presione la tecla 'F' para saltear este paso: "); pedirN = H.PedirModificar(); flag2 = V.ValidarStringNULL(pedirN); } while (!flag2); do { H.MostrarMensaje("Ingrese el nuevo apellido o presione la tecla 'F' para saltear este paso: "); pedirA = H.PedirModificar(); flag3 = V.ValidarStringNULL(pedirA); } while (!flag3); F.ModificarEmpleado(pedirN, pedirA, Convert.ToInt32(leg)); } } catch (EmpleadoInexistenteException e) { H.MostrarMensaje(e.Message); } } catch (Exception e) { H.MostrarMensaje(e.Message); } } } catch (ListaEmpleadoVaciaException e) { H.MostrarMensaje(e.Message); } }