puzhibing
2023-07-21 36308c7c782fcf5ad2cbf3674336552556246e12
更新用户端接口
1个文件已修改
33 ■■■■■ 已修改文件
UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java 33 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java
@@ -1736,6 +1736,8 @@
        OrderPrivateCar orderPrivateCar = this.selectById(orderId);
        //计算预计距离和剩余时间
        String value = redisUtil.getValue("DRIVER" + String.valueOf(orderPrivateCar.getDriverId()));
        String d = "0";
        String t = "0";
        if(null == value || "".equals(value)){
            System.err.println("司机没有上传位置信息");
@@ -1757,19 +1759,24 @@
                }
            }
        }
        String lnt = (null != value ? value.split(",")[0] : "0.0");
        String lat = (null != value ? value.split(",")[1] : "0.0");
        DistancematrixVo distancematrix = GoogleMapUtil.getDistancematrix(orderPrivateCar.getStartLat(), orderPrivateCar.getStartLon(), Double.valueOf(lat), Double.valueOf(lnt));
        String d = "0";
        String t = "0";
        if(null == distancematrix){
            System.err.println("查询距离出错了");
        }else if(distancematrix.getDistance() == 0){
            System.err.println("未获取到有效的距离");
        }else{
            d = new BigDecimal(distancematrix.getDistance()).divide(new BigDecimal(1000), new MathContext(2, RoundingMode.HALF_EVEN)).toString();
            t = new BigDecimal(distancematrix.getDuration()).divide(new BigDecimal(60), new MathContext(2, RoundingMode.HALF_EVEN)).intValue() + "";
        String lnt = "0";
        String lat = "0";
        if(ToolUtil.isNotEmpty(value)){
            lnt = value.split(",")[0];
            lat = value.split(",")[1];
            DistancematrixVo distancematrix = GoogleMapUtil.getDistancematrix(orderPrivateCar.getStartLat(), orderPrivateCar.getStartLon(), Double.valueOf(lat), Double.valueOf(lnt));
            if(null == distancematrix){
                System.err.println("查询距离出错了");
            }else if(distancematrix.getDistance() == 0){
                System.err.println("未获取到有效的距离");
            }else{
                d = new BigDecimal(distancematrix.getDistance()).divide(new BigDecimal(1000), new MathContext(2, RoundingMode.HALF_EVEN)).toString();
                t = new BigDecimal(distancematrix.getDuration()).divide(new BigDecimal(60), new MathContext(2, RoundingMode.HALF_EVEN)).intValue() + "";
            }
        }
        OrderServerWarpper orderServerWarpper = new OrderServerWarpper();
        orderServerWarpper.setOrderId(orderPrivateCar.getId());
        orderServerWarpper.setOrderType(1);
@@ -1786,7 +1793,7 @@
            orderServerWarpper.setLaveTime("0");
        }
        if(orderPrivateCar.getState() == 5 || orderPrivateCar.getState() == 6){//服务中
            distancematrix = GoogleMapUtil.getDistancematrix(Double.valueOf(lat), Double.valueOf(lnt), orderPrivateCar.getEndLat(), orderPrivateCar.getEndLon());
            DistancematrixVo distancematrix = GoogleMapUtil.getDistancematrix(Double.valueOf(lat), Double.valueOf(lnt), orderPrivateCar.getEndLat(), orderPrivateCar.getEndLon());
            if(null == distancematrix){
                System.err.println("查询距离出错了");
            }else if(distancematrix.getDistance() == 0){