/** * @param int $cityData 城市信息 * * @return int $newCity */ public function districtProcess($cityData) { $mUser = new UserBaseInfo(); $mDistrict = new District(); $mDistrictOld = new DistrictOld(); if ($cityData && is_array($cityData)) { foreach ($cityData as $key => $value) { $city = $value; $districtData = $mDistrictOld->getByCityId($city); if (isset($districtData['name']) && $districtData['name']) { $count = $mDistrict->getByCityName($districtData['name'], true); if ($count == 0) { $newCity = '-1'; FileLogger::getInstance('district_abnormity.log')->writeOne($districtData['name'], Logger::LEVEL_ERROR, '区域异常日志'); } else { if ($count == 1) { $newData = $mDistrict->getByCityName($districtData['name']); //判断是否是直辖市 $isCharteredCities = $this->isCharteredCities($newData['id']); $newCity = $isCharteredCities ? $newData['upid'] : $newData['id']; } else { $data = $mDistrictOld->getByCityId($districtData['upid']); $newData = $mDistrict->getByCityName($data['name']); $upid = $newData['id']; $data = $mDistrict->getCitys($upid, $districtData['name']); //判断是否是直辖市 $isCharteredCities = $this->isCharteredCities($data['id']); $newCity = $isCharteredCities ? $data['upid'] : $data['id']; } } $result[$city] = $newCity; } } return $result; } }