public ActionResult Used(VehicleSearchDto searchCriteria)
        {
            var vehicleType = VehicleTypes.Used;
            IEnumerable <Vehicle> result = searchHelper.Search(searchCriteria, vehicleType);

            return(View("SearchResults", result));
        }
Beispiel #2
0
        public IEnumerable <Vehicle> Search(VehicleSearchDto searchCriteria, VehicleTypes vehicleType)
        {
            var maxPrice = searchCriteria.MaxPrice != 0 ? searchCriteria.MaxPrice : int.MaxValue;
            var minPrice = searchCriteria.MinPrice != 0 ? searchCriteria.MinPrice : 0;
            var maxYear  = searchCriteria.MaxYear != 0 ? searchCriteria.MaxYear : int.MaxValue;
            var minYear  = searchCriteria.MinYear != 0 ? searchCriteria.MinYear : 0;

            var result = vehicleRepository.GetAll().Where(p => p.Type == vehicleType).Where(p => p.ModelYear.ToString() == searchCriteria.SearchTerm ||
                                                                                            IsMakeMatch(p, searchCriteria.SearchTerm) ||
                                                                                            IsModelMatch(p, searchCriteria.SearchTerm) ||
                                                                                            IsModelYearMatch(p, searchCriteria.SearchTerm)).Where(p => IsInPriceRange(p, minPrice, maxPrice)).Where(p => IsInModelYearRange(p, minYear, maxYear));
            //|| p.Model.ToLower() == searchCriteria.SearchTerm.ToLower());


            var take = Math.Min(result.Count(), 20);

            result = result.Take(take);
            return(result);
        }
Beispiel #3
0
        public ActionResult Search(VehicleSearchDto searchCriteria)
        {
            var result = vehicleRepo.GetAll().Where(p => p.ModelYear.ToString() == searchCriteria.SearchTerm ||
                                                    IsMakeMatch(p, searchCriteria.SearchTerm) ||
                                                    IsModelMatch(p, searchCriteria.SearchTerm) ||
                                                    IsModelYearMatch(p, searchCriteria.SearchTerm));

            //|| p.Model.ToLower() == searchCriteria.SearchTerm.ToLower());
            if (searchCriteria.MaxPrice != 0)
            {
                result = result.Where(p => (p.SalePrice <searchCriteria.MaxPrice && p.SalePrice> searchCriteria.MinPrice));
            }
            if (searchCriteria.MaxYear != 0)
            {
                result = result.Where(p => p.ModelYear <searchCriteria.MaxYear && p.ModelYear> searchCriteria.MinYear);
            }

            return(View(result));
        }