Example #1
0
        //
        // GET: /Grupos/

        public ActionResult Index()
        {
            String periodo                 = MConfiguracionApp.getPeridoActual(db);
            String idUsuario               = sesion.getIdUsuario();
            List <List <Grupo> > datos     = new List <List <Grupo> >();
            List <String>        materias_ = new MCurso().getNombreMateriaMonitorCursos(idUsuario, periodo, 0);

            List <Grupo> datos_2 = null;

            // se consultan los grupos de cada materia
            foreach (String materia_ in materias_)
            {
                if (!materia_.Equals(""))
                {
                    datos_2 = ConsumidorAppi.getProgramaMateria(periodo, materia_);
                    if (datos_2 == null)
                    {
                        ViewBag.mensajeError = "Error al cargar los datos, compruebe su conexión a internet.";
                    }
                    else
                    {
                        datos.Add(datos_2);
                    }
                }
            }
            List <grupos_acargo> grupos_acargo = (new MGrupos_acargo().getGrupuposPerido(db, idUsuario, periodo));

            ViewBag.datos           = datos;
            ViewBag.grupos_acargo   = grupos_acargo;
            ViewBag.materiasMonitor = materias_;

            return(View(new grupos_acargo()));
        }
Example #2
0
        public ActionResult Evaluacion_test(int id, int grupo = -1)
        {
            try
            {
                if (sesion.esAdministradorOrMonitor(db))
                {
                    cursos c = db.cursos.Find(grupo);
                    if (sesion.esEstudiante())
                    {
                        c = (from c2 in db.cursos where (c2.id == grupo) select c2).First();
                    }
                    String titleBar = " - GENERAL";
                    if (grupo > 0)
                    {
                        titleBar = " - " + c.usuarios.nombre + " " + c.usuarios.apellidos + " - " + c.nombre_materia;
                    }
                    MTest mtAux = new MTest();
                    // es una lista[idPregunta, puntos]
                    List <String[]>        puntosAll          = mtAux.getPreguntaPuntosTotal(id, grupo);
                    List <String[]>        comentarioPregunta = mtAux.getCometariosPreguntasAbiertaTest(id, grupo);
                    List <MPreguntas_test> preguntasAll       = mtAux.getPreguntas_test(id).OrderBy(x => x.id).ToList();
                    int           cantidad = mtAux.ContarCantidaUasuarioRespondenTest(id, grupo);
                    Test          test     = db.Test.Find(id);
                    List <MCurso> mcursos  = new  MCurso().getCursos("", test.periodo);
                    ViewBag.preguntasTest       = preguntasAll;
                    ViewBag.puntoPreguntas      = puntosAll;
                    ViewBag.comentarioPreguntas = comentarioPregunta;
                    ViewBag.id       = id;
                    ViewBag.perfil   = sesion.getIPerfilUsusrio();
                    ViewBag.cantidad = cantidad;
                    ViewBag.curos    = mcursos;
                    ViewBag.id_curso = grupo;

                    ViewBag.titleBar = titleBar;
                    return(View());
                }
                else
                {
                    return(Redirect("~/Inicio/Login"));
                }
            }
            catch (Exception)
            {
                return(Redirect("~/Inicio/Login"));
            }
        }
Example #3
0
        //
        // GET: /Curso/Details/5

        public ActionResult Details(int id = 0)
        {
            if (sesion.esAdministrador(db))
            {
                MCurso cursos = new MCurso().getCursoId(id);
                if (cursos == null)
                {
                    return(HttpNotFound());
                }
                ViewBag.usuario = new MUsuario().getUsuarioId(cursos.idUsuario);
                return(View(cursos));
            }
            else
            {
                return(Redirect("~/Inicio"));
            }
        }
Example #4
0
        //
        // GET: /Curso/Edit/5

        public ActionResult Edit(int id = 0)
        {
            if (sesion.esAdministrador(db))
            {
                MCurso cursos = new MCurso().getCursoId(id);
                if (cursos == null)
                {
                    return(HttpNotFound());
                }
                ViewBag.materias = new SelectList(new MMateria().getMaterias(db), "Value", "Text");;
                //   ViewBag.cur_idUsuario = new SelectList(db.usuarios, "usu_id", "usu_nombre", cursos.cur_idUsuario);
                return(View(cursos));
            }
            else
            {
                return(Redirect("~/Inicio"));
            }
        }
Example #5
0
        //
        // GET: /Clase/Create

        public ActionResult Create(String materia = "")
        {
            String periodo = MConfiguracionApp.getPeridoActual(db);

            if (sesion.esMonitor(db))
            {
                ViewBag.materiasMonitor = null;
                MCurso auxCurso    = new MCurso();
                String id_usuario  = sesion.getIdUsuario();
                var    tienMateria = auxCurso.tieneCurso(id_usuario, materia, periodo);
                if (tienMateria)
                {
                    List <grupos_acargo> grupos_acargo = (new MGrupos_acargo().getGrupuposPeridoMateria(db, id_usuario, periodo, materia));
                    sesion.setMateria(materia);
                    List <EstudianteMateria> estudiantes = null;
                    if (!materia.Equals(""))
                    {
                        estudiantes = ConsumidorAppi.getEstudiantesMateria(periodo, materia);
                        if (estudiantes == null)
                        {
                            ViewBag.mensajeError = "Error al cargar los datos, compruebe su conexión a internet.";
                        }
                    }

                    ViewBag.estudiantes   = estudiantes;
                    ViewBag.grupos_acargo = grupos_acargo;
                }
                else if (!materia.Equals(""))
                {
                    ViewBag.mensajeError = "Asignatura '" + materia + "' No válida";
                    materia = "";
                }

                ViewBag.materiasMonitor     = auxCurso.getNombreMateriaMonitorCursos(id_usuario, periodo, 0);
                ViewBag.materiaSeleccionada = materia;
                return(View());
            }
            else
            {
                return(Redirect("~/Inicio/Login"));
            }
        }
Example #6
0
        //
        // GET: /Curso/

        public ActionResult Listar(String materiaBuscar = "", String periodoBuscar = "2017-2")
        {
            if (sesion.esAdministrador(db))
            {
                List <MCurso> cursos = new List <MCurso>();
                try
                {
                    cursos = new  MCurso().getCursos(materiaBuscar, periodoBuscar);
                }
                catch (Exception)
                {
                }
                return(View(cursos));
            }
            else
            {
                return(null);
                //return Redirect("~/Inicio");
            }
        }
Example #7
0
        public ActionResult Test_monitor()
        {
            if (sesion.esMonitor(db))
            {
                List <MTest>  tests  = new List <MTest>();
                List <MCurso> cursos = new  MCurso().getCursoAcargoActivos(MConfiguracionApp.getPeridoActual(db), sesion.getIdUsuario());

                tests = tests.Union((new MTest().getTestPeriodo("", 0, 0))).ToList();
                tests = tests.Union((new MTest().getTestPeriodo("", 1, 0))).ToList();
                tests = (from t in tests where (DateTime.Compare(DateTime.Now, t.fecha_inicio) >= 0 && t.periodo == MConfiguracionApp.getPeridoActual(db)) select t).ToList();



                ViewBag.cursos = cursos;
                return(View(tests));
            }
            else
            {
                return(Redirect("~/Inicio/Login"));
            }
        }
Example #8
0
        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"));
            }
        }
Example #9
0
        public JsonResult SetGrupos(String[] idGrupo = null)
        {
            String periodo   = MConfiguracionApp.getPeridoActual(db);
            String idMonitor = sesion.getIdUsuario();

            string[] carrera_idCurso;
            // se obtien el id del grupo a partir de la materia y el id del monitor  y perido
            int idCuro;

            bool      error     = false;
            Respuesta respuesta = new Respuesta();

            using (var transaccion = new TransactionScope())
            {
                using (var contestTransaccion = new bd_simaEntitie())
                {
                    try
                    {
                        if (idGrupo != null)
                        {
                            List <String> materias = new List <string>();


                            // Se seleccionan las asinaturas
                            String[] grupo;
                            foreach (String element in idGrupo)
                            {
                                grupo = element.Split('|');
                                materias.Add(grupo[2]);
                            }
                            materias = ((from d in materias select d).Distinct()).ToList();

                            //foreach (String materia in materias)
                            //{
                            //idCuro = MCurso.getIdCurso(db, materia, periodo, idMonitor);

                            //se consulta los grupos registradas de una asinatura y se leiminamos
                            List <grupos_acargo> consulta = (
                                from p in contestTransaccion.grupos_acargo
                                where p.idUsuario == idMonitor && p.periodo == periodo
                                select p
                                ).ToList();

                            foreach (grupos_acargo element in consulta)
                            {
                                contestTransaccion.grupos_acargo.Remove(element);
                                contestTransaccion.SaveChanges();
                            }
                            //}


                            foreach (String element in idGrupo)
                            {
                                carrera_idCurso = element.Split('|');
                                String materiatem = carrera_idCurso[2];
                                idCuro = new MCurso().getIdCurso(materiatem, periodo, idMonitor);

                                grupos_acargo gruposAcargos = new grupos_acargo();
                                gruposAcargos.idUsuario = idMonitor;
                                gruposAcargos.materia   = materiatem;
                                gruposAcargos.periodo   = periodo;
                                gruposAcargos.id_grupo  = carrera_idCurso[1];
                                gruposAcargos.programa  = carrera_idCurso[0];
                                gruposAcargos.id_curso  = idCuro;
                                contestTransaccion.grupos_acargo.Add(gruposAcargos);
                                contestTransaccion.SaveChanges();
                            }
                        }
                        else
                        {
                            error = true;
                            respuesta.RESPUESTA = "ERROR";
                            respuesta.MENSAJE   = "Debe seleccionar al menos un grupo.";
                        }
                    }
                    catch (Exception)
                    {
                        error = true;
                        respuesta.RESPUESTA = "ERROR";
                        respuesta.MENSAJE   = "No se pudo actualizar los grupos.";
                    }
                    if (!error)
                    {
                        transaccion.Complete();
                        respuesta.RESPUESTA = "OK";
                        respuesta.MENSAJE   = "Grupos actualizados.";
                    }
                }
            }
            return(Json(respuesta));
        }
Example #10
0
        public JsonResult Edit(MCurso curso)
        {
            String    periodo   = MConfiguracionApp.getPeridoActual(db);
            Respuesta respuesta = new Respuesta();

            if (sesion.esAdministrador(db))
            {
                try
                {
                    if (ModelState.IsValid)
                    {
                        String   materiaAntigua;
                        MMateria materia    = new MMateria().getMateriaId(db, curso.nombre_materia);
                        MUsuario usuario    = new MUsuario().getUsuarioId(curso.idUsuario);
                        bool     tieneCurso = curso.tieneCurso(curso.idUsuario, curso.nombre_materia, periodo);
                        MCurso   c          = curso.getCursoId(curso.id);
                        materiaAntigua = c.nombre_materia;

                        if (materiaAntigua.Equals(curso.nombre_materia) || !tieneCurso)
                        {
                            if (materia != null)
                            {
                                if (usuario != null)
                                {
                                    if (curso.actualizar(db, curso) > 0)
                                    {
                                        respuesta.RESPUESTA = "OK";
                                        respuesta.MENSAJE   = "Grupo actualizado.";
                                    }
                                    else
                                    {
                                        respuesta.RESPUESTA = "ERROR";
                                        respuesta.MENSAJE   = "Grupo no actualizado.";
                                    }
                                }
                                else
                                {
                                    respuesta.RESPUESTA = "ERROR";
                                    respuesta.MENSAJE   = "Usuario " + curso.idUsuario + " no existe ";
                                }
                            }

                            else
                            {
                                respuesta.RESPUESTA = "ERROR";
                                respuesta.MENSAJE   = "La Asignatura '" + curso.nombre_materia + "' no existe";
                            }
                        }

                        else
                        {
                            respuesta.RESPUESTA = "ERROR";
                            respuesta.MENSAJE   = "Él Monitor " + curso.idUsuario + " tiene a cargo " + curso.nombre_materia + ".";
                        }
                    }
                    else
                    {
                        respuesta.RESPUESTA = "ERROR";
                        respuesta.MENSAJE   = "Datos incorrectos.";
                    }
                }
                catch (Exception e)
                {
                    respuesta.RESPUESTA = "ERROR";
                    respuesta.MENSAJE   = "Error! " + e.Message + ".";
                }
            }
            else
            {
                respuesta.RESPUESTA = "LOGIN";
            }
            return(Json(respuesta));
        }
Example #11
0
        public JsonResult Create(MCurso curso)
        {
            String    periodo   = MConfiguracionApp.getPeridoActual(db);
            Respuesta respuesta = new Respuesta();

            if (sesion.esAdministrador(db))
            {
                if (ModelState.IsValid)
                {
                    materias materia    = db.materias.Find(curso.nombre_materia);
                    MUsuario usuario    = new MUsuario().getUsuarioId(curso.idUsuario);
                    bool     tieneCurso = curso.tieneCurso(curso.idUsuario, curso.nombre_materia, periodo);
                    if (!tieneCurso)
                    {
                        if (materia != null)
                        {
                            if (usuario != null)
                            {
                                cursos cur = new cursos
                                {
                                    estado             = curso.estado,
                                    fecha_finalizacion = curso.fecha_finalizacion,
                                    idUsuario          = curso.idUsuario,
                                    nombre_materia     = curso.nombre_materia.ToUpper(),
                                    periodo            = periodo,
                                    eliminado          = 0
                                };
                                db.cursos.Add(cur);
                                db.SaveChanges();
                                respuesta.RESPUESTA = "OK";
                                respuesta.MENSAJE   = "Grupo guardado.";
                            }
                            else
                            {
                                respuesta.RESPUESTA = "ERROR";
                                respuesta.MENSAJE   = "Usuario " + curso.idUsuario + " no existe ";
                            }
                        }
                        else
                        {
                            respuesta.RESPUESTA = "ERROR";
                            respuesta.MENSAJE   = "La Asignatura '" + curso.nombre_materia + "' no existe";
                        }
                    }
                    else
                    {
                        respuesta.RESPUESTA = "ERROR";
                        respuesta.MENSAJE   = "Él Monitor " + curso.idUsuario + " tiene a cargo " + curso.nombre_materia + ".";
                    }
                }
                else
                {
                    respuesta.RESPUESTA = "ERROR";
                    respuesta.MENSAJE   = "Datos incorrecto.";
                }
            }
            else
            {
                respuesta.RESPUESTA = "LOGIN";
            }
            return(Json(respuesta));
        }