Example #1
0
        public Expression <Func <Game, bool> > GetFilterGameExpression(FilterDataModel filters)
        {
            var gamePipelineExpression = new GamePipelineBuilder(filters)
                                         .WithSearchFilter()
                                         .WithGameGenreFilter()
                                         .WithGamePlatformsFilter()
                                         .WithGamePriceFilter()
                                         .WithGamePublisherFilter()
                                         .WithGameReleaseDateFilter()
                                         .Build();

            return(gamePipelineExpression);
        }
Example #2
0
        //public IEnumerable<string> GetAllGameGenres(string hotelId)
        //{
        //    var hotel = _hotelRepository.FirstOrDefault(a => a.Key == hotelId);
        //    var genres = new List<string>();

        //    foreach (GameGenre genre in hotel.GameGenres)
        //    {
        //        var genreEntity = _genreRepository.FirstOrDefault(a => a.Id == genre.GenreId);
        //        genres.Add(genreEntity.Name);
        //    }

        //    return genres;
        //}

        public HotelFilters ProcessFiltering(FilterDataModel filters)
        {
            var hotelsFilters = new HotelFilters {
                Filters = filters
            };
            var hotelPipelineExpression = new GamePipelineBuilder(filters).WithSearchFilter()
                                          .WithGamePriceFilter().WithGameRoomFilter().WithGameReleaseDateFilter().Build();
            var hotels = GetAllHotels(filters.SortType, _language, filter: hotelPipelineExpression, skip: (filters.CurrentPage - 1) * filters.ItemsPerPage, take: filters.ItemsPerPage);

            filters.TotalPages   = GetTotalPages(_hotelRepository.Count(hotelPipelineExpression), filters.ItemsPerPage);
            hotelsFilters.Hotels = hotels;

            return(hotelsFilters);
        }
Example #3
0
 public GamePipelineBuilderTest()
 {
     _gamePipelineBuilder = new GamePipelineBuilder(new FilterDataModel()
     {
         Genres = new List <string> {
             "Genre"
         },
         Platforms = new List <string> {
             "Platform"
         },
         Publishers = new List <string> {
             "Publisher"
         },
         SortType     = SortType.MostCommented,
         SearchString = "Search",
         PriceFrom    = 0,
         PriceTo      = 100,
         ReleaseDate  = ReleaseDate.LastMonth,
     });
 }
Example #4
0
 public Game(Wizard wizard, Boss boss, bool hardMode = false)
 {
     _wizard          = wizard;
     _boss            = boss;
     _pipelineBuilder = new GamePipelineBuilder(hardMode);
 }