|
@@ -195,11 +195,167 @@ class Api
|
|
|
|
|
|
$state = false;
|
|
$state = false;
|
|
if ($table) {
|
|
if ($table) {
|
|
|
|
+ $update['clear'] = true;
|
|
$state = Dever::db($table)->update($update);
|
|
$state = Dever::db($table)->update($update);
|
|
}
|
|
}
|
|
return $state;
|
|
return $state;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ # 更新区域
|
|
|
|
+ public function up($province, $city, $county, $town, $code, $town_code)
|
|
|
|
+ {
|
|
|
|
+ $temp = explode(',', $code);
|
|
|
|
+ $new = array();
|
|
|
|
+ if (isset($temp[0]) && $temp[0] && $province) {
|
|
|
|
+ $data = array();
|
|
|
|
+ $data['id'] = $temp[0];
|
|
|
|
+ $data['clear'] = true;
|
|
|
|
+ $province_info = Dever::db('area/province')->one($data);
|
|
|
|
+ if (!$province_info) {
|
|
|
|
+ $data['name'] = $province;
|
|
|
|
+ Dever::load('area/import')->pinyin($data);
|
|
|
|
+ Dever::db('area/province')->insert($data);
|
|
|
|
+ $new[] = $data['name'];
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ if (isset($temp[1]) && $temp[1] && $city) {
|
|
|
|
+ $data = array();
|
|
|
|
+ $data['id'] = $temp[1];
|
|
|
|
+ $data['clear'] = true;
|
|
|
|
+ $city_info = Dever::db('area/city')->one($data);
|
|
|
|
+ if (!$city_info) {
|
|
|
|
+ if ($city == '市辖区') {
|
|
|
|
+ $city = $province;
|
|
|
|
+ }
|
|
|
|
+ $data['name'] = $city;
|
|
|
|
+ $data['province_id'] = $temp[0];
|
|
|
|
+ Dever::load('area/import')->pinyin($data);
|
|
|
|
+ Dever::db('area/city')->insert($data);
|
|
|
|
+ $new[] = $data['name'];
|
|
|
|
+ }
|
|
|
|
+ } elseif ($city) {
|
|
|
|
+ $data = array();
|
|
|
|
+ $data['name'] = $city;
|
|
|
|
+ $data['clear'] = true;
|
|
|
|
+ $city_info = Dever::db('area/city')->one($data);
|
|
|
|
+ if ($city_info) {
|
|
|
|
+ $temp[1] = $city_info['id'];
|
|
|
|
+ } else {
|
|
|
|
+ return '';
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ if (isset($temp[2]) && $temp[2] && $county) {
|
|
|
|
+ $data = array();
|
|
|
|
+ $data['id'] = $temp[2];
|
|
|
|
+ $data['clear'] = true;
|
|
|
|
+ $county_info = Dever::db('area/county')->one($data);
|
|
|
|
+ if (!$county_info) {
|
|
|
|
+ $data['name'] = $county;
|
|
|
|
+ $data['city_id'] = $temp[1];
|
|
|
|
+ $data['province_id'] = $temp[0];
|
|
|
|
+ $data['area'] = $temp[0] . ',' . $temp[1];
|
|
|
|
+ Dever::load('area/import')->setLevelCounty($data);
|
|
|
|
+ Dever::load('area/import')->pinyin($data);
|
|
|
|
+ Dever::db('area/county')->insert($data);
|
|
|
|
+ $new[] = $data['name'];
|
|
|
|
+ }
|
|
|
|
+ } elseif ($county) {
|
|
|
|
+ $data = array();
|
|
|
|
+ $data['name'] = $county;
|
|
|
|
+ $data['clear'] = true;
|
|
|
|
+ $county_info = Dever::db('area/county')->one($data);
|
|
|
|
+ if ($county_info) {
|
|
|
|
+ $temp[2] = $county_info['id'];
|
|
|
|
+ } else {
|
|
|
|
+ return '';
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ if ($town_code && $town) {
|
|
|
|
+ $data = array();
|
|
|
|
+ $data['id'] = $town_code;
|
|
|
|
+ $data['clear'] = true;
|
|
|
|
+ $town_info = Dever::db('area/town')->one($data);
|
|
|
|
+ if (!$town_info) {
|
|
|
|
+ $data['name'] = $town;
|
|
|
|
+ $data['county_id'] = $temp[2];
|
|
|
|
+ $data['city_id'] = $temp[1];
|
|
|
|
+ $data['province_id'] = $temp[0];
|
|
|
|
+ $data['area'] = $temp[0] . ',' . $temp[1] . ',' . $temp[2];
|
|
|
|
+ Dever::load('area/import')->pinyin($data);
|
|
|
|
+ $temp[3] = Dever::db('area/town')->insert($data);
|
|
|
|
+ $new[] = $data['name'];
|
|
|
|
+ } else {
|
|
|
|
+ $temp[3] = $data['id'];
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ return array(implode(',', $temp), implode(',', $new));
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ # 更新区域
|
|
|
|
+ public function upByName($province, $city, $county, $town, $town_code)
|
|
|
|
+ {
|
|
|
|
+ $result = array();
|
|
|
|
+ $new = array();
|
|
|
|
+ if ($province) {
|
|
|
|
+ $data = array();
|
|
|
|
+ $data['name'] = $province;
|
|
|
|
+ $data['clear'] = true;
|
|
|
|
+ $province_info = Dever::db('area/province')->one($data);
|
|
|
|
+ if ($province_info) {
|
|
|
|
+ $result[0] = $province_info['id'];
|
|
|
|
+ } else {
|
|
|
|
+ $result[0] = '-1';
|
|
|
|
+ $new[] = $data['name'];
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ if ($city) {
|
|
|
|
+ $data = array();
|
|
|
|
+ $data['name'] = $city;
|
|
|
|
+ $data['clear'] = true;
|
|
|
|
+ $city_info = Dever::db('area/city')->one($data);
|
|
|
|
+ if ($city_info) {
|
|
|
|
+ $result[1] = $city_info['id'];
|
|
|
|
+ } else {
|
|
|
|
+ $result[1] = '-1';
|
|
|
|
+ $new[] = $data['name'];
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ if ($county) {
|
|
|
|
+ $data = array();
|
|
|
|
+ $data['name'] = $county;
|
|
|
|
+ $data['clear'] = true;
|
|
|
|
+ $county_info = Dever::db('area/county')->one($data);
|
|
|
|
+ if ($county_info) {
|
|
|
|
+ $result[2] = $county_info['id'];
|
|
|
|
+ } else {
|
|
|
|
+ $result[2] = '-1';
|
|
|
|
+ $new[] = $data['name'];
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ if ($town_code && $town) {
|
|
|
|
+ $data = array();
|
|
|
|
+ $data['id'] = $town_code;
|
|
|
|
+ $data['clear'] = true;
|
|
|
|
+ $town_info = Dever::db('area/town')->one($data);
|
|
|
|
+ if (!$town_info) {
|
|
|
|
+ $data['name'] = $town;
|
|
|
|
+ $data['county_id'] = $result[2];
|
|
|
|
+ $data['city_id'] = $result[1];
|
|
|
|
+ $data['province_id'] = $result[0];
|
|
|
|
+ $data['area'] = $result[0] . ',' . $result[1] . ',' . $result[2];
|
|
|
|
+ Dever::load('area/import')->pinyin($data);
|
|
|
|
+ $result[3] = Dever::db('area/town')->insert($data);
|
|
|
|
+ $new[] = $data['name'];
|
|
|
|
+ } else {
|
|
|
|
+ $result[3] = $data['id'];
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ return array(implode(',', $result), implode(',', $new));
|
|
|
|
+ }
|
|
|
|
+
|
|
public function getProvince()
|
|
public function getProvince()
|
|
{
|
|
{
|
|
return Dever::db('area/province')->getAll();
|
|
return Dever::db('area/province')->getAll();
|