public async Task <IActionResult> Index() { var model = new HomepageAdVM(); var ads = await _repo.FindAll(); var year = _repo.GetYearList(); var price = _repo.GetPriceList(); var makeItems = await _makeRepo.GetSelectListItem(); var modelItems = await _modelRepo.GetSelectListItem(); var fuelTypeItems = await _fuelTypeRepo.GetSelectListItem(); var bodyTypeItems = await _bodyTypeRepo.GetSelectListItem(); var damageItems = await _damageRepo.GetSelectListItem(); var colorItems = await _colorRepo.GetSelectListItem(); var gearBoxItems = await _gearBoxRepo.GetSelectListItem(); var yearItems = year.Select(q => new SelectListItem { Text = q.ToString(), Value = q.ToString() }); var priceItems = price.Select(q => new SelectListItem { Text = q.ToString(), Value = q.ToString() }); var search = new SearchAdVM { MakeList = makeItems, ModelList = modelItems, YearFrom = yearItems, YearTo = yearItems, PriceFrom = priceItems, PriceTo = priceItems, FuelTypeList = fuelTypeItems, BodyTypeList = bodyTypeItems, DamageList = damageItems, ColorList = colorItems, GearBoxList = gearBoxItems }; model.Ads = ads; model.Search = search; return(View(model)); }
public async Task <List <Ad> > GetSearchResults(SearchAdVM searches) { var allData = await FindAll(); var searchResults = allData.Where(x => x.IsApproved == true).ToList(); if (searches.CarMakeId > 0) { searchResults = searchResults.Where(x => x.CarMakeId == searches.CarMakeId).ToList(); } if (searches.CarModelId > 0) { searchResults = searchResults.Where(x => x.CarModelId == searches.CarModelId).ToList(); } if (searches.PriceFromInt > 0) { searchResults = searchResults.Where(x => x.Price >= searches.PriceFromInt).ToList(); } if (searches.PriceToInt > 0) { searchResults = searchResults.Where(x => x.Price <= searches.PriceToInt).ToList(); } if (searches.YearFromInt > 0) { searchResults = searchResults.Where(x => x.Year >= searches.YearFromInt).ToList(); } if (searches.YearToInt > 0) { searchResults = searchResults.Where(x => x.Year <= searches.YearToInt).ToList(); } if (searches.EngineCapacityFrom > 0) { searchResults = searchResults.Where(x => x.EngineCapacity < searches.EngineCapacityFrom).ToList(); } if (searches.EngineCapacityTo > 0) { searchResults = searchResults.Where(x => x.EngineCapacity > searches.EngineCapacityTo).ToList(); } if (searches.BodyTypeId > 0) { searchResults = searchResults.Where(x => x.BodyTypeId == searches.BodyTypeId).ToList(); } if (searches.ColorId > 0) { searchResults = searchResults.Where(x => x.ColorId == searches.ColorId).ToList(); } if (searches.DamageId > 0) { searchResults = searchResults.Where(x => x.DamageId == searches.DamageId).ToList(); } if (searches.FuelTypeId > 0) { searchResults = searchResults.Where(x => x.FuelTypeId == searches.FuelTypeId).ToList(); } if (searches.GearBoxId > 0) { searchResults = searchResults.Where(x => x.GearBoxId == searches.GearBoxId).ToList(); } return(searchResults); }