Ejemplo n.º 1
0
        public void Permisos(string nombreControlador)
        {
            //controlar permisos
            var usuario = UsuarioLogeadoSession.IdUsuario;

            ViewBag.NombreControlador   = nombreControlador;
            ViewBag.AccionesUsuario     = ManejoPermisosDAL.ListadoAccionesCatalogoUsuario(usuario, nombreControlador);
            ViewBag.AccionesControlador = GetMetodosControlador(nombreControlador);//Obtener Acciones del controlador
        }
Ejemplo n.º 2
0
 public ActionResult Guardar(List <RolMenuPermiso> rolmenupermiso, int rolID, int perfilID)
 {
     rolmenupermiso = rolmenupermiso ?? new List <RolMenuPermiso>();
     try
     {
         var usuario = UsuarioLogeadoSession.IdUsuario;
         RespuestaTransaccion resultado = ManejoPermisosDAL.CrearActualizarPermisos(rolmenupermiso, usuario, usuario, DateTime.Now, DateTime.Now, rolID, perfilID);
         return(Json(new { Resultado = resultado }, JsonRequestBehavior.AllowGet));
     }
     catch
     {
         return(View());
     }
 }
Ejemplo n.º 3
0
        public async Task <PartialViewResult> _IndexGrid(String search)
        {
            ViewBag.NombreListado = Etiquetas.TituloGridCatalogo;

            //Controlar permisos
            var    usuario           = UsuarioLogeadoSession.IdUsuario;
            string nombreControlador = ControllerContext.RouteData.Values["controller"].ToString();

            ViewBag.NombreControlador = nombreControlador;


            ViewBag.AccionesUsuario = ManejoPermisosDAL.ListadoAccionesCatalogoUsuario(usuario, nombreControlador);

            //Obtener Acciones del controlador
            ViewBag.AccionesControlador = GetMetodosControlador(nombreControlador);

            //Búsqueda

            var listado = CatalogoDAL.ListarCatalogos();

            search = !string.IsNullOrEmpty(search) ? search.Trim() : "";

            if (!string.IsNullOrEmpty(search))//filter
            {
                var type       = listado.GetType().GetGenericArguments()[0];
                var properties = type.GetProperties();

                listado = listado.Where(x => properties
                                        .Any(p =>
                {
                    var value = p.GetValue(x);
                    return(value != null && value.ToString().ToLower().Contains(search.ToLower()));
                })).ToList();
            }

            // Only grid query values will be available here.
            return(PartialView(await Task.Run(() => listado)));
        }
Ejemplo n.º 4
0
        public async Task <PartialViewResult> IndexGrid(String search, int rolID = 0, int perfilID = 0)
        {
            DataTable table = new DataTable();
            DataRow   row   = table.NewRow();

            Session["Fila"] = row;

            Session["ContadorRecorridoColumnas"] = 0;

            ViewBag.NombreListado = Etiquetas.TituloGridPermisos;
            var nombreControlador = ControllerContext.RouteData.Values["controller"].ToString();

            ViewBag.NombreControlador = nombreControlador;

            List <UsuarioRolMenuPermisoInfo> listado      = new List <UsuarioRolMenuPermisoInfo>();
            List <UsuarioRolMenuPermisoR>    listadoFinal = new List <UsuarioRolMenuPermisoR>();

            ViewBag.ListadoMenusSistema = MenuDAL.ObtenerListadoMenusAplicacion();

            ViewBag.ListadoCatalogo = CatalogoDAL.ObtenerListadoCatalogos("ACCIONES-SIST-01");

            ViewBag.ListadoCatalogos = CatalogoDAL.ObtenerListadoCatalogosCodigoPadre("ACCIONES-SIST-01");

            ViewBag.PerfilReporte = perfilID;
            ViewBag.RolReporte    = rolID;

            //Listado Rol Menú Permiso

            listado = ManejoPermisosDAL.ListadoRolMenuPermiso(rolID, perfilID);

            foreach (var item in listado)
            {
                UsuarioRolMenuPermisoR tmp = new UsuarioRolMenuPermisoR();
                tmp.IDRolMenuPermiso    = item.IDRolMenuPermiso;
                tmp.RolID               = item.RolID;
                tmp.NombreRol           = item.NombreRol;
                tmp.PerfilID            = item.PerfilID;
                tmp.NombrePerfil        = item.NombrePerfil;
                tmp.MenuID              = item.MenuID;
                tmp.NombreMenu          = item.NombreMenu;
                tmp.EnlaceMenu          = item.EnlaceMenu;
                tmp.MenuPadre           = item.MenuPadre;
                tmp.IDCatalogo          = item.IDCatalogo;
                tmp.CodigoCatalogo      = item.CodigoCatalogo;
                tmp.TextoCatalogoAccion = item.TextoCatalogoAccion;
                tmp.CreadoPorID         = item.CreadoPorID;
                tmp.CreadoPor           = item.CreadoPor;
                tmp.ActualizadoPorID    = item.ActualizadoPorID;
                tmp.ActualizadoPor      = item.ActualizadoPor;
                tmp.CreatedAt           = item.CreatedAt;
                tmp.UpdatedAt           = item.UpdatedAt;
                tmp.Estado              = item.Estado;
                tmp.MetodoControlador   = item.MetodoControlador;
                tmp.NombreControlador   = item.NombreControlador;
                tmp.AccionEnlace        = item.AccionEnlace;

                listadoFinal.Add(tmp);
            }

            ViewBag.ListadoAcciones = listadoFinal;

            //Acciones Controlador
            ViewBag.AccionesControlador = GetMetodosControlador(nombreControlador);

            //Búsqueda

            DataTable datos = new DataTable();

            datos = GetDatosgrid(rolID, perfilID);

            search = !string.IsNullOrEmpty(search) ? search.Trim() : "";

            if (!string.IsNullOrEmpty(search))
            {
                string _sqlWhere = "NOMBREMENU like '%{0}%'";

                _sqlWhere = string.Format(_sqlWhere, search);

                string _sqlOrder = "NOMBREMENU DESC";

                DataRow[] dataRow = datos.Select(_sqlWhere, _sqlOrder);
                if (dataRow != null && dataRow.Length > 0)
                {
                    DataTable filadatos = dataRow.CopyToDataTable();
                    filadatos = datos.Select(_sqlWhere, _sqlOrder).CopyToDataTable();
                    datos     = filadatos;
                }
                else
                {
                    datos.Clear();
                }
            }

            else
            {
                datos = GetDatosgrid(rolID, perfilID);
            }

            return(PartialView("_IndexGrid", await Task.Run(() => datos)));
        }
Ejemplo n.º 5
0
        public async Task <PartialViewResult> IndexGridSubcatalogo(String search, int?tipo, int?subcatalogo, string filtro)
        {
            //Controlar permisos
            var    usuario           = UsuarioLogeadoSession.IdUsuario;
            string nombreControlador = ControllerContext.RouteData.Values["controller"].ToString();

            ViewBag.NombreControlador   = nombreControlador;
            ViewBag.AccionesUsuario     = ManejoPermisosDAL.ListadoAccionesCatalogoUsuario(usuario, nombreControlador);
            ViewBag.AccionesControlador = GetMetodosControlador(nombreControlador);//Obtener Acciones del controlador

            //Búsqueda

            //Cuando no selecciona tipo
            if (tipo == null && subcatalogo == null)
            {
                //Obtener le id del catalogo
                var id_catalogo = ViewData["IdCatalogo"] = System.Web.HttpContext.Current.Session["IdCatalogo"] as String;

                var nombre = CatalogoDAL.ConsultarNombreCatalogo(Convert.ToInt32(id_catalogo));

                ViewBag.NombreListado = "Catálogo -" + nombre;
                var listado = CatalogoDAL.ListarCatalogosPorId(Convert.ToInt32(id_catalogo), filtro);

                search = !string.IsNullOrEmpty(search) ? search.Trim() : "";

                if (!string.IsNullOrEmpty(search))//filter
                {
                    var type       = listado.GetType().GetGenericArguments()[0];
                    var properties = type.GetProperties();

                    listado = listado.Where(x => properties
                                            .Any(p =>
                    {
                        var value = p.GetValue(x);
                        return(value != null && value.ToString().ToLower().Contains(search.ToLower()));
                    })).ToList();
                }

                // Only grid query values will be available here.
                return(PartialView("_IndexGridSubcatalogo", await Task.Run(() => listado)));
            }
            else
            {
                //Cuando no selecciona tipo
                if (tipo != null && subcatalogo != null)
                {
                    //Obtener le id del catalogo
                    var id_catalogo = ViewData["IdCatalogo"] = System.Web.HttpContext.Current.Session["IdCatalogo"] as String;

                    var nombre = CatalogoDAL.ConsultarNombreCatalogo(Convert.ToInt32(subcatalogo));

                    ViewBag.NombreListado = "Catálogo -" + nombre;
                    var listado = CatalogoDAL.ListarCatalogosPorId(subcatalogo.Value, filtro);

                    search = !string.IsNullOrEmpty(search) ? search.Trim() : "";

                    if (!string.IsNullOrEmpty(search))//filter
                    {
                        var type       = listado.GetType().GetGenericArguments()[0];
                        var properties = type.GetProperties();

                        listado = listado.Where(x => properties
                                                .Any(p =>
                        {
                            var value = p.GetValue(x);
                            return(value != null && value.ToString().ToLower().Contains(search.ToLower()));
                        })).ToList();
                    }

                    // Only grid query values will be available here.
                    return(PartialView("_IndexGridSubcatalogo", await Task.Run(() => listado)));
                }
                else
                {
                    //Obtener le id del catalogo
                    var id_catalogo = ViewData["IdCatalogo"] = System.Web.HttpContext.Current.Session["IdCatalogo"] as String;

                    var nombre = CatalogoDAL.ConsultarNombreCatalogo(Convert.ToInt32(tipo));

                    ViewBag.NombreListado = "Catálogo -" + nombre;
                    var listado = CatalogoDAL.ListarCatalogosPorId(Convert.ToInt32(tipo), filtro);

                    search = !string.IsNullOrEmpty(search) ? search.Trim() : "";

                    if (!string.IsNullOrEmpty(search))//filter
                    {
                        var type       = listado.GetType().GetGenericArguments()[0];
                        var properties = type.GetProperties();

                        listado = listado.Where(x => properties
                                                .Any(p =>
                        {
                            var value = p.GetValue(x);
                            return(value != null && value.ToString().ToLower().Contains(search.ToLower()));
                        })).ToList();
                    }

                    // Only grid query values will be available here.
                    return(PartialView("_IndexGridSubcatalogo", await Task.Run(() => listado)));
                }
            }
        }