List <Materia>[] DividirListaMaterias(List <Materia> materias, int idAlumno) { var materiasDisponibles = new List <Materia>(); var materiasNoDisponibles = new List <Materia>(); var vectorListas = new List <Materia> [2]; foreach (var materia in materias) { var horariosValidos = HorariosDisponibles(materia.Horarios, idAlumno); if (InscripcionRepository.ValidarMateriaAprobada(materia.Id, idAlumno) || (!InscripcionRepository.ValidarCorrelativas(materia.Id, idAlumno)) || (InscripcionRepository.ValidarMateriaEnCurso(materia.Id, idAlumno)) || (horariosValidos.Count == 0)) { materiasNoDisponibles.Add(materia); } else { materiasDisponibles.Add(materia); materiasDisponibles.Last().Horarios = new List <Horario>(horariosValidos); } } vectorListas[Constantes.MateriasDisponibles] = materiasDisponibles; vectorListas[Constantes.MateriasNoDisponibles] = materiasNoDisponibles; return(vectorListas); }
bool ValidarMateria(int idMateria, Dias dia, Turnos turno, int idAlumno) { if (!InscripcionRepository.ValidarCorrelativas(idMateria, idAlumno)) { return(false); } if (InscripcionRepository.ValidarMateriaAprobada(idMateria, idAlumno)) { return(false); } if (InscripcionRepository.ValidarMateriaEnCurso(idMateria, idAlumno)) { return(false); } if (!InscripcionRepository.ValidarHorarioLibre(idAlumno, dia, turno).Equals(Constantes.Default)) { return(false); } return(true); }