From ba6b508a44cb1f0730c6a27a5d73b8d2ae8f1d4b Mon Sep 17 00:00:00 2001 From: puzhibing <393733352@qq.com> Date: 星期二, 19 八月 2025 18:43:47 +0800 Subject: [PATCH] Merge branch 'master' of http://120.76.84.145:10101/gitblit/r/java/QYTDriving --- driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/service/impl/OrderServiceImpl.java | 59 +++++++++++++++++++++++++++++++++++------------------------ 1 files changed, 35 insertions(+), 24 deletions(-) diff --git a/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/service/impl/OrderServiceImpl.java b/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/service/impl/OrderServiceImpl.java index a1d2745..854ddc9 100644 --- a/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/service/impl/OrderServiceImpl.java +++ b/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/service/impl/OrderServiceImpl.java @@ -548,7 +548,7 @@ .eq("state", 2).last(" and surplusQuantity > 0 and now() < endTime and now() < failureTime")); Double d = null; for (YouTuiDriver youTuiDriver : youTuiDrivers) { - String value = redisUtil.getValue("DRIVER" + youTuiDriver.getDriverId()); + String value = redisUtil.getValue("daijia:DRIVER" + youTuiDriver.getDriverId()); if(ToolUtil.isEmpty(value)){ continue; } @@ -602,7 +602,7 @@ Double score = null;//评分 Double d = null; for (Driver driver1 : drivers) { - String value = redisUtil.getValue("DRIVER" + driver1.getId()); + String value = redisUtil.getValue("daijia:DRIVER" + driver1.getId()); if(ToolUtil.isEmpty(value)){ continue; } @@ -729,7 +729,7 @@ return; } for (Driver driver1 : drivers) { - String value = redisUtil.getValue("DRIVER" + driver1.getId()); + String value = redisUtil.getValue("daijia:DRIVER" + driver1.getId()); if (ToolUtil.isEmpty(value)) { continue; } @@ -752,7 +752,7 @@ @Override public List<HallOrderList> queryOrderHall(Integer uid, Integer pageNum, Integer pageSize) throws Exception { pageNum = (pageNum - 1) * pageSize; - String value = redisUtil.getValue("DRIVER" + uid); + String value = redisUtil.getValue("daijia:DRIVER" + uid); List<HallOrderList> hallOrderLists = this.baseMapper.queryOrderHall(pageNum, pageSize); List<HallOrderList> lists = new ArrayList<>(); hallOrderLists.forEach(hallOrderList -> { @@ -990,7 +990,7 @@ if(ToolUtil.isEmpty(orderInfoWarpper.getAvatar())){ orderInfoWarpper.setAvatar("https://csxdj.obs.cn-south-1.myhuaweicloud.com:443/66cc269703a84e4da87fb21e2c21ab1f.png"); } - String value = redisUtil.getValue("DRIVER" + uid); + String value = redisUtil.getValue("daijia:DRIVER" + uid); orderInfoWarpper.setPickUpTime(0); if(ToolUtil.isNotEmpty(value)){ Map<String, Double> distance = GeodesyUtil.getDistance(orderInfoWarpper.getStartLng() + "," + orderInfoWarpper.getStartLat(), value); @@ -999,6 +999,17 @@ Map<String, String> distance1 = MapUtil.getDistance(orderInfoWarpper.getStartLng() + "," + orderInfoWarpper.getStartLat(), value, 0); orderInfoWarpper.setPickUpTime(Integer.valueOf(distance1.get("duration")) / 60); } + + Map<String, String> distance = MapUtil.getDistance(order.getStartLng() + "," + order.getStartLat(), order.getEndLng() + "," + order.getEndLat(), 1); + if(null != distance){ + Double d = Double.valueOf(distance.get("distance")) / 1000; + orderInfoWarpper.setEstimatedMileage(d); + orderInfoWarpper.setEstimatedTime(Double.valueOf(Integer.valueOf(distance.get("duration")) / 60)); + Driver driver = driverService.selectById(uid); + Order orderPrice = getOrderPrice(1, d, 0, order, "", driver.getBranchOfficeId()); + orderInfoWarpper.setEstimatedPrice(orderPrice.getEstimatedPrice()); + } + orderInfoWarpper.setDriverId(order.getDriverId()); return orderInfoWarpper; } @@ -1203,7 +1214,7 @@ return; } Integer driverId = order.getDriverId(); - String value = redisUtil.getValue("DRIVER" + driverId); + String value = redisUtil.getValue("daijia:DRIVER" + driverId); if(order.getState() == 106 || order.getState() == 301){ redisUtil.delSetValue("orderService", orderId.toString()); return; @@ -1250,7 +1261,7 @@ return; } Integer driverId = order.getDriverId(); - String value = redisUtil.getValue("DRIVER" + driverId); + String value = redisUtil.getValue("daijia:DRIVER" + driverId); if(order.getState() == 108 || order.getState() == 111){ redisUtil.delSetValue("orderService_check", orderId.toString()); return; @@ -1538,22 +1549,22 @@ public ResultUtil setOrderStatus(Integer uid, Long orderId, Integer payType, Integer state) throws Exception { try { boolean lock = redisUtil.lock(orderId + "",5); - if(!lock){ - int num1 = 1; - while (num1 <= 10){ - Thread.sleep(3000);//等待3秒 - lock = redisUtil.lock(orderId + "",5); - if(lock){ - break; - }else{ - num1++; - } - } - } - if(!lock){ - redisUtil.unlock(orderId + ""); - return ResultUtil.error("请稍后重试"); - } +// if(!lock){ +// int num1 = 1; +// while (num1 <= 10){ +// Thread.sleep(3000);//等待3秒 +// lock = redisUtil.lock(orderId + "",5); +// if(lock){ +// break; +// }else{ +// num1++; +// } +// } +// } +// if(!lock){ +// redisUtil.unlock(orderId + ""); +// return ResultUtil.error("请稍后重试"); +// } Order order = this.selectById(orderId); if(state == 107 && order.getState() != 106){ @@ -1562,7 +1573,7 @@ } if(state == 108 && order.getState() != 107){ redisUtil.unlock(orderId + ""); - return ResultUtil.error("操作失败,请刷新数据"); +// return ResultUtil.error("操作失败,请刷新数据"); } order.setState(state); -- Gitblit v1.7.1