public PreguntaWrapper GetPreguntaWrapperByPregunta(Pregunta pregunta) { var preguntaWrapper = new PreguntaWrapper { Clase = pregunta.Clase != null ? pregunta.Clase.Nombre : string.Empty, Tema = pregunta.Tema != null ? pregunta.Tema.Nombre : string.Empty, IdPregunta = pregunta.IdPregunta, Pregunta = pregunta.Pregunta1, Nro = pregunta.Nro, DisponibleDesde = pregunta.FechaDisponibleDesde, DisponibleHasta = pregunta.FechaDisponibleHasta, YaRespondida = pregunta.RespuestaAlumno.Any(x => x.IdAlumno == UserCache.IdUsuario), PlazoVencido = pregunta.FechaDisponibleHasta < DateTime.Now }; if (preguntaWrapper.YaRespondida) { RespuestaAlumno respuestaAlumno = pregunta.RespuestaAlumno.FirstOrDefault(x => x.IdAlumno == UserCache.IdUsuario); if (respuestaAlumno != null) { switch (respuestaAlumno.IdResultadoEvaluacion) { case (int)EnumEstadoPreguntaFiltro.Correcta: preguntaWrapper.ResultadoCorreccion = string.Format("Correcta | {0}° | {1}pts ", respuestaAlumno.Orden, respuestaAlumno.Puntos); if (respuestaAlumno.MejorRespuesta) { preguntaWrapper.ResultadoCorreccion = string.Format("{0} | ¡Mejor Respuesta!", preguntaWrapper.ResultadoCorreccion); } break; case (int)EnumEstadoPreguntaFiltro.Regular: preguntaWrapper.ResultadoCorreccion = string.Format("Regular | {0}° | {1}pts", respuestaAlumno.Orden, respuestaAlumno.Puntos); break; case (int)EnumEstadoPreguntaFiltro.Mal: preguntaWrapper.ResultadoCorreccion = "Mal"; break; default: preguntaWrapper.ResultadoCorreccion = "Corrección Pendiente"; break; } if (respuestaAlumno.IdResultadoEvaluacion != null) { preguntaWrapper.EstadoCorreccion = (EnumEstadoPreguntaFiltro)respuestaAlumno.IdResultadoEvaluacion; } preguntaWrapper.Respuesta = respuestaAlumno.Respuesta; } } return(preguntaWrapper); }
public ActionResult VerRespuesta(int id) { if (!Request.IsAuthenticated) { return(RedirectToAction("Ingresar", "Home", new { returnUrl = Request.Url.ToString() })); } Pregunta pregunta = this.PreguntaService.GetById(Convert.ToInt32(id)); if (pregunta == null) { return(HttpNotFound()); } PreguntaWrapper preguntaWrapper = this.PreguntaService.GetPreguntaWrapperByPregunta(pregunta); return(View(preguntaWrapper)); }