From a3698ecb84be4192754d7b2092491e727dbccec7 Mon Sep 17 00:00:00 2001 From: Pu Zhibing <393733352@qq.com> Date: 星期五, 27 六月 2025 16:51:02 +0800 Subject: [PATCH] 修改bug --- UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/taxi/service/impl/OrderTaxiServiceImpl.java | 35 +++++++++++++++++------------------ 1 files changed, 17 insertions(+), 18 deletions(-) diff --git a/UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/taxi/service/impl/OrderTaxiServiceImpl.java b/UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/taxi/service/impl/OrderTaxiServiceImpl.java index 0773dcd..364d0d8 100644 --- a/UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/taxi/service/impl/OrderTaxiServiceImpl.java +++ b/UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/taxi/service/impl/OrderTaxiServiceImpl.java @@ -1763,36 +1763,39 @@ public OrderServerWarpper queryOrderServer(Integer orderId, Integer uid) throws Exception { OrderServerWarpper orderServerWarpper = new OrderServerWarpper(); OrderTaxi orderTaxi = this.selectById(orderId); - if(null == orderTaxi){ + if (null == orderTaxi) { return orderServerWarpper; } //计算预计距离和剩余时间 - String value = (String) redisTemplate.opsForValue().get("DRIVER" + String.valueOf(orderTaxi.getDriverId())); - if(null == value || "".equals(value)){ - System.err.println("司机没有上传位置信息"); - - //调用获取轨迹中的数据 - List<Map<String, Object>> list = orderPositionService.queryTrack(orderId, 2); - if(list.size() > 0){ - Map<String, Object> map = list.get(list.size() - 1); - value = map.get("lon") + "," + map.get("lat"); + String value = null; + if (null != orderTaxi.getDriverId()) { + value = (String) redisTemplate.opsForValue().get("DRIVER" + orderTaxi.getDriverId()); + if (null == value || "".equals(value)) { + System.err.println("司机没有上传位置信息"); + + //调用获取轨迹中的数据 + List<Map<String, Object>> list = orderPositionService.queryTrack(orderId, 2); + if (list.size() > 0) { + Map<String, Object> map = list.get(list.size() - 1); + value = map.get("lon") + "," + map.get("lat"); + } } } - + orderServerWarpper.setOrderId(orderTaxi.getId()); orderServerWarpper.setOrderType(2); orderServerWarpper.setState(orderTaxi.getState()); orderServerWarpper.setLon(null != value ? value.split(",")[0] : "0.0"); orderServerWarpper.setLat(null != value ? value.split(",")[1] : "0.0"); orderServerWarpper.setReassignNotice(orderTaxi.getReassignNotice()); - if(orderTaxi.getState() == 2 || orderTaxi.getState() == 3){//前往预约地 + if (orderTaxi.getState() == 2 || orderTaxi.getState() == 3) {//前往预约地 // TODO: 2023/11/4 无法修改 Map<String, String> distance = gdMapElectricFenceUtil.getDistance(value, orderTaxi.getStartLon() + "," + orderTaxi.getStartLat(), 1); String d = "0"; String t = "0"; - if(null == distance){ + if (null == distance) { System.err.println("查询距离出错了"); - }else{ + } else { d = new BigDecimal(distance.get("distance")).divide(new BigDecimal(1000), new MathContext(2, RoundingMode.HALF_EVEN)).toString(); t = new BigDecimal(distance.get("duration")).divide(new BigDecimal(60), new MathContext(2, RoundingMode.HALF_EVEN)).intValue() + ""; } @@ -2090,11 +2093,7 @@ } Company query = companyCityService.query(String.valueOf(orderTaxi.getStartLon()), String.valueOf(orderTaxi.getStartLat()));//获取起点所属分公司 List<PushOrder> querys = pushOrderService.querys(null, 2, query.getId());//获取需要推送的次数 - boolean b = false; for (int i = 1; i <= querys.size(); i++) { - if (b) { - break; - } PushOrder pushOrder = pushOrderService.querys(i, 2, query.getId()).get(0); System.out.println("pushOrder:" + pushOrder); //获取空闲司机 -- Gitblit v1.7.1