Avansamos mucho con el administracion propiedades

This commit is contained in:
2025-01-03 01:52:35 -03:00
parent 2fa110bb89
commit 0a9ac0a787
19 changed files with 818 additions and 45 deletions
+52
View File
@@ -0,0 +1,52 @@
using Entidades.Dto;
using Modelo;
namespace AlquilaFacil.StrategyBusqueda;
public class BusquedaSinParametros : IBusquedaStrategy {
public IQueryable<PropiedadesDto> Filtrar(string servicios, int cantidadHabitaciones, int tipoPropiedad) {
return RepositorioPropiedades.Singleton.ListarPropiedades();
}
}
public class BusquedaPorHabitaciones : IBusquedaStrategy {
public IQueryable<PropiedadesDto> Filtrar(string servicios, int cantidadHabitaciones, int tipoPropiedad) {
return RepositorioPropiedades.Singleton.ObtenerPropiedesPorHabitaciones(cantidadHabitaciones);
}
}
public class BusquedaPorTipo : IBusquedaStrategy {
public IQueryable<PropiedadesDto> Filtrar(string servicios, int cantidadHabitaciones, int tipoPropiedad) {
return RepositorioPropiedades.Singleton.ObtenerPropiedesPorTipo(tipoPropiedad);
}
}
public class BusquedaPorServicios : IBusquedaStrategy {
public IQueryable<PropiedadesDto> Filtrar(string servicios, int cantidadHabitaciones, int tipoPropiedad) {
return RepositorioPropiedades.Singleton.ObtenerPropiedesPorServicios(servicios);
}
}
public class BusquedaPorHabitacionesTipo : IBusquedaStrategy {
public IQueryable<PropiedadesDto> Filtrar(string servicios, int cantidadHabitaciones, int tipoPropiedad) {
return RepositorioPropiedades.Singleton.ObtenerPropiedesPorHabitaciones_Tipo(cantidadHabitaciones, tipoPropiedad);
}
}
public class BusquedaPorHabitacionesServicios : IBusquedaStrategy {
public IQueryable<PropiedadesDto> Filtrar(string servicios, int cantidadHabitaciones, int tipoPropiedad) {
return RepositorioPropiedades.Singleton.ObtenerPropiedesPorHabitaciones_Servicios(cantidadHabitaciones, servicios);
}
}
public class BusquedaTipoServicios : IBusquedaStrategy {
public IQueryable<PropiedadesDto> Filtrar(string servicios, int cantidadHabitaciones, int tipoPropiedad) {
return RepositorioPropiedades.Singleton.ObtenerPropiedesPorTipo_Servicios(tipoPropiedad, servicios);
}
}
public class BusquedaFull : IBusquedaStrategy {
public IQueryable<PropiedadesDto> Filtrar(string servicios, int cantidadHabitaciones, int tipoPropiedad) {
return RepositorioPropiedades.Singleton.ObtenerPropiedesPorHabitaciones_Tipo_Servicios(cantidadHabitaciones, tipoPropiedad, servicios);
}
}