49 lines
1.4 KiB
C#
49 lines
1.4 KiB
C#
using Entidades;
|
|
using Entidades.Admin;
|
|
using Microsoft.EntityFrameworkCore;
|
|
|
|
namespace Modelo;
|
|
public class RepositorioGrupos: RepositorioBase<RepositorioGrupos> {
|
|
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<Permiso> ListarPermisosDeGrupo(string grupo) {
|
|
var con = Context;
|
|
return con.Grupos.Where(x=>x.Nombre == grupo).SelectMany(x => x.Idpermisos);
|
|
}
|
|
|
|
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{
|
|
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;
|
|
|
|
}
|
|
} |