using System.Collections.ObjectModel; using System.Security.Cryptography; using System.Text; using Entidades.Dto; using Microsoft.EntityFrameworkCore; namespace Modelo; public class RepositorioUsuarios: RepositorioBase { public static RepositorioUsuarios Singleton = new(); public Usuario? CheckUsuario(LoginDto logindto) { byte[] Contraseña = HacerHash(logindto.Contraseña); bool usu = Context.Inquilinos.Any(x=>x.Email == logindto.Email && x.Contrasena == Contraseña); if (usu){ return Context.Inquilinos.FirstOrDefault(x=>x.Email == logindto.Email); } usu = Context.Propietarios.Any(x=>x.Email == logindto.Email && x.Contrasena == Contraseña); if (usu){ return Context.Propietarios.FirstOrDefault(x=>x.Email == logindto.Email); } return null; } public override ReadOnlyCollection Listar() { throw new NotImplementedException(); } public byte[] HacerHash(string pass){ var buf = SHA256.HashData(Encoding.UTF8.GetBytes(pass)); return Encoding.UTF8.GetBytes(BitConverter.ToString(buf).Replace("-","").ToLower()); } }