Example #1
0
        public List<Menu> ObtenerMenuFull(int nRolId)
        {
            List<Menu> ListaMenus = new List<Menu>();
            Menu oMenu = null;

            DbCommand oDbCommand = oDatabase.GetStoredProcCommand(Procedimiento.stp_sel_SeleccionarMenuFull);
            oDatabase.AddInParameter(oDbCommand, "@nRolId", DbType.Int32, nRolId);

            using (IDataReader oIDataReader = oDatabase.ExecuteReader(oDbCommand))
            {
                int inMenuId = oIDataReader.GetOrdinal("nMenuId");
                int inMenuPadre = oIDataReader.GetOrdinal("nMenuPadre");
                int icMenuDesc = oIDataReader.GetOrdinal("cMenuDesc");
                int icMenuIcono = oIDataReader.GetOrdinal("cMenuIcono");
                int inMenuPosicion = oIDataReader.GetOrdinal("nMenuPosicion");
                int icMenuUrl = oIDataReader.GetOrdinal("cMenuUrl");
                int icMenuEstado = oIDataReader.GetOrdinal("cMenuEstado");

                while (oIDataReader.Read())
                {
                    oMenu = new Menu();
                    oMenu.nMenuId = DataUtil.DbValueToDefault<int>(oIDataReader[inMenuId]);
                    oMenu.nMenuPadre = DataUtil.DbValueToDefault<int>(oIDataReader[inMenuPadre]);
                    oMenu.cMenuDesc = DataUtil.DbValueToDefault<String>(oIDataReader[icMenuDesc]);
                    oMenu.cMenuIcono = DataUtil.DbValueToDefault<String>(oIDataReader[icMenuIcono]);
                    oMenu.nMenuposicion = DataUtil.DbValueToDefault<int>(oIDataReader[inMenuPosicion]);
                    oMenu.cMenuUrl = DataUtil.DbValueToDefault<String>(oIDataReader[icMenuUrl]);
                    oMenu.cMenuEstado = DataUtil.DbValueToDefault<String>(oIDataReader[icMenuEstado]);

                    ListaMenus.Add(oMenu);
                }
            }
            return ListaMenus;
        }
        public List<Menu> ListarMenuRol(int nRolId)
        {
            try
            {
                List<Menu> ListaMenu = new List<Menu>();

                DbCommand oDbCommand = oDatabase.GetStoredProcCommand(Procedimiento.stp_sel_MenuRol);
                oDatabase.AddInParameter(oDbCommand, "@nRolId", DbType.Int32, (object)nRolId ?? DBNull.Value);

                using (IDataReader oIDataReader = oDatabase.ExecuteReader(oDbCommand))
                {
                    int inMenuId = oIDataReader.GetOrdinal("nMenuId");
                    int icMenuDesc = oIDataReader.GetOrdinal("cMenuDesc");
                    int inValor = oIDataReader.GetOrdinal("nValor");

                    while (oIDataReader.Read())
                    {
                        Menu oMenu = new Menu();

                        oMenu.nMenuId = DataUtil.DbValueToDefault<Int32>(oIDataReader[inMenuId]);
                        oMenu.cMenuDesc = DataUtil.DbValueToDefault<String>(oIDataReader[icMenuDesc]);
                        oMenu.bEstado = DataUtil.DbValueToDefault<Boolean>(oIDataReader[inValor]);

                        ListaMenu.Add(oMenu);
                    }
                }

                return ListaMenu;
            }
            catch (Exception)
            {

                throw;
            }
        }
Example #3
0
        public List<Menu> ObtenerMenuOperacion(string NombreUsuario, string Grupos, string MenuPadreId)
        {
            List<Menu> ListaMenus = new List<Menu>();
            Menu oMenu;

            DbCommand oDbCommand = oDatabase.GetStoredProcCommand(Procedimiento.stp_sel_RS_SeleccionarOperacionMenu_Web);
            oDatabase.AddInParameter(oDbCommand, "@nomusu", DbType.String, NombreUsuario);
            oDatabase.AddInParameter(oDbCommand, "@grupos", DbType.String, Grupos);
            oDatabase.AddInParameter(oDbCommand, "@id_pmenu", DbType.String, MenuPadreId);

            using (IDataReader oIDataReader = oDatabase.ExecuteReader(oDbCommand))
            {
                int iid_menu = oIDataReader.GetOrdinal("id_menu");
                int iid_padre = oIDataReader.GetOrdinal("id_padre");
                int idescripcion = oIDataReader.GetOrdinal("descripcion");
                int iicono = oIDataReader.GetOrdinal("icono");
                int iposicion = oIDataReader.GetOrdinal("posicion");
                int iurl = oIDataReader.GetOrdinal("url");
                int iestado = oIDataReader.GetOrdinal("estado");

                while (oIDataReader.Read())
                {
                    oMenu = new Menu();
                    oMenu.nMenuId = DataUtil.DbValueToDefault<Int32>(oIDataReader[iid_menu]);
                    oMenu.nMenuPadre = DataUtil.DbValueToDefault<Int32>(oIDataReader[iid_padre]);
                    oMenu.cMenuDesc = DataUtil.DbValueToDefault<String>(oIDataReader[idescripcion]);
                    oMenu.cMenuIcono = "~/imagenes/" + DataUtil.DbValueToDefault<String>(oIDataReader[iicono]);
                    oMenu.nMenuposicion = DataUtil.DbValueToDefault<int>(oIDataReader[iposicion]);
                    oMenu.cMenuUrl = DataUtil.DbValueToDefault<String>(oIDataReader[iurl]);
                    oMenu.cMenuEstado = DataUtil.DbValueToDefault<String>(oIDataReader[iestado]);

                    ListaMenus.Add(oMenu);
                }
            }
            return ListaMenus;
        }
public int RegistrarActualizarRolPermisos(Rol lstRol){
            
    ConfiguracionAD oConfAD = new ConfiguracionAD();

           List<Menu> ListMenu = new List<Menu>();
           List<Modulo> ListModulo = new List<Modulo>();
           List<Permiso> ListPermiso = new List<Permiso>();

           foreach (var menu in lstRol.ListaMenus)
           {
               Menu oMenu = new Menu();
               oMenu.nMenuId = menu.nMenuId;
               oMenu.bEstado = menu.bEstado;

               foreach (var modulo in menu.ListaModulos)
               {
                   Modulo oModulo = new Modulo();
                   oModulo.nModId = modulo.nModId;
                   oModulo.nMenuId = modulo.nMenuId;
                   oModulo.bEstado = modulo.bEstado;

                   foreach (var permiso in modulo.ListaPermisos)
                   {
                       Permiso oPermiso = new Permiso();

                       oPermiso.nPermId = permiso.nPermId;
                       oPermiso.nModId = permiso.nModId;
                       oPermiso.bEstado = permiso.bEstado;

                       ListPermiso.Add(oPermiso);
                   }
                   ListModulo.Add(oModulo);
               }
               ListMenu.Add(oMenu);
           }

           return oConfAD.RegistrarActualizarRolPermisos(lstRol.nRolId, lstRol.cRolDesc, ListMenu, ListModulo, ListPermiso);

}
       public Rol CargaRolPermisos(int nRolId)
       {
           List<Menu> ListMenu = oConfiguracionAD.ListarMenuRol(nRolId);
           List<Modulo> ListModulo = oConfiguracionAD.ListarModuloRol(nRolId);
           List<Permiso> ListPermiso = oConfiguracionAD.ListarPermisoRol(nRolId);

           var RolPermisos = from lm in ListMenu
                             select new
                             {
                                 lm.nMenuId,
                                 lm.cMenuDesc,
                                 lm.bEstado,
                                 ListaModulos = from lmo1 in ListModulo
                                               join lm2 in ListMenu
                                               on lmo1.nMenuId equals lm2.nMenuId
                                               where lmo1.nMenuId == lm.nMenuId
                                               select new
                                               {
                                                   lmo1.nModId,
                                                   lmo1.nMenuId,
                                                   lmo1.cModDesc,
                                                   lmo1.bEstado,
                                                   ListaPermisos = from lp in ListPermiso
                                                                    join lmo2 in ListModulo
                                                                    on lp.nModId equals lmo2.nModId
                                                                    where lp.nModId == lmo1.nModId
                                                                    select new
                                                                    {
                                                                        lp.nPermId,
                                                                        lp.nModId,
                                                                        lp.cPermDesc,
                                                                        lp.bEstado
                                                                    }
                                               }
                             };

           Rol oRolPermisos = new Rol();
           oRolPermisos.nRolId = nRolId;

           foreach (var menu in RolPermisos)
           {
               Menu oMenu = new Menu();
               oMenu.nMenuId = menu.nMenuId;
               oMenu.cMenuDesc = menu.cMenuDesc;
               oMenu.bEstado = menu.bEstado;

               foreach (var modulo in menu.ListaModulos)
               {
                    Modulo oModulo = new Modulo();
                    oModulo.nModId = modulo.nModId;
                    oModulo.nMenuId = modulo.nMenuId;
                    oModulo.cModDesc = modulo.cModDesc;  
                    oModulo.bEstado = modulo.bEstado;

                    foreach (var permiso in modulo.ListaPermisos)
                    {
                        Permiso oPermiso = new Permiso();

                        oPermiso.nPermId = permiso.nPermId;
                        oPermiso.nModId = permiso.nModId;
                        oPermiso.cPermDesc = permiso.cPermDesc;
                        oPermiso.bEstado = permiso.bEstado;

                        oModulo.ListaPermisos.Add(oPermiso);
                    }
                    oMenu.ListaModulos.Add(oModulo);
               }
               oRolPermisos.ListaMenus.Add(oMenu);
           }
               
           return oRolPermisos;
       }