public IEnumerable <PreguntaWrapper> GetPreguntasAlumnoByEstado(EnumEstadoPreguntaFiltro estadoPreguntas) { var preguntasAll = new List <PreguntaWrapper>(); List <Pregunta> preguntas = this.GetPreguntasByEstado((EnumEstadoPreguntaFiltro)estadoPreguntas).ToList(); foreach (Pregunta pregunta in preguntas) { var preguntaWrapper = GetPreguntaWrapperByPregunta(pregunta); preguntasAll.Add(preguntaWrapper); } return(preguntasAll.OrderByDescending(x => x.Nro)); }
public List <Pregunta> GetByEstadoCorreccion(EnumEstadoPreguntaFiltro estadoCorreccion, int?idPregunta = 0) { using (var context = new TP_20191CEntities()) { return(context.Pregunta .Include("Clase") .Include("Tema") .Include("RespuestaAlumno") .Include("RespuestaAlumno.Alumno") .Where(x => x.RespuestaAlumno.Any(m => m.IdAlumno == UserCache.IdUsuario && m.IdResultadoEvaluacion != null && m.IdResultadoEvaluacion == (int)estadoCorreccion) && (idPregunta == 0 || x.IdPregunta == idPregunta)) .OrderByDescending(y => y.Nro) .ToList()); } }
private List <Pregunta> GetPreguntasByEstado(EnumEstadoPreguntaFiltro estadoPreguntas, int?idPregunta = 0) { switch (estadoPreguntas) { case EnumEstadoPreguntaFiltro.Todas: return(this.PreguntaRepository.GetAllRespuestasAlumno(idPregunta).ToList()); case EnumEstadoPreguntaFiltro.SinCorregir: return(this.PreguntaRepository.GetSinCorregir(idPregunta).ToList()); case EnumEstadoPreguntaFiltro.Correcta: case EnumEstadoPreguntaFiltro.Regular: case EnumEstadoPreguntaFiltro.Mal: return(this.PreguntaRepository.GetByEstadoCorreccion(estadoPreguntas, idPregunta).ToList()); default: return(this.PreguntaRepository.GetAllRespuestasAlumno(idPregunta).ToList()); } }
public IEnumerable <RespuestaEvaluarWrapper> GetRespuestasByPregunta(int idPregunta, EnumEstadoPreguntaFiltro estadoPreguntas) { var respuestasAll = new List <RespuestaEvaluarWrapper>(); List <Pregunta> preguntas = this.GetPreguntasByEstado(EnumEstadoPreguntaFiltro.Todas, idPregunta).ToList(); if (preguntas.Any()) { Pregunta pregunta = preguntas.FirstOrDefault(); if (pregunta != null) { if (estadoPreguntas != EnumEstadoPreguntaFiltro.Todas) { pregunta.RespuestaAlumno = estadoPreguntas == EnumEstadoPreguntaFiltro.SinCorregir ? pregunta.RespuestaAlumno.Where(x => x.IdResultadoEvaluacion == null).ToList() : pregunta.RespuestaAlumno.Where(x => x.IdResultadoEvaluacion == (int)estadoPreguntas).ToList(); } foreach (RespuestaAlumno respuestaAlumno in pregunta.RespuestaAlumno) { RespuestaEvaluarWrapper respuestaEvaluarWrapper = this.GetRespuestaWrapperByRespuesta(respuestaAlumno); respuestasAll.Add(respuestaEvaluarWrapper); } } } return(respuestasAll.OrderBy(x => x.FechaHoraRespuesta)); }