|
@@ -9,6 +9,7 @@ use App\Servers\Wenlv\MuseumServer;
|
|
|
use App\Models\Api\Museum\Spot as SpotModel;
|
|
use App\Models\Api\Museum\Spot as SpotModel;
|
|
|
use App\Models\Api\Museum\SpotTmp as SpotTmpModel;
|
|
use App\Models\Api\Museum\SpotTmp as SpotTmpModel;
|
|
|
use App\Models\Manager\Citys as CitysModel;
|
|
use App\Models\Manager\Citys as CitysModel;
|
|
|
|
|
+use App\Servers\Tenxunyun\TextTranslate;
|
|
|
|
|
|
|
|
class Spot extends Controller
|
|
class Spot extends Controller
|
|
|
{
|
|
{
|
|
@@ -92,22 +93,22 @@ class Spot extends Controller
|
|
|
$province_name = $province_name . '省';
|
|
$province_name = $province_name . '省';
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
- $province_id ='0';
|
|
|
|
|
|
|
+ $province_id = '0';
|
|
|
if ($province_name != '') {
|
|
if ($province_name != '') {
|
|
|
$province_info = $CitysModel->where([['name', 'like', "%$province_name%"], ['level', '=', '1']])->first();
|
|
$province_info = $CitysModel->where([['name', 'like', "%$province_name%"], ['level', '=', '1']])->first();
|
|
|
- $province_id = $province_info ? $province_info->id :'0';
|
|
|
|
|
|
|
+ $province_id = $province_info ? $province_info->id : '0';
|
|
|
}
|
|
}
|
|
|
- $city_id ='0';
|
|
|
|
|
|
|
+ $city_id = '0';
|
|
|
if ($city_name != '') {
|
|
if ($city_name != '') {
|
|
|
$city_info = $CitysModel->where([['name', 'like', "%$city_name%"], ['level', '=', '2']])->first();
|
|
$city_info = $CitysModel->where([['name', 'like', "%$city_name%"], ['level', '=', '2']])->first();
|
|
|
- $city_name = $city_info ? $city_info->name :'';
|
|
|
|
|
- $city_id = $city_info ? $city_info->id :'0';
|
|
|
|
|
|
|
+ $city_name = $city_info ? $city_info->name : '';
|
|
|
|
|
+ $city_id = $city_info ? $city_info->id : '0';
|
|
|
}
|
|
}
|
|
|
- $district_id='0';
|
|
|
|
|
- if($district_name){
|
|
|
|
|
|
|
+ $district_id = '0';
|
|
|
|
|
+ if ($district_name) {
|
|
|
$district_info = $CitysModel->where([['name', 'like', "%$district_name%"], ['level', '=', '3']])->first();
|
|
$district_info = $CitysModel->where([['name', 'like', "%$district_name%"], ['level', '=', '3']])->first();
|
|
|
- $district_name = $district_info ? $district_info->name :'';
|
|
|
|
|
- $district_id = $district_info ? $district_info->id :'0';
|
|
|
|
|
|
|
+ $district_name = $district_info ? $district_info->name : '';
|
|
|
|
|
+ $district_id = $district_info ? $district_info->id : '0';
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
@@ -115,7 +116,7 @@ class Spot extends Controller
|
|
|
$insert_data['museum_level'] = isset($value['NB_ZLDJ_NAME']) ? $value['NB_ZLDJ_NAME'] : '';
|
|
$insert_data['museum_level'] = isset($value['NB_ZLDJ_NAME']) ? $value['NB_ZLDJ_NAME'] : '';
|
|
|
$insert_data['is_open'] = '0';
|
|
$insert_data['is_open'] = '0';
|
|
|
$insert_data['name'] = isset($value['NB_BWGMC']) ? $value['NB_BWGMC'] : '';
|
|
$insert_data['name'] = isset($value['NB_BWGMC']) ? $value['NB_BWGMC'] : '';
|
|
|
- $insert_data['intro'] = isset($value['NB_BWGJJ']) ? trim($value['NB_BWGJJ'] ): '';
|
|
|
|
|
|
|
+ $insert_data['intro'] = isset($value['NB_BWGJJ']) ? trim($value['NB_BWGJJ']) : '';
|
|
|
$insert_data['province_name'] = $province_name;
|
|
$insert_data['province_name'] = $province_name;
|
|
|
$insert_data['province_id'] = $province_id;
|
|
$insert_data['province_id'] = $province_id;
|
|
|
$insert_data['city_name'] = $city_name;
|
|
$insert_data['city_name'] = $city_name;
|
|
@@ -127,6 +128,7 @@ class Spot extends Controller
|
|
|
//查询是否存在博物馆
|
|
//查询是否存在博物馆
|
|
|
$museum_info = $SpotModel->where(['name' => $insert_data['name'], 'province_name' => $insert_data['province_name']])->first();
|
|
$museum_info = $SpotModel->where(['name' => $insert_data['name'], 'province_name' => $insert_data['province_name']])->first();
|
|
|
if (!$museum_info) {
|
|
if (!$museum_info) {
|
|
|
|
|
+
|
|
|
$SpotModel->insert($insert_data);
|
|
$SpotModel->insert($insert_data);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -138,7 +140,7 @@ class Spot extends Controller
|
|
|
* @version 1.0
|
|
* @version 1.0
|
|
|
* @date 2026-04-02
|
|
* @date 2026-04-02
|
|
|
*/
|
|
*/
|
|
|
- public function nearby_list(Request $request, SpotModel $SpotModel)
|
|
|
|
|
|
|
+ public function nearby_list(Request $request, SpotModel $SpotModel, TextTranslate $TextTranslate)
|
|
|
{
|
|
{
|
|
|
$longitude = $request->input('longitude', '');
|
|
$longitude = $request->input('longitude', '');
|
|
|
$latitude = $request->input('latitude', '');
|
|
$latitude = $request->input('latitude', '');
|
|
@@ -161,4 +163,29 @@ class Spot extends Controller
|
|
|
}
|
|
}
|
|
|
return json_send(['code' => 'success', 'msg' => '获取成功', 'data' => $data]);
|
|
return json_send(['code' => 'success', 'msg' => '获取成功', 'data' => $data]);
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * 翻译博物馆数据
|
|
|
|
|
+ * @author 唐远望
|
|
|
|
|
+ * @version 1.0
|
|
|
|
|
+ * @date 2025-12-04
|
|
|
|
|
+ * @param Request $request
|
|
|
|
|
+ */
|
|
|
|
|
+ public function translate(SpotModel $SpotModel, TextTranslate $TextTranslate)
|
|
|
|
|
+ {
|
|
|
|
|
+ $result = $SpotModel->where([['status', '=', 0], ['level', '<', 3]])->get()->toarray();
|
|
|
|
|
+ if (!empty($result)) {
|
|
|
|
|
+ foreach ($result as $key => $value) {
|
|
|
|
|
+ //增加睡眠时间,防止请求过快被腾讯云接口拒绝
|
|
|
|
|
+ usleep(1000);
|
|
|
|
|
+ $result = $TextTranslate->translateText($value['name'], 'zh', 'en');
|
|
|
|
|
+ if ($result['success']) {
|
|
|
|
|
+ $target_text = $result['target_text'] ?? '';
|
|
|
|
|
+ //更新本地数据为英文
|
|
|
|
|
+ $SpotModel->where(['id' => $value['id']])->update(['name' => $target_text]);
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ return json_send(['code' => 'success', 'msg' => '获取成功', 'data' => $result]);
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|