//public ActionResult Avance(String materia = "", String periodoBuscar = "2017-2", String idMonitor = "") //{ // String periodo = MConfiguracionApp.getPeridoActual(db); // if (sesion.esAdministrador(db)) // { // if (idMonitor.Equals("")) materia = ""; // Mclase auxClase = new Mclase(); // ViewBag.materiaSeleccionada = materia; // ViewBag.periodoSeleccionada = periodoBuscar; // ViewBag.idMonitorSeleccionado = idMonitor; // ViewBag.periodos = auxClase.getPeriodosRegistradosDeClase(db); // ViewBag.datosMoniotres = new MUsuario().getDatosMonitoresPeriodo(periodoBuscar); // ViewBag.materiasMonitor = new MCurso().getNombreMateriaMonitorCursos( idMonitor, periodo, 1); // ViewBag.peridoSeleccionado = periodoBuscar; // ViewBag.monitorSeleccionado = idMonitor; // return View(auxClase.getClasesMonitorPerido(db, periodo, idMonitor, materia)); // } // else // { // return Redirect("~/Inicio/Login"); // } //} public ActionResult Registros(String materia = "", String periodoBuscar = "-", String idMonitor = "") { if (periodoBuscar.Equals("-")) { periodoBuscar = MConfiguracionApp.getPeridoActual(db); } if (sesion.esAdministrador(db)) { if (materia.Equals("")) { idMonitor = ""; } Mclase auxClase = new Mclase(); ViewBag.materiaSeleccionada = materia; ViewBag.periodoSeleccionada = periodoBuscar; ViewBag.idMonitorSeleccionado = idMonitor; ViewBag.periodos = auxClase.getPeriodosRegistradosDeClase(db); ViewBag.datosMoniotres = new MUsuario().getMonitores_de_materia(materia, periodoBuscar); var materias = new MMateria().getMaterias_registro_grupos(db, periodoBuscar); ViewBag.materias = materias; //= new MCurso().getNombreMateriaMonitorCursos(idMonitor, periodoBuscar,1); ViewBag.peridoSeleccionado = periodoBuscar; ViewBag.monitorSeleccionado = idMonitor; return(View(auxClase.getClasesMonitorPerido(db, periodoBuscar, idMonitor, materia))); } else { return(Redirect("~/Inicio/Login")); } }
// // GET: /Clase/Details/5 public ActionResult Details(int id = 0) { String periodo = MConfiguracionApp.getPeridoActual(db); if (sesion.esAdministradorOrMonitor(db)) { Mclase aux = new Mclase(); ViewBag.perfil = sesion.getIPerfilUsusrio(); Mclase clase = aux.getClasePorId(id); if (clase == null) { return(HttpNotFound()); } List <estudiantes_asistentes> estudiantesAsistentes = aux.getEstudiantesAsistentes(id); List <String> idEstudiantes = estudiantesAsistentes.Select(x => x.estudiante_id).ToList(); List <EstudianteMateria> estudiantes = null; if (idEstudiantes.Count() > 0) { estudiantes = ConsumidorAppi.getDatosEstudiantesMateria(periodo, new MMateria().getNombreMateriaPorIDCurso(clase.cursos_id), idEstudiantes); } ViewBag.estudiantes = estudiantes; ViewBag.estudiantesAsistentes = estudiantesAsistentes; ViewBag.usuario = new MUsuario().getUsuarioId(clase.usuarios_id); return(View(clase)); } else { return(Redirect("~/Inicio/Login")); } }
public ActionResult Tests(String mensaje = null) { if (!sesion.getIdUsuario().Equals("") && (sesion.getIPerfilUsusrio().Equals("Estudiante") || sesion.getIPerfilUsusrio().Equals("Docente"))) { Mclase mclase = new Mclase(); List <MCurso> mcursos = null; String periodo = MConfiguracionApp.getPeridoActual(db); // se consulta los grupos donde el estudiante a dado clase if (sesion.getIPerfilUsusrio().Equals("Estudiante")) { mcursos = mclase.getCursos_por_clase(periodo, sesion.getIdUsuario()); } else { List <string> materiasDocente = new List <string>(); string id_docente = sesion.getIdUsuario(); List <Grupo> grupos = ConsumidorAppi.getGrupos(periodo); if (grupos != null) { MMateria tem = new MMateria(); grupos = (from g in grupos where (g.doc_docente.Equals(id_docente)) select g).ToList(); foreach (var grupo in grupos) { if (tem.esMonitoreadaMateria(periodo, grupo.nom_materia)) { materiasDocente.Add(grupo.nom_materia); } } materiasDocente = materiasDocente.Distinct().ToList(); } mcursos = new List <MCurso> (); foreach (String item in materiasDocente) { mcursos = mcursos.Union(new MCurso().getCursoMateria(item, periodo)).ToList(); } } // DateTime.Now.ToString("yyyy-MM-dd HH-mm-ss-ff") DateTime fechaHoya = DateTime.Now; List <MTest> mtests = new MTest().getTestPeriodo("", 0, 0);// se consultan los test abiertos // se consultan solo los test de los monitores mtests = (from c in mtests where (DateTime.Compare(DateTime.Now, c.fecha_inicio) >= 0 && c.periodo == periodo && c.eliminado == 0 && c.ferfil_usuario == sesion.getIPerfilUsusrio()) select c).ToList(); // 1 se consultas la materias docentes // 2 se consultas los grupos q tienen de cada materia // 3 se ViewBag.mtests = mtests; ViewBag.mcursos = mcursos; ViewBag.mensaje = mensaje; ViewBag.perfil = sesion.getIPerfilUsusrio(); return(View()); } return(Redirect("~/Inicio/Login")); }
public JsonResult Login_test(String id = "") { Respuesta respuesta = new Respuesta(); if (!id.Equals("")) { Rutina.Rutinas(); List <MTest> mtest_disponibles = (new MTest()).getTestPeriodo("", 0, 0); mtest_disponibles = (from mt in mtest_disponibles where (DateTime.Compare(DateTime.Now, mt.fecha_inicio) >= 0 && mt.ferfil_usuario.Equals("Estudiante")) select mt).ToList(); if (mtest_disponibles.Count() > 0) { String periodo = MConfiguracionApp.getPeridoActual(db); Mclase mclase = new Mclase(); int asistencia = mclase.getCantidadClaseAsistidaEstudianteId(periodo, id); if (asistencia > 0) { EstudianteMateria estudiante = ConsumidorAppi.getEstudiantePorID(periodo, id); if (estudiante == null) { respuesta.RESPUESTA = "ERROR"; respuesta.MENSAJE = "Usuario no encontrado."; } else { sesion.setIPerfilUsusrio("Estudiante"); sesion.setIdUsurio(estudiante.num_identificacion); sesion.setINombreUsuario(estudiante.nom_largo); respuesta.RESPUESTA = "OK"; } } else { respuesta.RESPUESTA = "NO_ASISTE"; respuesta.MENSAJE = "Usted no está apto para realizar el test porque no ha asistido a monitorias en el periodo actual."; } } else { respuesta.RESPUESTA = "ERROR"; respuesta.MENSAJE = "😞 No hay Tests disponibles en este momento 😞."; } } else { respuesta.RESPUESTA = "ERROR"; respuesta.MENSAJE = "Identificación no valida."; } return(Json(respuesta)); }
public ActionResult Create(Mclase clase, String[] asistentes = null) { String periodo = MConfiguracionApp.getPeridoActual(db); if (sesion.esMonitor(db)) { try { MCurso auxCurso = new MCurso(); if (ModelState.IsValid) { string ruta = Server.MapPath(dir_clases); String materia = sesion.getMateria(); String idMonitor = sesion.getIdUsuario(); // se verifica que tenga la materia a cargo para evitar que se cambie el monbre de la materia en el select var tienMateria = auxCurso.tieneCurso(idMonitor, materia, periodo); if (tienMateria) { // se guardan los ficheros String[] resultado = Archivo.subir(Request.Files, ruta); // si se guarda el fichero en el servidor, se guarda el registro en la BD if (resultado[0].Equals("ok")) { using (var transaccion = new TransactionScope()) { using (var contestTransaccion = new bd_simaEntitie()) { // se obtien la fecha actual DateTime fechaRegistro = DateTime.Now; // se obtien el id del grupo a partir de la materia y el id del monitor y perido int idCuro = auxCurso.getIdCurso(materia, periodo, idMonitor); if (idCuro != -1) { clases_sima clase_ = new clases_sima { comentario = clase.comentario, fecha_realizada = clase.fecha_realizada, periodo = periodo, tema = clase.tema, evidencia = resultado[1], cursos_id = idCuro, usuarios_id = idMonitor, fecha_registro = fechaRegistro }; contestTransaccion.clases_sima.Add(clase_); contestTransaccion.SaveChanges(); // se agregan los estudiantes asistentes if (clase.guardarAsistentes(contestTransaccion, clase_, asistentes)) { // si los asistentes se registras se guardan los cambisos en bd transaccion.Complete(); sesion.setMateria(""); } return(RedirectToAction("Index")); } } } } else { ViewBag.mensajeError = resultado[1]; } } else { ViewBag.mensajeError = "Asignatura " + materia + " No valida"; sesion.setMateria(""); } } ViewBag.materiaSeleccionada = sesion.getMateria(); return(View(clase)); } catch (Exception e) { ViewBag.mensajeError = "Error!!. " + e.Message; } return(RedirectToAction("Index")); } else { return(Redirect("~/Inicio/Login")); } }