public List <BusinessListItem> GetByStateAndType(string stateName, string type) { using (var ctx = new ApplicationDbContext()) { var Businesses = new List <Business>(); Businesses = ctx.Businesses.Where(e => e.City.State == stateName).ToList(); if (type != null && type.Contains("Brewery")) { Businesses = ctx.Businesses.Where(e => e.City.State == stateName && e.TypeOfEstablishment == "Brewery").ToList(); } if (type != null && type.Contains("Winery")) { Businesses = ctx.Businesses.Where(e => e.City.State == stateName && e.TypeOfEstablishment == "Winery").ToList(); } if (type != null && type.Contains("Distillery")) { Businesses = ctx.Businesses.Where(e => e.City.State == stateName && e.TypeOfEstablishment == "Distillery").ToList(); } if (type != null && type.Contains("Bar")) { Businesses = ctx.Businesses.Where(e => e.City.State == stateName && e.TypeOfEstablishment == "Bar").ToList(); } foreach (var business in Businesses) { var ratings = new List <Visited>(); if (business.AllVisits != null) { foreach (var rating in business.AllVisits) { if (rating.Rating > 0) { ratings.Add(rating); } } } var found = new BusinessListItem { ID = business.ID, Name = business.Name, TypeOfEstablishment = business.TypeOfEstablishment, Rating = business.Rating, City = business.City.Name, CityID = business.CityID, State = business.City.State, ZipCode = business.ZipCode, Events = business.Events, Ratings = ratings, }; searchResults.Add(found); } return(searchResults); } }
public List <BusinessListItem> GetByCityAndEventType(int id, string eventType) { using (var ctx = new ApplicationDbContext()) { var Businesses = new List <Business>(); var events = new List <Event>(); Businesses = ctx.Businesses.Where(e => e.City.ID == id).ToList(); foreach (var business in Businesses) { var ratings = new List <Visited>(); if (business.AllVisits != null) { foreach (var rating in business.AllVisits) { if (rating.Rating > 0) { ratings.Add(rating); } } } if (eventType != null) { foreach (var item in business.Events) { if (item.TypeOfEvent == eventType) { events.Add(item); } } } var found = new BusinessListItem { ID = business.ID, Name = business.Name, TypeOfEstablishment = business.TypeOfEstablishment, Rating = business.Rating, City = business.City.Name, CityID = business.CityID, State = business.City.State, ZipCode = business.ZipCode, Events = events, Ratings = ratings, }; searchResults.Add(found); } return(searchResults); } }
public ActionResult Details(int id, string type, string eventType) { var businessService = new BusinessService(); var service = CreateCityService(); var city = service.GetCityByID(id); var model = businessService.GetByCityAndType(id, type, eventType); if (model.Count() == 0) { var baseBusiness = new BusinessListItem(); baseBusiness.City = city.Name; baseBusiness.State = city.State; baseBusiness.CityID = city.ID; model.Add(baseBusiness); } ModelState.Clear(); return(View(model)); }
public List <BusinessListItem> GetByZipCode(int zipCode) { using (var ctx = new ApplicationDbContext()) { var ratings = new List <Visited>(); var Businessess = ctx.Businesses.Where(e => e.ZipCode == zipCode).ToList(); foreach (var business in Businessess) { if (business.AllVisits != null) { foreach (var rating in business.AllVisits) { if (rating.Rating > 0) { ratings.Add(rating); } } } var found = new BusinessListItem { ID = business.ID, Name = business.Name, TypeOfEstablishment = business.TypeOfEstablishment, Rating = business.Rating, City = business.City.Name, CityID = business.CityID, State = business.City.State, ZipCode = business.ZipCode, Events = business.Events, Ratings = ratings, }; searchResults.Add(found); } return(searchResults); } }