using Entidades; using Entidades.Admin; using Microsoft.EntityFrameworkCore; namespace Modelo; public class RepositorioGrupos: RepositorioBase { public bool CrearGrupo(string descripcion) { var con = Context; int mx = con.Grupos.Max(grupo => grupo.Id); Grupo gru = new Grupo{ Id = mx+1, Nombre = descripcion, }; con.Grupos.Add(gru); return Guardar(con); } public IQueryable ListarPermisosDeGrupo(string grupo) { var con = Context; return con.Grupos.Where(x=>x.Nombre == grupo).SelectMany(x => x.Idpermisos); } public IQueryable ObtenerGruposPorDni(long Dni) { var con = Context; var grupos = con.Clientes.Where(x=>x.Dni == Dni).SelectMany(x=>x.Idgrupos) .Select(x=> new GrupoAdmin{ Id = x.Id, Descripcion = x.Nombre, }); return grupos; } public bool CheckGrupos(string token, string grupo){ var con = Context; Cliente? cli = con.Clientes.Include(x=>x.Idgrupos).FirstOrDefault(x=>x.Token == token); if (cli == null) return false; Grupo? gru = con.Grupos.FirstOrDefault(x=>x.Nombre == grupo); if (gru == null) return false; if (cli.Idgrupos.Contains(gru)) return true; return false; } }