private static bool MateriaAltaPruebas(string nameMateria, string nameTeacher) { ValidationResult <string> vrName; if (!(vrName = Subject.ValidateName(nameMateria)).IsSuccess) { Console.WriteLine(vrName.AllErrors); } ValidationResult <string> vrTeacher; if (!(vrTeacher = Subject.ValidateTeacher(nameTeacher)).IsSuccess) { Console.WriteLine(vrTeacher.AllErrors); } var subject = new Subject { Name = nameMateria, Teacher = nameTeacher }; var sr2 = SubjectRepository.Add(subject); if (sr2.IsSuccess && subject.Save().IsSuccess) { Console.WriteLine($"asignatura guardada correctamente"); return(true); } else { Console.WriteLine($"uno o más errores han ocurrido y la asignatura no se ha guardado correctamente"); } return(false); }
private static bool MateriaEdicion() { LimpiarConsoleLine(); Console.WriteLine("3 - 2) Edición de Materia. Para volver al menú Materia en cualquier momento entra *."); Console.WriteLine("Entra el nombre de la materia:"); var name = Console.ReadLine(); var result = SubjectRepository.GetSubjectByName(name); if (result != null) { Console.WriteLine("entra el profesor que corresponda a la materia:"); var teacher = ""; bool primera = true; ValidationResult <string> vrTeacher = Subject.ValidateTeacher(teacher); do { if (!primera) { Console.WriteLine(vrTeacher.AllErrors); } teacher = Console.ReadLine(); if (teacher == "*") { return(false); } primera = false; } while (!(vrTeacher = Subject.ValidateName(teacher)).IsSuccess); if (vrTeacher.IsSuccess) { Subject editedSubject = new Subject { Name = name, Teacher = teacher }; SubjectRepository.Update(editedSubject); return(true); } } else { Console.WriteLine("Ninguna coincidencia con esta materia!"); Console.WriteLine("¿Algo más del menú de materias?, en caso contrario entra 'p' para ir al menú principal."); } return(false); }
static void ShowHandleSubjectsMenu() { CurrentOption = "s"; Console.WriteLine("Menu de gestionar asignaturas."); Console.WriteLine("Opciones: a - para añadir una nueva asignatura"); Console.WriteLine("Opciones: s - para ver alumnos por asignatura"); Console.WriteLine("Opciones: e - para ver exámenes de asignatura"); Console.WriteLine("Presione m para acabar y volver al menú principal"); while (true) { var option = Console.ReadLine(); if (option == "m") { break; } else if (option == "a") { Console.WriteLine("Para volver sin guardar asignatura escriba *."); Console.WriteLine("escriba el nombre:"); #region read dni var name = Console.ReadLine(); if (name == "*") { break; } while (!Subject.ValidateName(name)) { Console.WriteLine("el nombre está en formato incorrecto, vuelva a escribirlo"); name = Console.ReadLine(); } while (DbContext.SubjectsByName.ContainsKey(name)) { Console.WriteLine("ya existe una asignatura con este name"); name = Console.ReadLine(); if (name == "*") { break; } } if (name == "*") { break; } #endregion var subject = new Subject { Name = name }; if (subject.Save()) { Console.WriteLine($"asignatura guardada correctamente"); } else { Console.WriteLine($"uno o más errores han ocurrido y la asignatura no se ha guardado correctamente"); } } } ClearCurrentConsoleLine(); Console.WriteLine(); ShowMainMenu(); }
private static bool MateriaAlta() { LimpiarConsoleLine(); Console.WriteLine("3 - 1) Alta de Materia. Para volver al menú Materia en cualquier momento entra *."); Console.WriteLine("Entra el nombre de la materia:"); Console.WriteLine("Para volver sin guardar asignatura escriba *."); var name = ""; bool primera = true; ValidationResult <string> vrName = Subject.ValidateName(name); do { if (!primera) { Console.WriteLine(vrName.AllErrors); } name = Console.ReadLine(); if (name == "*") { return(false); } primera = false; } while (!(vrName = Subject.ValidateName(name)).IsSuccess); Console.WriteLine("escriba el nombre del profesor:"); var teacher = ""; primera = true; ValidationResult <string> vrTeacher = Subject.ValidateTeacher(teacher); do { if (!primera) { Console.WriteLine(vrTeacher.AllErrors); } teacher = Console.ReadLine(); if (teacher == "*") { return(false); } primera = false; } while (!(vrTeacher = Subject.ValidateName(teacher)).IsSuccess); var subject = new Subject { Name = name, Teacher = teacher }; var sr2 = SubjectRepository.Add(subject); if (sr2.IsSuccess && subject.Save().IsSuccess) { Console.WriteLine($"asignatura guardada correctamente"); return(true); } else { Console.WriteLine($"uno o más errores han ocurrido y la asignatura no se ha guardado correctamente"); } return(false); }
static void ShowHandleSubjectsMenu() { CurrentOption = "s"; Console.WriteLine("Menu de gestionar asignaturas."); Console.WriteLine("Opciones: a - para añadir una nueva asignatura"); Console.WriteLine("Opciones: s - para ver alumnos por asignatura"); Console.WriteLine("Opciones: e - para ver exámenes de asignatura"); Console.WriteLine("Presione m para acabar y volver al menú principal"); while (true) { var option = Console.ReadLine(); if (option == "m") { break; } else if (option == "a") { Console.WriteLine("Para volver sin guardar asignatura escriba *."); Console.WriteLine("escriba el nombre:"); #region read dni var name = Console.ReadLine(); if (name == "*") { break; } ValidationResult <string> vrSubjectName; while (!(vrSubjectName = Subject.ValidateName(name)).IsSuccess) { Console.WriteLine("el nombre está en formato incorrecto, vuelva a escribirlo"); name = Console.ReadLine(); } var repo = new Repository <Subject>(); var entityWithName = repo.QueryAll().FirstOrDefault(x => x.Name == name); while (!(vrSubjectName = Subject.ValidateName(name)).IsSuccess) { Console.WriteLine("ya existe una asignatura con este name"); name = Console.ReadLine(); if (name == "*") { break; } } if (name == "*") { break; } #endregion var subject = new Subject { Name = name }; var sr = subject.Save(); if (sr.IsSuccess) { Console.WriteLine($"asignatura guardada correctamente"); } else { Console.WriteLine($"uno o más errores han ocurrido y la asignatura no se ha guardado correctamente"); } } } ClearCurrentConsoleLine(); Console.WriteLine(); ShowMainMenu(); }