Pu Zhibing
2024-09-29 adf2ede692b76cf95d0cec80f4087e52d760b219
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;
    /**
@@ -57,6 +61,7 @@
            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());
            list.add(baseWarpper);
        }
        return list;
@@ -69,13 +74,14 @@
     * @throws Exception
     */
    @Override
    public String openCity(Double lat, Double lnt, Integer language) throws Exception {
    public City openCity(Integer uid, Double lat, Double lnt, Integer language) throws Exception {
        if(null == language){
            language = 2;
        }
        ReverseGeocodeVo reverseGeocode = GoogleMapUtil.getReverseGeocode(lat, lnt);
        String tripId = redisUtil.getValue("trip" + uid);
        ReverseGeocodeVo reverseGeocode = GoogleMapUtil.getReverseGeocode(lat, lnt, tripId);
        if(null == reverseGeocode){
            return "";
            return null;
        }
        AddressComponentsVo[] addressComponentsVos = reverseGeocode.getAddressComponentsVos();
        String[] city = new String[addressComponentsVos.length];
@@ -84,9 +90,9 @@
        }
        List<OpenCity> openCities = openCityMapper.queryByCode(city);
        if(openCities.size() == 0){
            return "";
            return null;
        }
        City city1 = cityService.selectById(openCities.get(0).getCityId());
        return language == 1 ? city1.getChineseName() : language == 2 ? city1.getEnglishName() : city1.getFrenchName();
        return city1;
    }
}