Ejemplo n.º 1
0
 private IEnumerable <Club> Filter(ClubFilterData filterData, IEnumerable <Club> clubs)
 {
     clubs = clubs.Where(club => ApplyFilters(filterData)
                         .IsSatisfiedBy(club))
             .ToList();
     return(clubs);
 }
Ejemplo n.º 2
0
        private PagedClubsDTO GetClubs(
            int pageNumber, int pageSize, IEnumerable <Club> clubs, ClubFilterData filterData)
        {
            clubs = Filter(filterData, clubs);
            var result = GetPagedClubs(clubs, pageNumber, pageSize);

            return(result);
        }
Ejemplo n.º 3
0
        public async Task <PagedClubsDTO> GetUserClubs(
            int pageNumber,
            int pageSize,
            string userId,
            ClubFilterData filterData)
        {
            var clubs = await _clubRepository.GetUserClubs(userId);

            var result = GetClubs(pageNumber, pageSize, clubs, filterData);

            return(result);
        }
Ejemplo n.º 4
0
 public async Task <ActionResult <PagedClubsDTO> > GetUserClubs(
     [FromQuery] ClubFilterData filterData,
     [FromQuery] string userId,
     [FromQuery] int pageNumber = 1,
     [FromQuery] int pageSize   = 3)
 {
     try
     {
         return(Ok(await _clubService.GetUserClubs(pageNumber, pageSize, userId, filterData)));
     }
     catch (Exception exception)
     {
         return(BadRequest(exception.Message));
     }
 }
Ejemplo n.º 5
0
 private ISpecification <Club> ApplyFilters(ClubFilterData filterData)
 {
     return(new ClubMatchesLocation(filterData.Location)
            .And(new ClubMatchesKeywords(filterData.Keywords)));
 }