zhibing.pu
2024-08-27 7ae343fc7761a3b5535716ff07a82e5d571d60e8
DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/GoogleMap/GoogleMapUtil.java
@@ -4,6 +4,7 @@
import com.google.gson.GsonBuilder;
import com.google.maps.*;
import com.google.maps.model.*;
import com.stylefeng.guns.core.util.ToolUtil;
/**
 * 谷歌地图工具类
@@ -46,11 +47,14 @@
     * @return
     * @throws Exception
     */
    public static ReverseGeocodeVo getReverseGeocode(double lat, double lng) throws Exception{
    public static ReverseGeocodeVo getReverseGeocode(double lat, double lng, String tripId) throws Exception{
        GeoApiContext context = new GeoApiContext.Builder()
                .apiKey(key)
                .build();
        GeocodingApiRequest request = GeocodingApi.reverseGeocode(context, new LatLng(lat, lng));
        if(ToolUtil.isNotEmpty(tripId)){
            request.header("X-Goog-Maps-Experience-ID", tripId);//行程id
        }
        GeocodingResult[] results = request.await();
        ReverseGeocodeVo vo = null;
        if(results.length > 0){
@@ -179,7 +183,7 @@
     * @return
     * @throws Exception
     */
    public static DistancematrixVo getDistancematrix(Double sLat, Double sLnt, Double eLat, Double eLnt) throws Exception{
    public static DistancematrixVo getDistancematrix(Double sLat, Double sLnt, Double eLat, Double eLnt, String tripId) throws Exception{
        GeoApiContext context = new GeoApiContext.Builder()
                .apiKey(key)
                .build();
@@ -187,6 +191,9 @@
        request.origins(new LatLng(sLat, sLnt));
        request.destinations(new LatLng(eLat, eLnt));
        request.mode(TravelMode.DRIVING);//出行方式(驾车)
        if(ToolUtil.isNotEmpty(tripId)){
            request.header("X-Goog-Maps-Experience-ID", tripId);//行程id
        }
        DistanceMatrix distanceMatrix = request.await();
        Gson gson = new GsonBuilder().setPrettyPrinting().create();
        System.out.println(gson.toJson(distanceMatrix));
@@ -227,12 +234,6 @@
    public static void main(String[] ages){
        try {
        } catch (Exception e) {
            e.printStackTrace();
        }
    }