Пример #1
0
        public IActionResult ModificarMaestro(Maestro m)
        {
            MaestrosRepository repos = new MaestrosRepository(context);

            try
            {
                var maestro = repos.Get(m.Id);
                if (maestro != null)
                {
                    maestro.Nombre = m.Nombre;
                    maestro.Correo = m.Correo;
                    if (context.Maestro.Any(x => x.Grupo == m.Grupo && x.Id != m.Id))
                    {
                        ModelState.AddModelError("", "Ya hay un maestro registrado con ese grupo");
                        return(View(m));
                    }
                    else
                    {
                        maestro.Grupo = m.Grupo;
                    }
                    repos.Update(maestro);
                    return(RedirectToAction("ListaMaestros"));
                }
                else
                {
                    return(RedirectToAction("ListaMaestros"));
                }
            }
            catch (Exception ex)
            {
                ModelState.AddModelError("", ex.Message);
                return(View(m));
            }
        }
Пример #2
0
        public IActionResult CambiarContraseña(int id)
        {
            MaestrosRepository repos = new MaestrosRepository(context);
            RegistrarViewModel vm    = new RegistrarViewModel();

            vm.Maestro = repos.Get(id);
            return(View(vm));
        }
Пример #3
0
        public IActionResult ModificarMaestro(int id)
        {
            MaestrosRepository repos = new MaestrosRepository(context);
            var maestro = repos.Get(id);

            if (maestro != null)
            {
                return(View(maestro));
            }
            else
            {
                return(RedirectToAction("ListaMaestros"));
            }
        }
Пример #4
0
 public IActionResult ListaAlumnos(int?id)
 {
     if (User.IsInRole("Maestro"))
     {
         MaestrosRepository maestroRepos = new MaestrosRepository(context);
         var maestro = maestroRepos.Get(id);
         var alumnos = maestroRepos.GetAlumnosByGrupo(maestro.Grupo).OrderBy(x => x.Nombre);
         return(View(alumnos));
     }
     else
     {
         AlumnosRepository reposAlumno = new AlumnosRepository(context);
         var alumnos = reposAlumno.GetAll().OrderBy(x => x.Grupo);
         return(View(alumnos));
     }
 }
Пример #5
0
        public IActionResult EditarActivo(Maestro m)
        {
            MaestrosRepository repos = new MaestrosRepository(context);
            var original             = repos.Get(m.Id);

            if (original != null)
            {
                if (original.Activo == 1)
                {
                    original.Activo = 0;
                    repos.Update(original);
                }
                else
                {
                    original.Activo = 1;
                    repos.Update(original);
                }
            }
            return(RedirectToAction("ListaMaestros"));
        }
Пример #6
0
        public IActionResult CambiarContraseña(RegistrarViewModel vm)
        {
            MaestrosRepository repos = new MaestrosRepository(context);
            var original             = repos.Get(vm.Maestro.Id);

            if (original != null)
            {
                if (vm.Maestro.Contrasena == vm.ConfirmarContraseña)
                {
                    var nuevaContraHash = HashingHelper.GetHash(vm.Maestro.Contrasena);
                    original.Contrasena = nuevaContraHash;
                    repos.Update(original);
                    return(RedirectToAction("Index"));
                }
                else
                {
                    ModelState.AddModelError("", "Las contraseñas no coiniciden.");
                    return(View(vm));
                }
            }
            return(RedirectToAction("Index"));
        }
Пример #7
0
        public IActionResult AgregarAlumno(RegistrarViewModel vm)
        {
            AlumnosRepository repos = new AlumnosRepository(context);

            try
            {
                MaestrosRepository maestroRepos = new MaestrosRepository(context);

                var maestro = maestroRepos.Get(vm.IdMaestro);

                if (maestro == null)
                {
                    if (User.IsInRole("Director"))
                    {
                        var GrupoMaestro = context.Maestro.FirstOrDefault(x => x.Grupo == vm.Alumno.Grupo);
                        if (GrupoMaestro == null)
                        {
                            ModelState.AddModelError("", "Aún no hay ningun maestro asignado a ese grupo.");
                            return(View(vm));
                        }
                        else
                        {
                            vm.Alumno.IdMaestro = GrupoMaestro.Id;
                            repos.Insert(vm.Alumno);
                        }
                    }
                    else
                    {
                        ModelState.AddModelError("", "Aún no hay ningun maestro asignado a ese grupo.");
                        return(View(vm));
                    }
                }
                else
                {
                    if (context.Maestro.Any(x => x.Grupo == vm.Alumno.Grupo))
                    {
                        if (maestro.Grupo != vm.Alumno.Grupo)
                        {
                            ModelState.AddModelError("", "Usted no tiene permitido agregar alumnos a dicho grupo");
                            return(View(vm));
                        }


                        vm.Alumno.IdMaestro = vm.IdMaestro;
                        repos.Insert(vm.Alumno);
                    }
                }

                if (User.IsInRole("Maestro"))
                {
                    return(RedirectToAction("ListaAlumnos", new { id = vm.IdMaestro }));
                }
                else
                {
                    return(RedirectToAction("ListaAlumnos"));
                }
            }
            catch (Exception ex)
            {
                ModelState.AddModelError("", ex.Message);
                return(View(vm));
            }
        }