From 940fa02adf5512a14d29297a5c2c5a955f97d611 Mon Sep 17 00:00:00 2001 From: Jerry Yan <792602257@qq.com> Date: Wed, 18 Jun 2025 14:38:46 +0800 Subject: [PATCH] =?UTF-8?q?=E7=94=A8=E6=88=B7=E9=9A=8F=E6=89=8B=E6=8B=8D?= =?UTF-8?q?=E6=94=AF=E6=8C=81=E8=87=AA=E5=8A=A8=E8=8E=B7=E5=8F=96=E5=9C=B0?= =?UTF-8?q?=E5=9D=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/controller/api/auth/UserShare.php | 34 +++++++++++++++++++ 1 file changed, 34 insertions(+) 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