From 8b09fbc19a96b57bf1d0e4d7c79b51a76aeca554 Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期五, 28 三月 2025 19:57:56 +0800
Subject: [PATCH] 修改bug

---
 UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/OpenCityServiceImpl.java |   29 ++++++++++++++++++++---------
 1 files changed, 20 insertions(+), 9 deletions(-)

diff --git a/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/OpenCityServiceImpl.java b/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/OpenCityServiceImpl.java
index 94f88dc..3de89ff 100644
--- a/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/OpenCityServiceImpl.java
+++ b/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/OpenCityServiceImpl.java
@@ -12,6 +12,7 @@
 import com.stylefeng.guns.modular.system.util.GoogleMap.AddressComponentsVo;
 import com.stylefeng.guns.modular.system.util.GoogleMap.GoogleMapUtil;
 import com.stylefeng.guns.modular.system.util.GoogleMap.ReverseGeocodeVo;
+import com.stylefeng.guns.modular.system.util.RedisUtil;
 import com.stylefeng.guns.modular.system.warpper.BaseWarpper;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -32,6 +33,9 @@
 
     @Autowired
     private IUserInfoService userInfoService;
+    
+    @Resource
+    private RedisUtil redisUtil;
 
 
     /**
@@ -41,12 +45,12 @@
      */
     @Override
     public List<BaseWarpper> queryOpenCity(Integer uid, Integer language) throws Exception {
-        if(null == language){
-            language = 2;
-        }
-        if(null != uid){
+        if(null == language && null != uid){
             UserInfo userInfo = userInfoService.selectById(uid);
             language = userInfo.getLanguage();
+        }
+        if(null == language){
+            language = 2;
         }
         List<OpenCity> openCities = openCityMapper.queryOpenCity();
         List<BaseWarpper> list = new ArrayList<>();
@@ -57,6 +61,8 @@
             baseWarpper.setName(language == 1 ? city.getChineseName() : language == 2 ? city.getEnglishName() : language == 3 ? city.getFrenchName() : city.getEnglishName());
             baseWarpper.setLon(null != c.getLon() ? c.getLon() : 0);
             baseWarpper.setLat(null != c.getLat() ? c.getLat() : 0);
+            baseWarpper.setContent(language == 1 ? city.getCountryChineseName() : language == 2 ? city.getCountryEnglishName() : language == 3 ? city.getCountryFrenchName() : city.getEnglishName());
+            baseWarpper.setCode(city.getCountryCode());
             list.add(baseWarpper);
         }
         return list;
@@ -69,10 +75,14 @@
      * @throws Exception
      */
     @Override
-    public boolean openCity(Double lat, Double lnt) throws Exception {
-        ReverseGeocodeVo reverseGeocode = GoogleMapUtil.getReverseGeocode(lat, lnt);
+    public City openCity(Integer uid, Double lat, Double lnt, Integer language) throws Exception {
+        if(null == language){
+            language = 2;
+        }
+        String tripId = redisUtil.getValue("trip" + uid);
+        ReverseGeocodeVo reverseGeocode = GoogleMapUtil.getReverseGeocode(lat, lnt, tripId);
         if(null == reverseGeocode){
-            return false;
+            return null;
         }
         AddressComponentsVo[] addressComponentsVos = reverseGeocode.getAddressComponentsVos();
         String[] city = new String[addressComponentsVos.length];
@@ -81,8 +91,9 @@
         }
         List<OpenCity> openCities = openCityMapper.queryByCode(city);
         if(openCities.size() == 0){
-            return false;
+            return null;
         }
-        return true;
+        City city1 = cityService.selectById(openCities.get(0).getCityId());
+        return city1;
     }
 }

--
Gitblit v1.7.1