ahora lista usando profundidad
This commit is contained in:
@@ -68,10 +68,22 @@ public class RepositorioGrupos : RepositorioBase<RepositorioGrupos>
|
||||
var grupos = con.Grupos.Include(x => x.IdGrupoHijos).ThenInclude(x => x.Idpermisos).Include(x => x.Idpermisos);
|
||||
return grupos;
|
||||
}
|
||||
|
||||
public IQueryable<Permiso> ListarPermisosDeGrupo(string grupo)
|
||||
{
|
||||
var con = Context; //WIP Revisar esto. revisado necesito hacer una pagina de grupo default y que los permisos resuelvan los de subgrupos
|
||||
return con.Grupos.Where(x => x.Nombre == grupo).SelectMany(x => x.Idpermisos);
|
||||
var listg = con.Grupos
|
||||
.Include(x => x.Idpermisos)
|
||||
.Include(x => x.IdGrupoHijos)
|
||||
.ThenInclude(x => x.Idpermisos).ToList();
|
||||
var g = listg.FirstOrDefault(x => x.Nombre == grupo);
|
||||
if (g == null) return Enumerable.Empty<Permiso>().AsQueryable();
|
||||
|
||||
var permisos = new HashSet<Permiso>();
|
||||
var visitados = new HashSet<int>();
|
||||
g.ObtenerPermisos(permisos, visitados);
|
||||
|
||||
return permisos.AsQueryable();
|
||||
}
|
||||
|
||||
public IQueryable<GrupoAdmin> ObtenerGruposPorDni(long Dni)
|
||||
|
||||
Reference in New Issue
Block a user