Files
AlquilaFacil/Aspnet/Strategy/BusquedaAdmin/Filtros.cs
2025-01-03 21:41:50 -03:00

52 lines
2.5 KiB
C#

using Entidades.Admin;
using Modelo;
namespace AlquilaFacil.StrategyBusquedaAdmin;
public class BusquedaSinParametros : IAdminBusquedaStrategy {
public IQueryable<PropiedadesAdmin> Filtrar(string servicios, int cantidadHabitaciones, int tipoPropiedad, int pag) {
return RepositorioPropiedades.Singleton.ListarPropiedadesPorPaginaAdmin(pag);
}
}
public class BusquedaPorHabitaciones : IAdminBusquedaStrategy {
public IQueryable<PropiedadesAdmin> Filtrar(string servicios, int cantidadHabitaciones, int tipoPropiedad, int pag) {
return RepositorioPropiedades.Singleton.ObtenerPropiedesPorHabitacionesPaginado(cantidadHabitaciones, pag);
}
}
public class BusquedaPorTipo : IAdminBusquedaStrategy {
public IQueryable<PropiedadesAdmin> Filtrar(string servicios, int cantidadHabitaciones, int tipoPropiedad, int pag) {
return RepositorioPropiedades.Singleton.ObtenerPropiedesPorTipoPaginado(tipoPropiedad, pag);
}
}
public class BusquedaPorServicios : IAdminBusquedaStrategy {
public IQueryable<PropiedadesAdmin> Filtrar(string servicios, int cantidadHabitaciones, int tipoPropiedad, int pag) {
return RepositorioPropiedades.Singleton.ObtenerPropiedesPorServiciosPaginado(servicios, pag);
}
}
public class BusquedaPorHabitacionesTipo : IAdminBusquedaStrategy {
public IQueryable<PropiedadesAdmin> Filtrar(string servicios, int cantidadHabitaciones, int tipoPropiedad, int pag) {
return RepositorioPropiedades.Singleton.ObtenerPropiedesPorHabitaciones_TipoPaginado(cantidadHabitaciones, tipoPropiedad, pag);
}
}
public class BusquedaPorHabitacionesServicios : IAdminBusquedaStrategy {
public IQueryable<PropiedadesAdmin> Filtrar(string servicios, int cantidadHabitaciones, int tipoPropiedad, int pag) {
return RepositorioPropiedades.Singleton.ObtenerPropiedesPorHabitaciones_Servicios_Paginado(cantidadHabitaciones, servicios, pag);
}
}
public class BusquedaTipoServicios : IAdminBusquedaStrategy {
public IQueryable<PropiedadesAdmin> Filtrar(string servicios, int cantidadHabitaciones, int tipoPropiedad, int pag) {
return RepositorioPropiedades.Singleton.ObtenerPropiedesPorTipo_Servicios_Paginado(tipoPropiedad, servicios, pag);
}
}
public class BusquedaFull : IAdminBusquedaStrategy {
public IQueryable<PropiedadesAdmin> Filtrar(string servicios, int cantidadHabitaciones, int tipoPropiedad, int pag) {
return RepositorioPropiedades.Singleton.ObtenerPropiedesPorHabitaciones_Tipo_Servicios_Paginado(cantidadHabitaciones, tipoPropiedad, servicios, pag);
}
}