public static List <Perfil> BuscarPerfiles(string nombre, int estado, bool cargarpermisos = false) { //Estado: 0 = todos, 1 = habilitados, 2 = deshabilitados try { List <Perfil> rtn = new List <Perfil>(); using (var BD = new Data.USER.FACTURAUSEREntities()) { var z = (from x in BD.Perfils where (x.PerfilNombre.ToUpper().Contains(nombre.ToUpper()) || string.IsNullOrEmpty(nombre)) && ( (x.PerfilHabilitado == true && estado == 1) || (x.PerfilHabilitado == false && estado == 2) || estado == 0 ) select x).ToList(); foreach (var p in z) { rtn.Add(DataToEntidad(p, !cargarpermisos)); } } return(rtn); } catch (Exception ex) { throw new Exception("Logica BuscarPerfiles ", ex); } }
public static Perfil Obtener(long ID) { try { using (var BD = new Data.USER.FACTURAUSEREntities()) { var z = (from x in BD.Perfils where x.PerfilID == ID select x).FirstOrDefault(); if (z != null) { return(LPerfil.DataToEntidad(z, false)); } } throw new Exception("El perfil no existe"); } catch (Exception ex) { throw new Exception("Logica obtner", ex); } }
public static List <Menu> ObtenerMenus() { try { List <Menu> Menus = new List <Menu>(); using (var BD = new Data.USER.FACTURAUSEREntities()) { var me = (from x in BD.Menus orderby x.Orden select x).ToList(); foreach (var m in me) { Menus.Add(DataToEntidad(m)); } } return(Menus); } catch (Exception ex) { throw ex; } }
public static bool CambiarEstado(long ID, bool estado) { try { using (var BD = new Data.USER.FACTURAUSEREntities()) { var g = (from x in BD.Perfils where x.PerfilID == ID select x).FirstOrDefault(); if (g == null) { throw new Exception("El perfil no existe"); } g.PerfilHabilitado = estado; BD.SaveChanges(); return(true); } } catch (Exception ex) { throw new Exception("Logica caombiarestado", ex); } }
/// <summary> /// Obtiene un listado de todos los permisos /// </summary> /// <returns></returns> public static List <Permiso> ObtenerPermisos() { try { var listaPermisos = new List <Permiso>(); using (var BD = new Data.USER.FACTURAUSEREntities()) { var permisos = (from p in BD.Permisoes select p).ToList(); foreach (var permiso in permisos.Where(x => x.PermisoPadreID == null)) { listaPermisos.Add(DataToEntidad(permiso)); } return(listaPermisos); } } catch (Exception ex) { throw ex; } }
public static List <Perfil> allPerfils() { try { using (var BD = new Data.USER.FACTURAUSEREntities()) { var list = new List <Perfil>(); var z = BD.Perfils.ToList(); if (z != null) { foreach (var item in z) { list.Add(LPerfil.DataToEntidad(item, false)); } return(list); } } throw new Exception("El perfil no existe"); } catch (Exception ex) { throw new Exception("Logica obtner", ex); } }
public static long Guardar(Perfil Entidad) { try { using (var BD = new Data.USER.FACTURAUSEREntities()) { if (Entidad.ID > 0) { //editar if (BD.Perfils.Count(x => x.PerfilNombre.ToUpper().Equals(Entidad.Nombre.ToUpper().Trim()) && x.PerfilID != Entidad.ID) > 0) { throw new Exception("El nombre del perfil ya se encuentra registrado en el sistema"); } var p = BD.Perfils.FirstOrDefault(x => x.PerfilID == Entidad.ID); if (p == null) { throw new Exception("El perfil no existe"); } p.PerfilDescripcion = Entidad.Descripcion; p.PerfilHabilitado = Entidad.Habilitado; p.PerfilNombre = Entidad.Nombre; p.Permisoes.Clear(); foreach (var m in Entidad.Permisos) { var per = BD.Permisoes.FirstOrDefault(x => x.PermisoID == m.ID); if (per != null) { if (per.PermisoPadreID.HasValue) { var padre = per.Permiso2; LPerfil.BucleAgregarPadre(ref p, ref padre); } if (!p.Permisoes.Any(x => x.PermisoID == per.PermisoID)) { p.Permisoes.Add(per); } } } BD.SaveChanges(); return(p.PerfilID); } else { //nuevo if (BD.Perfils.Count(x => x.PerfilNombre.ToUpper().Equals(Entidad.Nombre.ToUpper().Trim())) > 0) { throw new Exception("El nombre del perfil ya se encuentra registrado en el sistema"); } Data.USER.Perfil p = new Data.USER.Perfil() { PerfilDescripcion = Entidad.Descripcion, PerfilHabilitado = Entidad.Habilitado, PerfilNombre = Entidad.Nombre }; p.Permisoes = new List <Data.USER.Permiso>(); foreach (var m in Entidad.Permisos) { var per = BD.Permisoes.FirstOrDefault(x => x.PermisoID == m.ID); if (per != null) { if (per.PermisoPadreID.HasValue) { var padre = per.Permiso2; LPerfil.BucleAgregarPadre(ref p, ref padre); } if (!p.Permisoes.Any(x => x.PermisoID == per.PermisoID)) { p.Permisoes.Add(per); } } } BD.Perfils.Add(p); BD.SaveChanges(); return(p.PerfilID); } } } catch (Exception ex) { throw new Exception("Logica guardar", ex); } }