cambios para tener composite

This commit is contained in:
2025-03-05 19:12:02 -03:00
parent 21724a372f
commit dda1032685
4 changed files with 69 additions and 3 deletions
+21 -1
View File
@@ -4,14 +4,34 @@ using System.Text.Json.Serialization;
namespace Entidades;
public partial class Grupo
public partial class Grupo:IComponenteSeguridad
{
public int Id { get; set; }
public string Nombre { get; set; } = null!;
[JsonIgnore]
public virtual ICollection<Grupo> IdGrupoHijos { get; set; } = new List<Grupo>();
[JsonIgnore]
public virtual ICollection<Grupo> IdGrupoPadres { get; set; } = new List<Grupo>();
[JsonIgnore]
public virtual ICollection<Cliente> Idclientes { get; set; } = new List<Cliente>();
public virtual ICollection<Permiso> Idpermisos { get; set; } = new List<Permiso>();
public void ObtenerPermisos(HashSet<Permiso> permisos, HashSet<int> visitados)
{
if (visitados.Contains(Id)) return;
visitados.Add(Id);
foreach (var permiso in Idpermisos) {
permisos.Add(permiso);
}
foreach (var subgrupo in IdGrupoPadres) {
subgrupo.ObtenerPermisos(permisos, visitados);
}
}
}