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