コード例 #1
0
 private IQueryable <Tire> SeasonFilter(TiresSearchModel searchModel, IQueryable <Tire> rims)
 {
     if (searchModel.Season != null)
     {
         rims = rims.Where(x => x.Season == searchModel.Season);
     }
     return(this.BrandFilter(searchModel, rims));
 }
コード例 #2
0
        public void OnlyBrandNew_ShouldBe_TypeOfBool()
        {
            var rim = new TiresSearchModel();

            var result = rim.OnlyBrandNew.GetType();

            Assert.True(result == typeof(bool));
        }
コード例 #3
0
        public void PriceTo_ShouldBe_TypeOfDecimal()
        {
            var rim = new TiresSearchModel();

            rim.PriceTo = 1;
            var result = rim.PriceTo.GetType();

            Assert.True(result == typeof(decimal));
        }
コード例 #4
0
        public void QuantityFrom_ShouldBe_TypeOfInt()
        {
            var rim = new TiresSearchModel();

            rim.QuantityFrom = 1;
            var result = rim.QuantityFrom.GetType();

            Assert.True(result == typeof(int));
        }
コード例 #5
0
        public void Size_ShouldBe_TypeOfDouble()
        {
            var rim = new TiresSearchModel();

            rim.Size = 1;
            var result = rim.Size.GetType();

            Assert.True(result == typeof(double));
        }
コード例 #6
0
        public void Siting_ShouldBe_TypeOfString(string test)
        {
            var bm = new TiresSearchModel();

            bm.Siting = test;
            var result = bm.Siting.GetType();

            Assert.True(result == typeof(string));
        }
コード例 #7
0
        private IQueryable <Tire> BrandFilter(TiresSearchModel searchModel, IQueryable <Tire> rims)
        {
            if (!string.IsNullOrWhiteSpace(searchModel.Brand))
            {
                rims = rims.Where(x => x.Brand.ToLower().Contains(searchModel.Brand.ToLower()));
            }

            return(this.ModelFilter(searchModel, rims));
        }
コード例 #8
0
        private IQueryable <Tire> SpeedIndexFilter(TiresSearchModel searchModel, IQueryable <Tire> rims)
        {
            if (searchModel.SpeedIndexFrom != null)
            {
                rims = rims.Where(x => x.SpeedIndex >= searchModel.SpeedIndexFrom);
            }

            return(this.WeightIndexFilter(searchModel, rims));
        }
コード例 #9
0
        private IQueryable <Tire> WidthFilter(TiresSearchModel searchModel, IQueryable <Tire> rims)
        {
            if (searchModel.Width != null)
            {
                rims = rims.Where(x => x.Width == searchModel.Width);
            }

            return(this.SizeFilter(searchModel, rims));
        }
コード例 #10
0
        public void WeightIndex_ShouldBe_TypeOfString(string test)
        {
            var bm = new TiresSearchModel();

            bm.WeightIndex = test;
            var result = bm.WeightIndex.GetType();

            Assert.True(result == typeof(string));
        }
コード例 #11
0
        private IQueryable <Tire> OnlyBrandNewFilter(TiresSearchModel searchModel, IQueryable <Tire> rims)
        {
            if (searchModel.OnlyBrandNew)
            {
                rims = rims.Where(x => x.IsBrandNew);
            }

            return(rims);
        }
コード例 #12
0
        private IQueryable <Tire> PriceFromFilter(TiresSearchModel searchModel, IQueryable <Tire> rims)
        {
            if (searchModel.PriceFrom != null)
            {
                rims = rims.Where(x => x.Price >= searchModel.PriceFrom);
            }

            return(this.PriceToFilter(searchModel, rims));
        }
コード例 #13
0
        private IQueryable <Tire> PriceToFilter(TiresSearchModel searchModel, IQueryable <Tire> rims)
        {
            if (searchModel.PriceTo != null)
            {
                rims = rims.Where(x => x.Price <= searchModel.PriceTo);
            }

            return(this.OnlyBrandNewFilter(searchModel, rims));
        }
コード例 #14
0
        private IQueryable <Tire> SitingFilter(TiresSearchModel searchModel, IQueryable <Tire> rims)
        {
            if (!string.IsNullOrWhiteSpace(searchModel.Siting))
            {
                rims = rims.Where(x => x.Siting.ToLower().Contains(searchModel.Siting.ToLower()));
            }

            return(this.QuantityFromFilter(searchModel, rims));
        }
コード例 #15
0
        private IQueryable <Tire> SizeFilter(TiresSearchModel searchModel, IQueryable <Tire> rims)
        {
            if (searchModel.Size != null)
            {
                rims = rims.Where(x => x.Size == searchModel.Size);
            }

            return(this.PriceFromFilter(searchModel, rims));
        }
コード例 #16
0
        private IQueryable <Tire> QuantityFromFilter(TiresSearchModel searchModel, IQueryable <Tire> rims)
        {
            if (searchModel.QuantityFrom != null)
            {
                rims = rims.Where(x => x.Quantity >= searchModel.QuantityFrom);
            }

            return(this.WidthFilter(searchModel, rims));
        }
コード例 #17
0
        public void GrappleMm_ShouldBe_TypeOfDouble()
        {
            var rim = new TiresSearchModel();

            rim.GrappleFrom = 1;
            var result = rim.GrappleFrom.GetType();

            Assert.True(result == typeof(double));
        }
コード例 #18
0
        public void SpeedIndex_ShouldBe_TypeOfInt()
        {
            var rim = new TiresSearchModel();

            rim.SpeedIndexFrom = 1;
            var result = rim.SpeedIndexFrom.GetType();

            Assert.True(result == typeof(int));
        }
コード例 #19
0
        private IQueryable <Tire> GrappleMmFilter(TiresSearchModel searchModel, IQueryable <Tire> rims)
        {
            if (searchModel.GrappleFrom != null)
            {
                rims = rims.Where(x => x.GrappleMm >= searchModel.GrappleFrom);
            }

            return(this.SeasonFilter(searchModel, rims));
        }
コード例 #20
0
        private IQueryable <Tire> WeightIndexFilter(TiresSearchModel searchModel, IQueryable <Tire> rims)
        {
            if (searchModel.WeightIndex != null)
            {
                rims = rims.Where(x => x.WeightIndex == searchModel.WeightIndex);
            }

            return(this.GrappleMmFilter(searchModel, rims));
        }
コード例 #21
0
        public ActionResult SearchingNextFive(TiresSearchModel rim, int page)
        {
            var tires = this.tiresService.GetNextFive(rim, page).To <ListingTireViewModel>().ToList();

            return(PartialView("PartialTires", tires));
        }
コード例 #22
0
        private IQueryable <Tire> Filter(TiresSearchModel searchModel)
        {
            var tires = this.tiresRepo.All();

            return(this.DotFromFilter(searchModel, tires).OrderBy(x => x.Brand));
        }
コード例 #23
0
 public IQueryable <Tire> GetFirstFive(TiresSearchModel searchModel)
 {
     return(this.Filter(searchModel).Take(5));
 }
コード例 #24
0
 public IQueryable <Tire> GetNextFive(TiresSearchModel searchModel, int page)
 {
     return(this.Filter(searchModel).Skip(page * 5).Take(5));
 }
コード例 #25
0
 public ActionResult Search(TiresSearchModel tire)
 {
     return(RedirectToAction("Searching", tire));
 }
コード例 #26
0
        public ActionResult Searching(TiresSearchModel tire)
        {
            var tires = this.tiresService.GetFirstFive(tire).To <ListingTireViewModel>().ToList();

            return(View("ListingTire", tires));
        }