public ActionResult CityIndex(string city, string area) { var areaModel = new AreaFilteMobdel(); if (!string.IsNullOrEmpty(area)) { areaModel = StoresAccess.GetAreaFilter(area); } else if (!string.IsNullOrEmpty(city)) { areaModel = StoresAccess.GetAreaFilter(city); } if (areaModel == null || areaModel.AreaType == 0) { return(Redirect("/")); } ViewBag.CityName = areaModel?.CityName ?? string.Empty; ViewBag.CityPy = areaModel?.CityNamePy ?? string.Empty; ViewBag.AreaPy = areaModel?.AreaNamePy ?? string.Empty; ViewBag.AreaName = areaModel?.AreaName ?? string.Empty; ViewBag.AreaList = HotCityList.List; var request = new StoreSearchRequest { Area = area, City = city, }; var cityList = new List <CityBrandModel>(); var data = StoresAccess.GetStoreList(request); if (data != null && data.Count > 0) { BrandList.List.ForEach(x => { var bData = data.Where(d => d.brand == x.Id).OrderBy(d => d.sortby).ToList(); if (bData != null && bData.Count > 0) { var cityModel = new CityBrandModel { Brand = x.Id, BrandName = x.Name, List = new List <StoreSearchModel>() }; bData = bData.Take(4).ToList(); cityModel.List.AddRange(StoresAccess.ConvertList(bData)); cityList.Add(cityModel); } }); } ViewBag.CityList = cityList; return(View()); }
/// <summary> /// 关键词匹配区域 /// </summary> /// <param name="word"></param> /// <returns></returns> public static AreaFilteMobdel GetAreaFilter(string word) { var areaModel = new AreaFilteMobdel(); StringBuilder getsql = new StringBuilder(); getsql.Append(" SELECT * FROM stores WHERE 1=1 "); getsql.Append($" AND ( city = '{word}' ) Limit 1; "); var dt = MySqlHelper.Query(getsql.ToString())?.Tables[0]; var model = GetStoresModel(dt); if (model != null && model.Id > 0) { areaModel = new AreaFilteMobdel { AreaName = string.Empty, AreaNamePy = string.Empty, CityName = model.city, CityNamePy = model.cityPy, AreaType = 1 }; return(areaModel); } getsql = new StringBuilder(); getsql.Append(" SELECT * FROM stores WHERE 1=1 "); getsql.Append($" AND ( district = '{word}') Limit 1; "); dt = MySqlHelper.Query(getsql.ToString())?.Tables[0]; model = GetStoresModel(dt); if (model != null && model.Id > 0) { areaModel = new AreaFilteMobdel { AreaName = model.district, AreaNamePy = model.districtPy, CityName = model.city, CityNamePy = model.cityPy, AreaType = 2 }; return(areaModel); } return(null); }