Files
AlquilaFacil/Modelo/RepositorioPropietario.cs
2025-01-10 04:47:22 -03:00

44 lines
1.4 KiB
C#

using System;
using Entidades;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Storage.ValueConversion.Internal;
using Modelo;
public class RepositorioPropietario: RepositorioBase<RepositorioPropietario> {
public Cliente? ObtenerPropietarioPorDni(long Dni){
if (Dni < 1) return null;
FormattableString sqlq = $"""
SELECT * FROM Clientes c
JOIN cliente_Grupos cg ON cg.idgrupo = 1
WHERE c.dni = {Dni}
LIMIT 1
""";
Cliente? cli = Context.Database.SqlQuery<Cliente?>(sqlq).First();
if (cli == null|| cli.Dni == 0) return null;
if (cli.Dni == 0 || cli == null) return null;
return cli;
}
public Cliente? ObtenerPropietarioPorEmail(string email){
var con = Context;
Cliente? cli = con.Clientes.Include(x=>x.Idgrupos).FirstOrDefault(x=>x.Email == email);
if (cli == null|| cli.Dni == 0) return null;
var grupo = cli.Idgrupos.FirstOrDefault(x=>x.Id == 1);
if (grupo == null) return null;
return cli;
}
public Cliente? ObtenerPropietarioPorIdPropiedad(int idpropiedad) {
var con = Context;
Propiedade? pro = con.Propiedades.Include(x=>x.DnipropietarioNavigation)
.FirstOrDefault(x=>x.Id == idpropiedad);
if (pro == null || pro.DnipropietarioNavigation == null) return null;
return pro.DnipropietarioNavigation;
}
}