public ActionResult CambiarStatus(Int64? id, Int64? TipoPermisoID, bool Estado) { var permiso = new Permiso() { UsuarioID = Convert.ToInt64(id), TipoPermiso = db.TipoPermisos.Find(TipoPermisoID), TipoPermisoID = Convert.ToInt64(TipoPermisoID), Status = Estado }; if (Estado) { ViewBag.PagName = "Desactivar"; } else { ViewBag.PagName = "Activar"; } return PartialView("_CambiarStatus", permiso); }
public ActionResult Lista(Int64? id) { if (id == null) { return new HttpStatusCodeResult(HttpStatusCode.BadRequest); } Usuario usuario = db.Usuarios.Find(id); if (usuario == null) { return HttpNotFound(); } //lista de todos los tipos de permisos que sean Status Verdadero var listaPermisos = new List<Permiso>(); foreach (var item in db.TipoPermisos.Where(a => a.Status).ToList()) { Permiso permiso = new Permiso() { Usuario = usuario, UsuarioID = usuario.UsuarioID, TipoPermiso = item, TipoPermisoID = item.TipoPermisoID }; if (usuario.Permisos.Where(a => a.TipoPermisoID == item.TipoPermisoID).Count() > 0) permiso.Status = true; else permiso.Status = false; listaPermisos.Add(permiso); } listaPermisos = listaPermisos.OrderBy(a=>a.TipoPermiso.Nombre).ToList(); ViewBag.totalRegistros = usuario.Permisos.Count(); if (!User.IsInRole("UsuarioPermisosEdit")) { listaPermisos = listaPermisos.Where(a => a.Status).ToList(); } return PartialView("_Lista", listaPermisos); }