/// <summary> /// <para>Muestra una vista con la calificación y efectividad por habilidades obtenida en una actividad</para> /// </summary> /// <param name="idActividadDe">Identificador de la actividad resuelta</param> /// <returns></returns> public ActionResult ProgresoHabilidades(string idActividadDe) { if (Session["personaLogin"] != null) { LogicEncriptacionMetodos _objDe = new LogicEncriptacionMetodos(); int idActividad = int.Parse(_objDe.Decrypt(idActividadDe)); PersonaEntidad objAlumno = (PersonaEntidad)Session["personaLogin"]; LogicCalificacion objCalifEntidad = new LogicCalificacion(); List <EfectividadEntidad> lista = new List <EfectividadEntidad>(); if ((string)Session["tipoActividad"] == "P") { ViewBag.calificacion = Session["calif"]; lista.AddRange((List <EfectividadEntidad>)Session["efectividadObtenida"]); } else { LogicEfectividad _objLogicEfectividad = new LogicEfectividad(); lista = _objLogicEfectividad.EfectividadXactividad(objAlumno.idAlumno, idActividad); ViewBag.calificacion = objCalifEntidad.consultarCalificacionObtenida(objAlumno.idAlumno, idActividad); } ViewBag.idLeccion = Session["idLeccion"]; ViewBag.numeroLeccion = Session["numeroLeccion"]; Session["tipoActividad"] = ""; Session["efectividad"] = null; Session["efectividadObtenida"] = null; Session["calif"] = 0; return(View(lista)); } LogicEncriptacionMetodos _objSeguridad = new LogicEncriptacionMetodos(); var op = _objSeguridad.Encrypt("c"); return(RedirectToAction("Oops", "Login", new { @area = "", N = op })); }
private void califActividadesPracticas(List <DatosDeVerificacionRespuestaEntidad> ListRespuesta, List <string> listVerificacion, bool ultimaPregunta) { LogicCalificacion objCalificacionEntidad = new LogicCalificacion(); LogicPregunta objPreguntaEnt = new LogicPregunta(); int totalCorrectas = 0; foreach (var item in listVerificacion) { if (item.Contains("C")) { totalCorrectas++; } } PreguntaEntidad objPregunta = objPreguntaEnt.consultarPreguntaIdPregunta(ListRespuesta[0].idPregunta); decimal calificacionObtenida = objCalificacionEntidad.calculoCalificacion(ListRespuesta.Count(), totalCorrectas, objPregunta.ponderacion); List <EfectividadEntidad> _listaEfectividadEntidad = new List <EfectividadEntidad>(); List <EfectividadEntidad> _listaEfectividadObtenidaEntidad = new List <EfectividadEntidad>(); int indice = 0; if (Session["efectividad"] != null) { _listaEfectividadEntidad = (List <EfectividadEntidad>)Session["efectividad"]; _listaEfectividadObtenidaEntidad = (List <EfectividadEntidad>)Session["efectividadObtenida"]; } if (_listaEfectividadEntidad.Exists(C => C.tipoEfectividad == objPregunta.destreza)) { indice = _listaEfectividadEntidad.FindIndex(C => C.tipoEfectividad == objPregunta.destreza); _listaEfectividadEntidad[indice].porcentaje = _listaEfectividadEntidad[indice].porcentaje + objPregunta.ponderacion; _listaEfectividadObtenidaEntidad[indice].porcentaje = _listaEfectividadObtenidaEntidad[indice].porcentaje + calificacionObtenida; } else { _listaEfectividadEntidad.Add(new EfectividadEntidad { porcentaje = objPregunta.ponderacion, tipoEfectividad = objPregunta.destreza }); _listaEfectividadObtenidaEntidad.Add(new EfectividadEntidad { porcentaje = calificacionObtenida, tipoEfectividad = objPregunta.destreza }); } if (ultimaPregunta) { int contador = 0; foreach (var item in _listaEfectividadObtenidaEntidad) { item.porcentaje = Math.Round((item.porcentaje * 100) / _listaEfectividadEntidad[contador].porcentaje, 2); contador++; } } Session["efectividad"] = _listaEfectividadEntidad; Session["efectividadObtenida"] = _listaEfectividadObtenidaEntidad; if (Session["calif"] != null) { Session["calif"] = Math.Round((decimal)Session["calif"] + calificacionObtenida, 2); } else { Session["calif"] = calificacionObtenida; } }
private static void califActividadesPracticas(List <DatosDeVerificacionRespuestaEntidad> ListRespuesta, List <string> listVerificacion) { LogicCalificacion objCalificacionEntidad = new LogicCalificacion(); LogicPregunta objPreguntaEnt = new LogicPregunta(); int totalCorrectas = 0; foreach (var item in listVerificacion) { if (item.Contains("C")) { totalCorrectas++; } } PreguntaEntidad objPregunta = objPreguntaEnt.consultarPreguntaIdPregunta(ListRespuesta[0].idPregunta); decimal calificacionObtenida = objCalificacionEntidad.calculoCalificacion(ListRespuesta.Count(), totalCorrectas, objPregunta.ponderacion); if (objPregunta.destreza == "R") { globalVar.califTR = globalVar.califTR + objPregunta.ponderacion; globalVar.efectR = globalVar.efectR + calificacionObtenida; } if (objPregunta.destreza == "L") { globalVar.califTL = globalVar.califTL + objPregunta.ponderacion; globalVar.efectL = globalVar.efectL + calificacionObtenida; } if (objPregunta.destreza == "G") { globalVar.califTG = globalVar.califTG + objPregunta.ponderacion; globalVar.efectG = globalVar.efectG + calificacionObtenida; } if (globalVar.ultP) { if (globalVar.efectR != 0) { globalVar.efectR = (globalVar.efectR * 100) / globalVar.califTR; } if (globalVar.efectL != 0) { globalVar.efectL = (globalVar.efectL * 100) / globalVar.califTL; } if (globalVar.efectG != 0) { globalVar.efectG = (globalVar.efectG * 100) / globalVar.califTG; } } globalVar.calificacion = globalVar.calificacion + calificacionObtenida; }
public ActionResult Calificacion(string idActividadDe) { if (Session["personaLogin"] != null) { LogicEncriptacionMetodos _objDe = new LogicEncriptacionMetodos(); int idActividad = int.Parse(_objDe.Decrypt(idActividadDe)); PersonaEntidad objAlumno = (PersonaEntidad)Session["personaLogin"]; LogicCalificacion objCalifEntidad = new LogicCalificacion(); List <EfectividadEntidad> lista = new List <EfectividadEntidad>(); ViewBag.calificacion = globalVar.calificacion; if (globalVar.califTR >= 1) { lista.Add(new EfectividadEntidad { tipoEfectividad = "R", porcentaje = globalVar.efectR }); } if (globalVar.califTL >= 1) { lista.Add(new EfectividadEntidad { tipoEfectividad = "L", porcentaje = globalVar.efectL }); } if (globalVar.califTG >= 1) { lista.Add(new EfectividadEntidad { tipoEfectividad = "L", porcentaje = globalVar.efectG }); } globalVar.calificacion = 0; globalVar.califTR = 0; globalVar.califTL = 0; globalVar.califTG = 0; globalVar.efectL = 0; globalVar.efectR = 0; globalVar.efectG = 0; return(View(lista)); } LogicEncriptacionMetodos _objSeguridad = new LogicEncriptacionMetodos(); var op = _objSeguridad.Encrypt("d&a"); return(RedirectToAction("Oops", "Login", new { @area = "", N = op })); }