avansando más

This commit is contained in:
2025-04-17 13:24:07 -03:00
parent 6fb6ade153
commit c1a27baedd
15 changed files with 477 additions and 262 deletions

View File

@@ -3,29 +3,40 @@ using Entidades.Admin;
using Microsoft.EntityFrameworkCore;
namespace Modelo;
public class RepositorioGrupos: RepositorioBase<RepositorioGrupos> {
public class RepositorioGrupos : RepositorioBase<RepositorioGrupos>
{
public IQueryable<Permiso> ListarPermisosDeGrupo(string grupo) {
public IQueryable<Grupo> ListarTodosLosGrupos()
{
var con = Context;
return con.Grupos.Where(x=>x.Nombre == grupo).SelectMany(x => x.Idpermisos);
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
return con.Grupos.Where(x => x.Nombre == grupo).SelectMany(x => x.Idpermisos);
}
public IQueryable<GrupoAdmin> ObtenerGruposPorDni(long Dni) {
public IQueryable<GrupoAdmin> ObtenerGruposPorDni(long Dni)
{
var con = Context;
var grupos = con.Clientes.Where(x=>x.Dni == Dni).SelectMany(x=>x.Idgrupos)
.Select(x=> new GrupoAdmin{
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){
public bool CheckGrupos(string token, string grupo)
{
var con = Context;
Cliente? cli = con.Clientes.Include(x=>x.Idgrupos).FirstOrDefault(x=>x.Token == token);
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);
Grupo? gru = con.Grupos.FirstOrDefault(x => x.Nombre == grupo);
if (gru == null) return false;
if (cli.Idgrupos.Contains(gru)) return true;
@@ -33,4 +44,4 @@ public class RepositorioGrupos: RepositorioBase<RepositorioGrupos> {
return false;
}
}
}