无关风月
2024-11-29 020dc9489974ddb78fbfae945d74cb6ef75922d3
UserZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java
@@ -370,7 +370,19 @@
                            Driver driver = null;
                            int m = 0;
                            int index = 0;
                            // 查询预约单
                            List<Integer> driverIds = drivers.stream().map(Driver::getId).collect(Collectors.toList());
                            List<OrderPrivateCar> orderPrivateCarss = orderPrivateCarMapper.queryOrderByState(driverIds, 2, 1, 2, 3, 4, 5, 6,  11);
                            for(int j = 0; j < drivers.size(); j++){
                                Driver driver1 = drivers.get(j);
                                // 判断该司机是否有30分钟内预约单
                                long count = orderPrivateCarss.stream().filter(orderPrivateCar1 -> driver1.getId().equals(orderPrivateCar1.getDriverId())
                                        && DateUtil.dateToLocalDateTime(orderPrivateCar1.getTravelTime()).minusMinutes(30).isBefore(LocalDateTime.now())
                                        && DateUtil.dateToLocalDateTime(orderPrivateCar1.getTravelTime()).isAfter(LocalDateTime.now())).count();
                                if(count > 0){
                                    continue;
                                }
                                String value = redisUtil.getValue("DRIVER" + drivers.get(j).getId());
                                if(null != value){
//                                Map<String, String> distance1 = gdMapElectricFenceUtil.getDistance(orderPrivateCar.getStartLon() + "," + orderPrivateCar.getStartLat(), value, 0);//计算距离
@@ -429,7 +441,9 @@
//                        orderPrivateCar.setBindId(map.get("bindId"));
//                    }
                    dr.setState(3);
                    if(orderPrivateCar.getOrderType() != 2){
                        dr.setState(3);
                    }
                    driverService.updateById(dr);
                    this.updateById(orderPrivateCar);