diff --git a/plugs/think-plugs-ticket/src/controller/api/auth/UserShare.php b/plugs/think-plugs-ticket/src/controller/api/auth/UserShare.php index c905e0f..16b0f08 100644 --- a/plugs/think-plugs-ticket/src/controller/api/auth/UserShare.php +++ b/plugs/think-plugs-ticket/src/controller/api/auth/UserShare.php @@ -43,4 +43,38 @@ class UserShare extends Auth $id = TicketUserShare::query()->insert($data, true); $this->success('添加随手拍成功', $id); } + + private static $lbs_key = "JJWBZ-YLGLA-LCIKH-CH6C7-VVXC2-J5BEF"; + + public function query_address() + { + $data = $this->_vali([ + 'lat.require' => '纬度不能为空', + 'lng.require' => '经度不能为空', + ]); + $url = "https://apis.map.qq.com/ws/geocoder/v1/?location={$data['lat']},{$data['lng']}&key=".self::$lbs_key; + $result = http_get($url); + $result = json_decode($result, true); + if ($result['status'] == 0) { + // 只支持广安市广安区免省市区 + $address = $result['result']['address']; + $address_component = $result['result']['address_component']; + if (isset($address_component['province']) && $address_component['province'] != '四川省') { + $address = $result['result']['address']; + } else { + if (isset($address_component['city']) && $address_component['city'] != '广安市') { + $address = $result['result']['address']; + } else { + if (isset($address_component['district']) && $address_component['district'] != '广安区') { + $address = $address_component['district'] + $address_component['street'] + $address_component['street_number']; + } else { + $address = $address_component['street'] + $address_component['street_number']; + } + } + } + $this->success('查询成功', $address); + } else { + $this->error('查询失败'); + } + } } \ No newline at end of file