|
@@ -747,7 +747,7 @@ namespace TEAMModelBI.Controllers.BICommon
|
|
|
///國
|
|
|
if (!string.IsNullOrWhiteSpace(countryId))
|
|
|
{
|
|
|
- groupKey = (!isChina) ? "city" : "province";
|
|
|
+ groupKey = (isChina) ? "province" : (!countryId.Equals("TW")) ? "name" : "city";
|
|
|
sqlWhere += $" AND c.countryId = '{countryId}' ";
|
|
|
}
|
|
|
///省
|
|
@@ -783,17 +783,20 @@ namespace TEAMModelBI.Controllers.BICommon
|
|
|
break;
|
|
|
case "city":
|
|
|
geoId = Convert.ToString(item.GetProperty("cityId"));
|
|
|
- if (regionData.city[countryId].ContainsKey("tw"))
|
|
|
+ if(regionData.city.ContainsKey(countryId))
|
|
|
{
|
|
|
- var cityDic = regionData.city[countryId]["tw"];
|
|
|
- var cityInfo = cityDic.FirstOrDefault(c => c.Key.Equals(geoId));
|
|
|
- if (!string.IsNullOrWhiteSpace(geoName)) geoName = (!cityInfo.Equals(default(KeyValuePair<string, regionbase>))) ? cityInfo.Value.name : string.Empty;
|
|
|
- }
|
|
|
- else if (!string.IsNullOrWhiteSpace(provinceId) && regionData.city[countryId].ContainsKey(provinceId))
|
|
|
- {
|
|
|
- var cityDic = regionData.city[countryId][provinceId];
|
|
|
- var cityInfo = cityDic.FirstOrDefault(c => c.Key.Equals(geoId));
|
|
|
- if (!string.IsNullOrWhiteSpace(geoName)) geoName = (!cityInfo.Equals(default(KeyValuePair<string, regionbase>))) ? cityInfo.Value.name : string.Empty;
|
|
|
+ if (regionData.city[countryId].ContainsKey("tw"))
|
|
|
+ {
|
|
|
+ var cityDic = regionData.city[countryId]["tw"];
|
|
|
+ var cityInfo = cityDic.FirstOrDefault(c => c.Key.Equals(geoId));
|
|
|
+ if (!string.IsNullOrWhiteSpace(geoName)) geoName = (!cityInfo.Equals(default(KeyValuePair<string, regionbase>))) ? cityInfo.Value.name : string.Empty;
|
|
|
+ }
|
|
|
+ else if (!string.IsNullOrWhiteSpace(provinceId) && regionData.city[countryId].ContainsKey(provinceId))
|
|
|
+ {
|
|
|
+ var cityDic = regionData.city[countryId][provinceId];
|
|
|
+ var cityInfo = cityDic.FirstOrDefault(c => c.Key.Equals(geoId));
|
|
|
+ if (!string.IsNullOrWhiteSpace(geoName)) geoName = (!cityInfo.Equals(default(KeyValuePair<string, regionbase>))) ? cityInfo.Value.name : string.Empty;
|
|
|
+ }
|
|
|
}
|
|
|
comeRemoveStr.ForEach(c => { geoName = ReplaceLastMatch(geoName, c, string.Empty); }); //字串替換
|
|
|
break;
|