Пример #1
0
        public ActionResult DeleteConfirmed(int id)
        {
            seguridadusuario usuario = db.seguridadusuarios.Find(id);

            try
            {
                string    url;
                Parametro sesion = Parametro.ObtenerSesionPagina();
                usuario.Activo          = false;
                usuario.ConfirmarClave  = usuario.Clave;
                db.Entry(usuario).State = EntityState.Modified;
                db.SaveChanges();
                if (sesion.Usuario.Id == id)
                {
                    url = Url.Action("LogOff", "Cuenta");
                    return(Json(new { success = true, redirect = true, url }));
                }
                else
                {
                    url = Url.Action("Index", "Cuenta");
                    return(Json(new { success = true, url }));
                }
            }
            catch (Exception ex)
            {
                ModelState.AddModelError("ModelErr", ex.Message);
            }
            return(PartialView("_Delete", usuario));
        }
Пример #2
0
        // GET: /Account/ResetPassword
        public ActionResult ResetPassword()
        {
            Parametro sesion             = Parametro.ObtenerSesionPagina();
            ResetPasswordViewModel reset = new ResetPasswordViewModel();

            reset.CodUsuario = sesion.Usuario.Id;
            reset.Email      = sesion.Usuario.Email;
            return(View(reset));
        }
Пример #3
0
        // GET: Cuenta/Create
        public ActionResult Create()
        {
            seguridadrolmodulo permiso = Parametro.VerificaPermiso("ADM");
            Parametro          sesion  = Parametro.ObtenerSesionPagina();

            VerificaEdit(permiso);
            ViewBag.IdRol = new SelectList(db.seguridadrols, "Id", "Descripcion");
            return(PartialView("_Create"));
        }
Пример #4
0
        public ActionResult Delete(int?id)
        {
            seguridadrolmodulo permiso = Parametro.VerificaPermiso("USE");
            Parametro          sesion  = Parametro.ObtenerSesionPagina();

            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            seguridadusuario seguridadUsuario = db.seguridadusuarios.Find(id);

            if (seguridadUsuario == null)
            {
                return(HttpNotFound());
            }
            return(PartialView("_Delete", seguridadUsuario));
        }
Пример #5
0
        // GET: Cuenta/Detalles/5
        public ActionResult Detalles(int?id)
        {
            seguridadrolmodulo permiso = Parametro.VerificaPermiso("USE");
            Parametro          sesion  = Parametro.ObtenerSesionPagina();
            seguridadusuario   usuario = db.seguridadusuarios.Find(id);

            if (usuario == null)
            {
                return(HttpNotFound());
            }
            if (Request.IsAjaxRequest())
            {
                return(PartialView(usuario));
            }
            else
            {
                return(View(usuario));
            }
        }
Пример #6
0
        public ActionResult Edit([Bind(Include = "Id,Email,NomUsuario,Clave,ConfirmarClave,ClaveAnterior,IdRol,Activo")] seguridadusuario usuario)
        {
            seguridadrolmodulo permiso = Parametro.VerificaPermiso("USE");
            Parametro          sesion  = Parametro.ObtenerSesionPagina();

            if (ModelState.IsValid)
            {
                try
                {
                    bool has = db.seguridadusuarios.Any(p => p.Email == usuario.Email && p.Id != usuario.Id);
                    if (has)
                    {
                        ModelState.AddModelError("ModelErr", "El correo ingresado ya esta registrado en nuestro sistema. Este dato no se puede duplicar.");
                    }
                    else
                    {
                        usuario.NomUsuario = usuario.NomUsuario.ToUpper();
                        if (usuario.Clave != "secret123")
                        {
                            usuario.Clave = Security.Encriptar(usuario.Clave);
                        }
                        else
                        {
                            usuario.Clave = usuario.ClaveAnterior;
                        }
                        usuario.ConfirmarClave  = usuario.Clave; //Evita error en la valiadacion.
                        db.Entry(usuario).State = EntityState.Modified;
                        db.SaveChanges();
                        string url = Url.Action("Detalles", "Cuenta", new { id = usuario.Id });
                        return(Json(new { success = true, url }));
                    }
                }
                catch (Exception ex)
                {
                    ModelState.AddModelError("ModelErr", ex.Message);
                }
            }
            ViewBag.IdRol  = new SelectList(db.seguridadrols, "Id", "Descripcion", usuario.IdRol);
            ViewBag.Editar = permiso.ActivaEdicion;
            return(PartialView("_Edit", usuario));
        }
Пример #7
0
        // GET: Cuenta/Edit/5
        public ActionResult Edit(int?id)
        {
            seguridadrolmodulo permiso = Parametro.VerificaPermiso("USE");
            Parametro          sesion  = Parametro.ObtenerSesionPagina();

            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            seguridadusuario Usuario = db.seguridadusuarios.Find(id);

            if (Usuario == null)
            {
                return(HttpNotFound());
            }
            ViewBag.IdRol          = new SelectList(db.seguridadrols, "Id", "Descripcion", Usuario.IdRol);
            ViewBag.Editar         = permiso.ActivaEdicion;
            Usuario.Clave          = Usuario.Clave;
            Usuario.ConfirmarClave = Usuario.Clave;
            Usuario.ClaveAnterior  = Usuario.Clave;
            return(PartialView("_Edit", Usuario));
        }
Пример #8
0
        // GET: Cuenta
        public ActionResult Index(string sortOrder, string currentFilter, string searchString, int?page)
        {
            seguridadrolmodulo permiso = Parametro.VerificaPermiso("ADM");
            Parametro          sesion  = Parametro.ObtenerSesionPagina();

            ViewBag.Edit          = permiso.ActivaEdicion;
            ViewBag.CurrentSort   = sortOrder;
            ViewBag.EmailSortParm = string.IsNullOrEmpty(sortOrder) ? "email_desc" : "";
            ViewBag.NomSortParm   = sortOrder == "nom" ? "nom_desc" : "nom";

            if (searchString != null)
            {
                page = 1;
            }
            else
            {
                searchString = currentFilter;
            }


            ViewBag.currentFilter = searchString;
            IQueryable <seguridadusuario> usuarios;


            if (!string.IsNullOrEmpty(searchString))
            {
                usuarios = db.seguridadusuarios.Where(p => p.NomUsuario.ToLower().Contains(searchString.ToLower()));
            }
            else
            {
                usuarios = db.seguridadusuarios;
            }
            switch (sortOrder)
            {
            case "email_desc":
                usuarios = usuarios.OrderByDescending(s => s.Email).ThenBy(s => s.NomUsuario);
                break;

            case "nom":
                usuarios = usuarios.OrderBy(s => s.NomUsuario).ThenBy(s => s.Email);
                break;

            case "nom_desc":
                usuarios = usuarios.OrderByDescending(s => s.NomUsuario).ThenBy(s => s.Email);
                break;

            default:      // Presentacion ascending
                usuarios = usuarios.OrderBy(s => s.Email).ThenBy(s => s.NomUsuario);
                break;
            }
            const int pageSize   = 6;
            int       pageNumber = (page ?? 1);

            if (Request.IsAjaxRequest())
            {
                return(PartialView(usuarios.ToPagedList(pageNumber, pageSize)));
            }
            else
            {
                return(View(usuarios.ToPagedList(pageNumber, pageSize)));
            }
        }