public static void EditarAsignatura() { if (Logica.Asignatura.ListarTodas().Count == 0) { MetodosComunes.MensajeColor(mensaje: "\nLa lista de Asignaturas esta vacia", color: ConsoleColor.Red); MetodosComunes.Continuar(); } else { int cantidad = MetodosComunes.ValidacionNumericaInt(mensajeIngreso: $"\nCuantas asignaturas quiere editar (1-50):", mensajeError: "Valor no comprendido entre 1 y 50", minimoValorInput: 1, maximoValorInput: 50); Entidades.Asignaturas asignatura; Entidades.ListadoAsignaturas listadoAsignatura; Entidades.Alumnos alumno; Entidades.Carreras carrera; int ID, horas, minutos; string devolucionAgregar; for (int i = 0; i < cantidad; i++) { do { MetodosInformar.InformarTodasAsignaturas(); ID = MetodosComunes.ValidacionNumericaInt(mensajeIngreso: $"\nElija el ID de la Asignatura a editar:", mensajeError: "\nEl ID no puede ser 0 o menor.", minimoValorInput: 1, borrarInformacion: false); asignatura = Logica.Asignatura.ListarUna(asignaturaID: ID); if (asignatura == null) { MetodosComunes.MensajeColor(mensaje: "\nLa Asignatura no existe.", color: ConsoleColor.Red); } } while (asignatura == null); MetodosEliminar.EliminarRegistro(elementoABorrar: Enumeraciones.Tablas.Asignaturas, tablaAsociada: Enumeraciones.Tablas.Notas, id: ID); if (MetodosInformar.InformarListadoAsignaturas() == 0) { MetodosComunes.MensajeColor(mensaje: "\nEl listado de Asignaturas esta vacio. Se debe tener al menos una asignatura en la tabla ListadoAsignaturas.", color: ConsoleColor.Red); MetodosComunes.Continuar(); } else { do { MetodosComunes.MensajeColor(mensaje: $"\nAnterior ListadoAsignaturasID: {asignatura.ListadoAsignaturasId}"); ID = asignatura.ListadoAsignaturasId = MetodosComunes.ValidacionNumericaInt(mensajeIngreso: "\nNuevo ListadoAsignaturasID:", minimoValorInput: 1, mensajeError: "\nEl valor debe ser mayor que 1", borrarInformacion: false); listadoAsignatura = Logica.ListadoAsignatura.ListarUna(listadoAsignaturasID: ID); if (listadoAsignatura == null) { MetodosComunes.MensajeColor(mensaje: "\nLa Asignatura del listado no existe.", color: ConsoleColor.Red); } } while (listadoAsignatura == null); if (MetodosInformar.InformarTodosAlumnos() == 0) { MetodosComunes.MensajeColor(mensaje: "\nLa lista de Alumnos esta vacia. Se debe tener al menos una asignatura en la tabla Alumnos.", color: ConsoleColor.Red); MetodosComunes.Continuar(); } else { do { MetodosComunes.MensajeColor(mensaje: $"\nAnterior AlumnoID: {asignatura.AlumnoId}"); ID = asignatura.AlumnoId = MetodosComunes.ValidacionNumericaInt(mensajeIngreso: "\nNuevo AlumnoID:", minimoValorInput: 1, mensajeError: "\nEl valor debe ser mayor que 1", borrarInformacion: false); alumno = Logica.Alumno.ListarUno(alumnoID: ID); if (alumno == null) { MetodosComunes.MensajeColor(mensaje: "\nEl alumno no existe.", color: ConsoleColor.Red); } } while (alumno == null); if (MetodosInformar.InformarTodasCarreras() == 0) { MetodosComunes.MensajeColor(mensaje: "\nLa lista de Alumnos esta vacia. Se debe tener al menos una asignatura en la tabla Carreras.", color: ConsoleColor.Red); MetodosComunes.Continuar(); } else { do { MetodosComunes.MensajeColor(mensaje: $"\nAnterior CarreraID: {asignatura.CarreraId}"); ID = asignatura.CarreraId = MetodosComunes.ValidacionNumericaInt(mensajeIngreso: "\nNueva CarreraID:", minimoValorInput: 1, mensajeError: "\nEl valor debe ser mayor a 1.", borrarInformacion: false); carrera = Logica.Carrera.ListarUna(carreraID: ID); if (carrera == null) { MetodosComunes.MensajeColor(mensaje: "\nLa carrera no existe.", color: ConsoleColor.Red); } } while (carrera == null); MetodosComunes.MensajeColor(mensaje: $"\nAnterior Comision: {asignatura.Comision}"); asignatura.Comision = MetodosComunes.ValidacionNumericaInt(mensajeIngreso: "\nNueva Comision:", minimoValorInput: 1, mensajeError: "\nEl valor debe ser mayor a 1."); Console.WriteLine("\nIngrese el nuevo horario de entrada de la materia"); MetodosComunes.MensajeColor(mensaje: $"\nAnterior Hora de entrada: {asignatura.HorarioEntrada.Hours}"); horas = MetodosComunes.ValidacionNumericaInt(mensajeIngreso: "\nIndique la nueva hora entre 0 y 23:", mensajeError: "\nIngrese un valor entre 0 y 23", minimoValorInput: 0, maximoValorInput: 23); MetodosComunes.MensajeColor(mensaje: $"\nAnterior Minutos de entrada: {asignatura.HorarioEntrada.Minutes}"); minutos = MetodosComunes.ValidacionNumericaInt(mensajeIngreso: "\nIndique los nuevos minutos entre 0 y 59:", mensajeError: "\nIngrese un valor entre 0 y 59", minimoValorInput: 0, maximoValorInput: 59); asignatura.HorarioEntrada = new TimeSpan(hours: horas, minutes: minutos, seconds: 0); Console.WriteLine("\nIngrese el nuevo horario de salida de la materia"); MetodosComunes.MensajeColor(mensaje: $"\nAnterior Hora de salida: {asignatura.HorarioSalida.Hours}"); horas = MetodosComunes.ValidacionNumericaInt(mensajeIngreso: "\nIngrese la hora entre 0 y 23:", mensajeError: "\nIngrese un valor entre 0 y 23", minimoValorInput: 0, maximoValorInput: 23); MetodosComunes.MensajeColor(mensaje: $"\nAnterior Minutos de salida: {asignatura.HorarioSalida.Minutes}"); minutos = MetodosComunes.ValidacionNumericaInt(mensajeIngreso: "\nIngrese los minutos entre 0 y 59:", mensajeError: "\nIngrese un valor entre 0 y 59", minimoValorInput: 0, maximoValorInput: 59); asignatura.HorarioSalida = new TimeSpan(hours: horas, minutes: minutos, seconds: 0); MetodosComunes.MensajeColor(mensaje: $"\nAnteriores Dias: {asignatura.Dias}"); asignatura.Dias = MetodosComunes.ValidacionTexto(mensajeIngreso: "\nNuevos Dias:", mensajeError: "\nEl valor debe estar comprendido en Lunes-Martes-Miercoles-Jueves-Viernes-Sabado-Domingo"); asignatura.AsignaturaId = 0; devolucionAgregar = Logica.Asignatura.Agregar(asignatura); if (devolucionAgregar.Contains("no ha sido agregado")) { MetodosComunes.MensajeColor(mensaje: $"\n{devolucionAgregar}", color: ConsoleColor.Red); } } } } } } }
public static void ElegirOpciones() { bool salir = true; bool primeraVez = false; do { if (primeraVez) { MetodosComunes.Continuar(); Console.Clear(); } primeraVez = true; switch (MetodosComunes.ValidacionNumericaInt(mensajeIngreso: "\nQue desea hacer? Elija la opcion deseada:\n\n1 = Alumnos.\n\n2 = Asignaturas.\n\n3 = Carreras.\n\n4 = Facultades.\n\n5 = Asignaturas del listado.\n\n6 = Carreras del listado.\n\n7 = Notas.\n\n8 = Salir.\n\n---\n", mensajeError: "El valor ingresado no esta comprendido entre 1 y 8.", minimoValorInput: 1, maximoValorInput: 8)) { case 1: switch (MetodosComunes.ValidacionNumericaInt(mensajeIngreso: "\nQue desea hacer? Elija la opcion deseada:\n\n1 = Agregar.\n\n2 = Editar.\n\n3 = Eliminar.\n\n4 = Mostrar todos.\n\n5 = Volver al menu anterior.\n\n---\n", mensajeError: "El valor ingresado no esta comprendido entre 1 y 5.", minimoValorInput: 1, maximoValorInput: 5)) { case 1: MetodosAgregar.AgregarRegistro(elementoAgregar: Enumeraciones.Tablas.Alumnos); break; case 2: MetodosEditar.EditarAlumno(); break; case 3: MetodosEliminar.EliminarRegistro(elementoABorrar: Enumeraciones.Tablas.Alumnos, tablaAsociada: Enumeraciones.Tablas.Carreras); break; case 4: if (MetodosInformar.InformarTodosAlumnos() == 0) { MetodosComunes.MensajeColor(mensaje: "\nLa lista de alumnos esta vacia", color: ConsoleColor.Red); } break; default: primeraVez = false; break; } break; case 2: switch (MetodosComunes.ValidacionNumericaInt(mensajeIngreso: "\nQue desea hacer? Elija la opcion deseada:\n\n1 = Agregar.\n\n2 = Editar.\n\n3 = Eliminar.\n\n4 = Mostrar todos.\n\n5 = Volver al menu anterior.\n\n---\n", mensajeError: "El valor ingresado no esta comprendido entre 1 y 5.", minimoValorInput: 1, maximoValorInput: 5)) { case 1: MetodosAgregar.AgregarRegistro(elementoAgregar: Enumeraciones.Tablas.Asignaturas); break; case 2: MetodosEditar.EditarAsignatura(); break; case 3: MetodosEliminar.EliminarRegistro(elementoABorrar: Enumeraciones.Tablas.Asignaturas, tablaAsociada: Enumeraciones.Tablas.Notas); break; case 4: if (MetodosInformar.InformarTodasAsignaturas() == 0) { MetodosComunes.MensajeColor(mensaje: "\nLa lista de asignaturas esta vacia", color: ConsoleColor.Red); } break; default: primeraVez = false; break; } break; case 3: switch (MetodosComunes.ValidacionNumericaInt(mensajeIngreso: "\nQue desea hacer? Elija la opcion deseada:\n\n1 = Agregar.\n\n2 = Editar.\n\n3 = Eliminar.\n\n4 = Mostrar todos.\n\n5 = Volver al menu anterior.\n\n---\n", mensajeError: "El valor ingresado no esta comprendido entre 1 y 5.", minimoValorInput: 1, maximoValorInput: 5)) { case 1: MetodosAgregar.AgregarRegistro(elementoAgregar: Enumeraciones.Tablas.Carreras); break; case 2: MetodosEditar.EditarCarrera(); break; case 3: MetodosEliminar.EliminarRegistro(elementoABorrar: Enumeraciones.Tablas.Carreras, tablaAsociada: Enumeraciones.Tablas.Asignaturas); break; case 4: if (MetodosInformar.InformarTodasCarreras() == 0) { MetodosComunes.MensajeColor(mensaje: "\nLa lista de carreras esta vacia", color: ConsoleColor.Red); } break; default: primeraVez = false; break; } break; case 4: switch (MetodosComunes.ValidacionNumericaInt(mensajeIngreso: "\nQue desea hacer? Elija la opcion deseada:\n\n1 = Agregar.\n\n2 = Editar.\n\n3 = Eliminar.\n\n4 = Mostrar todos.\n\n5 = Volver al menu anterior.\n\n---\n", mensajeError: "El valor ingresado no esta comprendido entre 1 y 5.", minimoValorInput: 1, maximoValorInput: 5)) { case 1: MetodosAgregar.AgregarRegistro(elementoAgregar: Enumeraciones.Tablas.Facultades); break; case 2: MetodosEditar.EditarFacultad(); break; case 3: MetodosEliminar.EliminarRegistro(elementoABorrar: Enumeraciones.Tablas.Facultades); break; case 4: if (MetodosInformar.InformarTodasFacultades() == 0) { MetodosComunes.MensajeColor(mensaje: "\nLa lista de facultades esta vacia", color: ConsoleColor.Red); } break; default: primeraVez = false; break; } break; case 5: switch (MetodosComunes.ValidacionNumericaInt(mensajeIngreso: "\nQue desea hacer? Elija la opcion deseada:\n\n1 = Agregar.\n\n2 = Editar.\n\n3 = Eliminar.\n\n4 = Mostrar todos.\n\n5 = Volver al menu anterior.\n\n---\n", mensajeError: "El valor ingresado no esta comprendido entre 1 y 5.", minimoValorInput: 1, maximoValorInput: 5)) { case 1: MetodosAgregar.AgregarRegistro(elementoAgregar: Enumeraciones.Tablas.ListadoAsignaturas); break; case 2: MetodosEditar.EditarListadoAsignatura(); break; case 3: MetodosEliminar.EliminarRegistro(elementoABorrar: Enumeraciones.Tablas.ListadoAsignaturas, tablaAsociada: Enumeraciones.Tablas.Asignaturas); break; case 4: if (MetodosInformar.InformarListadoAsignaturas() == 0) { MetodosComunes.MensajeColor(mensaje: "\nEl listado de asignaturas esta vacio", color: ConsoleColor.Red); } break; default: primeraVez = false; break; } break; case 6: switch (MetodosComunes.ValidacionNumericaInt(mensajeIngreso: "\nQue desea hacer? Elija la opcion deseada:\n\n1 = Agregar.\n\n2 = Editar.\n\n3 = Eliminar.\n\n4 = Mostrar todos.\n\n5 = Volver al menu anterior.\n\n---\n", mensajeError: "El valor ingresado no esta comprendido entre 1 y 5.", minimoValorInput: 1, maximoValorInput: 5)) { case 1: MetodosAgregar.AgregarRegistro(elementoAgregar: Enumeraciones.Tablas.ListadoCarreras); break; case 2: MetodosEditar.EditarListadoCarrera(); break; case 3: MetodosEliminar.EliminarRegistro(elementoABorrar: Enumeraciones.Tablas.ListadoCarreras); break; case 4: if (MetodosInformar.InformarListadoCarreras() == 0) { MetodosComunes.MensajeColor(mensaje: "\nEl listado de carreras esta vacio", color: ConsoleColor.Red); } break; default: primeraVez = false; break; } break; case 7: switch (MetodosComunes.ValidacionNumericaInt(mensajeIngreso: "\nQue desea hacer? Elija la opcion deseada:\n\n1 = Agregar.\n\n2 = Editar.\n\n3 = Eliminar.\n\n4 = Mostrar todos.\n\n5 = Volver al menu anterior.\n\n---\n", mensajeError: "El valor ingresado no esta comprendido entre 1 y 5.", minimoValorInput: 1, maximoValorInput: 5)) { case 1: MetodosAgregar.AgregarRegistro(elementoAgregar: Enumeraciones.Tablas.Notas); break; case 2: MetodosEditar.EditarNota(); break; case 3: MetodosEliminar.EliminarRegistro(elementoABorrar: Enumeraciones.Tablas.Notas); break; case 4: if (MetodosInformar.InformarTodasNotas() == 0) { MetodosComunes.MensajeColor(mensaje: "\nLa lista de notas esta vacia", color: ConsoleColor.Red); } break; default: primeraVez = false; break; } break; default: salir = false; break; } } while (salir); }