From 201ad1316d0797395c59fafcb1fdf69dd044001b Mon Sep 17 00:00:00 2001
From: liujie <1793218484@qq.com>
Date: 星期二, 10 三月 2026 11:20:25 +0800
Subject: [PATCH] 修改bug

---
 xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/utils/TaskOrderUtil.java |  710 ++++++++++++++++++++++++++++++----------------------------
 1 files changed, 366 insertions(+), 344 deletions(-)

diff --git a/xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/utils/TaskOrderUtil.java b/xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/utils/TaskOrderUtil.java
index 7802084..a5b1616 100644
--- a/xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/utils/TaskOrderUtil.java
+++ b/xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/utils/TaskOrderUtil.java
@@ -160,7 +160,7 @@
         // 第一轮推单
         log.info("开始第一轮推单 {}", orderNo);
         Boolean processed = processPushOrder(quoteName, count, sleepTime, uid, split, orderNo, xpTradingStrategy, onePushDistance, distance, duration, planRule);
-        if(processed){
+        if (processed) {
             log.info("订单推送成功 {}", orderNo);
             return;
         }
@@ -170,7 +170,7 @@
         count = twoPushTime / sleepTime;
         log.info("开始第二轮推单 {}", orderNo);
         processed = processPushOrder(quoteName, count, sleepTime, uid, split, orderNo, xpTradingStrategy, twoPushDistance, distance, duration, planRule);
-        if(processed){
+        if (processed) {
             log.info("订单推送成功 {}", orderNo);
             return;
         }
@@ -181,7 +181,7 @@
         count = threePushTime / sleepTime;
         log.info("开始第三轮推单 {}", orderNo);
         processed = processPushOrder(quoteName, count, sleepTime, uid, split, orderNo, xpTradingStrategy, threePushDistance, distance, duration, planRule);
-        if(processed){
+        if (processed) {
             log.info("订单推送成功 {}", orderNo);
             return;
         }
@@ -192,7 +192,7 @@
         count = fourPushTime / sleepTime;
         log.info("开始第四轮推单 {}", orderNo);
         processed = processPushOrder(quoteName, count, sleepTime, uid, split, orderNo, xpTradingStrategy, fourPushDistance, distance, duration, planRule);
-        if(processed){
+        if (processed) {
             log.info("订单推送成功 {}", orderNo);
             return;
         }
@@ -203,7 +203,7 @@
         count = fivePushTime / sleepTime;
         log.info("开始第五轮推单 {}", orderNo);
         processed = processPushOrder(quoteName, count, sleepTime, uid, split, orderNo, xpTradingStrategy, fivePushDistance, distance, duration, planRule);
-        if(processed){
+        if (processed) {
             log.info("订单推送成功 {}", orderNo);
             return;
         }
@@ -222,7 +222,7 @@
                 xpPushMessageClient.sendStatus(dto);
                 //将订单从队列中移除
                 log.info("五轮推单结束,无车辆接单,执行队列移除订单 {}", orderNo);
-                redisService.popFirstElement(quoteName);
+                redisService.removeByPattern(quoteName,xpOrder.getOrderNumber());
             }
         }
 
@@ -253,8 +253,8 @@
             return true;
         }
         XpOrder xpOrder = xpOrderR.getData();
-        if(xpOrder.getStatus()==0){
-            redisService.removeByPattern(quoteName,xpOrder.getOrderNumber());
+        if (xpOrder.getStatus() == 0) {
+            redisService.removeByPattern(quoteName, xpOrder.getOrderNumber());
         }
 
         // 找出围栏id
@@ -305,253 +305,77 @@
                     // 时间价值
                     Integer tendencyTime = xpTradingStrategy.getTendencyTime();
 
+                    try {
 
-                    // 电量价值
-                    Integer tendencyElectricity = xpTradingStrategy.getTendencyElectricity();
-                    // 找出最大的值是那个
-                    Integer max = Math.max(tendencyOrderValue, Math.max(tendencyDistance, Math.max(tendencyTime, tendencyElectricity)));
-                    if (max.equals(tendencyOrderValue)) {
-                        // 订单价值
-                        // 时间差权重
-                        Integer weightTimeDifference = xpTradingStrategy.getWeightTimeDifference();
-                        // 距离差权重
-                        Integer weightDistanceDifference = xpTradingStrategy.getWeightDistanceDifference();
-                        // 距离权重
-                        Integer weightDistance = xpTradingStrategy.getWeightDistance();
-                        // 时间权重
-                        Integer weightTime = xpTradingStrategy.getWeightTime();
-                        // 电量权重
-                        Integer weightElectricity = xpTradingStrategy.getWeightElectricity();
-
+                        // 电量价值
+                        Integer tendencyElectricity = xpTradingStrategy.getTendencyElectricity();
                         // 找出最大的值是那个
-                        Integer max1 = Math.max(weightTimeDifference, Math.max(weightDistanceDifference, Math.max(weightDistance, Math.max(weightTime, weightElectricity))));
+                        Integer max = Math.max(tendencyOrderValue, Math.max(tendencyDistance, Math.max(tendencyTime, tendencyElectricity)));
+                        if (max.equals(tendencyOrderValue)) {
+                            // 订单价值
+                            // 时间差权重
+                            Integer weightTimeDifference = xpTradingStrategy.getWeightTimeDifference();
+                            // 距离差权重
+                            Integer weightDistanceDifference = xpTradingStrategy.getWeightDistanceDifference();
+                            // 距离权重
+                            Integer weightDistance = xpTradingStrategy.getWeightDistance();
+                            // 时间权重
+                            Integer weightTime = xpTradingStrategy.getWeightTime();
+                            // 电量权重
+                            Integer weightElectricity = xpTradingStrategy.getWeightElectricity();
 
-                        //  时间差
-                        if (max1.equals(weightTimeDifference)) {
-                            for (VehiclePositionVo vehiclePosition : availableVehiclesNearby) {
-                                RouteAndFareDto routeAndFareDto = new RouteAndFareDto();
-                                LonLatDto lonLatDto = new LonLatDto();
-                                lonLatDto.setLongitude(vehiclePosition.getPoint().getX());
-                                lonLatDto.setLatitude(vehiclePosition.getPoint().getY());
-                                routeAndFareDto.setOrigin(lonLatDto);
-                                LonLatDto lonLatDto1 = new LonLatDto();
-                                lonLatDto1.setLongitude(Double.valueOf(split[0]));
-                                lonLatDto1.setLatitude(Double.valueOf(split[1]));
-                                routeAndFareDto.setDestination(lonLatDto1);
-                                routeAndFareDto.setRoutePlanRule(Integer.valueOf(planRule));
-                                R<RouteVo> distanceAndDuration = xpMapClient.getDistanceAndDuration(routeAndFareDto);
-                                if (distanceAndDuration.getCode() == 200) {
-                                    // 送驾- 接驾
-                                    Integer durationDifference = Integer.parseInt(duration) - distanceAndDuration.getData().getDuration();
-                                    vehiclePosition.setTimeDifference(durationDifference);
-                                }
-                            }
-                        }
+                            // 找出最大的值是那个
+                            Integer max1 = Math.max(weightTimeDifference, Math.max(weightDistanceDifference, Math.max(weightDistance, Math.max(weightTime, weightElectricity))));
 
-                        if (max1.equals(weightDistanceDifference)) {
-                            for (VehiclePositionVo vehiclePosition : availableVehiclesNearby) {
-                                RouteAndFareDto routeAndFareDto = new RouteAndFareDto();
-                                LonLatDto lonLatDto = new LonLatDto();
-                                lonLatDto.setLongitude(vehiclePosition.getPoint().getX());
-                                lonLatDto.setLatitude(vehiclePosition.getPoint().getY());
-                                routeAndFareDto.setOrigin(lonLatDto);
-                                LonLatDto lonLatDto1 = new LonLatDto();
-                                lonLatDto1.setLongitude(Double.valueOf(split[0]));
-                                lonLatDto1.setLatitude(Double.valueOf(split[1]));
-                                routeAndFareDto.setDestination(lonLatDto1);
-                                routeAndFareDto.setRoutePlanRule(Integer.valueOf(planRule));
-                                R<RouteVo> distanceAndDuration = xpMapClient.getDistanceAndDuration(routeAndFareDto);
-                                if (distanceAndDuration.getCode() == 200) {
-                                    // 送驾- 接驾
-                                    Integer distanceDifference = Integer.parseInt(distance) - distanceAndDuration.getData().getDistance();
-                                    vehiclePosition.setDistanceDifference(distanceDifference);
+                            //  时间差
+                            if (max1.equals(weightTimeDifference)) {
+                                for (VehiclePositionVo vehiclePosition : availableVehiclesNearby) {
+                                    RouteAndFareDto routeAndFareDto = new RouteAndFareDto();
+                                    LonLatDto lonLatDto = new LonLatDto();
+                                    lonLatDto.setLongitude(vehiclePosition.getPoint().getX());
+                                    lonLatDto.setLatitude(vehiclePosition.getPoint().getY());
+                                    routeAndFareDto.setOrigin(lonLatDto);
+                                    LonLatDto lonLatDto1 = new LonLatDto();
+                                    lonLatDto1.setLongitude(Double.valueOf(split[0]));
+                                    lonLatDto1.setLatitude(Double.valueOf(split[1]));
+                                    routeAndFareDto.setDestination(lonLatDto1);
+                                    if(planRule!=null&& !"null".equals(planRule)){
+                                        routeAndFareDto.setRoutePlanRule(Integer.valueOf(planRule));
+                                    }
+                                    R<RouteVo> distanceAndDuration = xpMapClient.getDistanceAndDuration(routeAndFareDto);
+                                    if (distanceAndDuration.getCode() == 200) {
+                                        // 送驾- 接驾
+                                        Integer durationDifference = Integer.parseInt(duration) - distanceAndDuration.getData().getDuration();
+                                        vehiclePosition.setTimeDifference(durationDifference);
+                                    }
                                 }
                             }
 
-                        }
-
-                        if (max1.equals(weightDistance)) {
-                            for (VehiclePositionVo vehiclePosition : availableVehiclesNearby) {
-                                RouteAndFareDto routeAndFareDto = new RouteAndFareDto();
-                                LonLatDto lonLatDto = new LonLatDto();
-                                lonLatDto.setLongitude(vehiclePosition.getPoint().getX());
-                                lonLatDto.setLatitude(vehiclePosition.getPoint().getY());
-                                routeAndFareDto.setOrigin(lonLatDto);
-                                LonLatDto lonLatDto1 = new LonLatDto();
-                                lonLatDto1.setLongitude(Double.parseDouble(split[0]));
-                                lonLatDto1.setLatitude(Double.parseDouble(split[1]));
-
-                                routeAndFareDto.setRoutePlanRule(Integer.valueOf(planRule));
-                                routeAndFareDto.setDestination(lonLatDto1);
-                                //  调用地图 获取时间
-                                R<RouteVo> r = xpMapClient.getDistanceAndDuration(routeAndFareDto);
-                                if (r.getCode() == 200) {
-                                    vehiclePosition.setDistance(Double.valueOf(r.getData().getDistance()));
-                                } else {
-                                    vehiclePosition.setDistance(0.0);
+                            if (max1.equals(weightDistanceDifference)) {
+                                for (VehiclePositionVo vehiclePosition : availableVehiclesNearby) {
+                                    RouteAndFareDto routeAndFareDto = new RouteAndFareDto();
+                                    LonLatDto lonLatDto = new LonLatDto();
+                                    lonLatDto.setLongitude(vehiclePosition.getPoint().getX());
+                                    lonLatDto.setLatitude(vehiclePosition.getPoint().getY());
+                                    routeAndFareDto.setOrigin(lonLatDto);
+                                    LonLatDto lonLatDto1 = new LonLatDto();
+                                    lonLatDto1.setLongitude(Double.valueOf(split[0]));
+                                    lonLatDto1.setLatitude(Double.valueOf(split[1]));
+                                    routeAndFareDto.setDestination(lonLatDto1);
+                                    if(planRule!=null&& !"null".equals(planRule)){
+                                        routeAndFareDto.setRoutePlanRule(Integer.valueOf(planRule));
+                                    }
+                                    R<RouteVo> distanceAndDuration = xpMapClient.getDistanceAndDuration(routeAndFareDto);
+                                    if (distanceAndDuration.getCode() == 200) {
+                                        // 送驾- 接驾
+                                        Integer distanceDifference = Integer.parseInt(distance) - distanceAndDuration.getData().getDistance();
+                                        vehiclePosition.setDistanceDifference(distanceDifference);
+                                    }
                                 }
+
                             }
-                        }
 
-                        if (max1.equals(weightTime)) {
-                            for (VehiclePositionVo vehiclePosition : availableVehiclesNearby) {
-                                RouteAndFareDto routeAndFareDto = new RouteAndFareDto();
-                                LonLatDto lonLatDto = new LonLatDto();
-                                lonLatDto.setLongitude(vehiclePosition.getPoint().getX());
-                                lonLatDto.setLatitude(vehiclePosition.getPoint().getY());
-                                routeAndFareDto.setOrigin(lonLatDto);
-                                LonLatDto lonLatDto1 = new LonLatDto();
-                                lonLatDto1.setLongitude(Double.parseDouble(split[0]));
-                                lonLatDto1.setLatitude(Double.parseDouble(split[1]));
-
-                                routeAndFareDto.setRoutePlanRule(Integer.valueOf(planRule));
-                                routeAndFareDto.setDestination(lonLatDto1);
-                                //  调用地图 获取时间
-                                R<RouteVo> r = xpMapClient.getDistanceAndDuration(routeAndFareDto);
-                                if (r.getCode() == 200) {
-                                    vehiclePosition.setSecond(r.getData().getDuration());
-                                } else {
-                                    vehiclePosition.setSecond(0);
-                                }
-                            }
-                        }
-
-                        if (max1.equals(weightElectricity)) {
-                            // 计算车的分数  分数最大是车的size
-                            availableVehiclesNearby = availableVehiclesNearby.stream().sorted(Comparator.comparing(VehiclePositionVo::getCurrentElectricity).reversed()).collect(Collectors.toList());
-                            int size = tendencyElectricity;
-                            // 做比对的分数
-                            int temp = availableVehiclesNearby.get(0).getCurrentElectricity();
-                            for (VehiclePositionVo vehiclePosition : availableVehiclesNearby) {
-                                vehiclePosition.setCurrentElectricityScore(vehiclePosition.getCurrentElectricityScore() + size);
-                                if (temp != vehiclePosition.getCurrentElectricity()) {
-                                    size--;
-                                }
-                            }
-                        }
-
-
-                        // 算出总分 再来排序计算
-                        for (VehiclePositionVo vehiclePositionVo : availableVehiclesNearby) {
-                            vehiclePositionVo.setOrderValueTotal(vehiclePositionVo.getCurrentElectricityScore() + vehiclePositionVo.getDistanceScore() + vehiclePositionVo.getTimeScore() + vehiclePositionVo.getDistanceDifference() + vehiclePositionVo.getTimeDifference());
-                        }
-                        availableVehiclesNearby = availableVehiclesNearby.stream().sorted(Comparator.comparing(VehiclePositionVo::getOrderValueTotal).reversed()).collect(Collectors.toList());
-
-
-                        int size = tendencyOrderValue;
-                        // 做比对的分数
-                        double temp = availableVehiclesNearby.get(0).getOrderValueTotal();
-                        for (VehiclePositionVo vehiclePosition : availableVehiclesNearby) {
-                            vehiclePosition.setValueScore(vehiclePosition.getValueScore() + size);
-                            if (temp != vehiclePosition.getOrderValueTotal()) {
-                                size--;
-                            }
-                        }
-
-
-                    }
-
-                    // 距离分数
-                    if (max.equals(tendencyDistance)) {
-                        for (VehiclePositionVo vehiclePosition : availableVehiclesNearby) {
-                            RouteAndFareDto routeAndFareDto = new RouteAndFareDto();
-                            LonLatDto lonLatDto = new LonLatDto();
-                            lonLatDto.setLongitude(vehiclePosition.getPoint().getX());
-                            lonLatDto.setLatitude(vehiclePosition.getPoint().getY());
-                            routeAndFareDto.setOrigin(lonLatDto);
-                            LonLatDto lonLatDto1 = new LonLatDto();
-                            lonLatDto1.setLongitude(Double.parseDouble(split[0]));
-                            lonLatDto1.setLatitude(Double.parseDouble(split[1]));
-
-                            routeAndFareDto.setRoutePlanRule(Integer.valueOf(planRule));
-                            routeAndFareDto.setDestination(lonLatDto1);
-                            //  调用地图 获取时间
-                            R<RouteVo> r = xpMapClient.getDistanceAndDuration(routeAndFareDto);
-                            if (r.getCode() == 200) {
-                                vehiclePosition.setDistance(Double.valueOf(r.getData().getDistance()));
-                            } else {
-                                vehiclePosition.setDistance(0.0);
-                            }
-                        }
-                        availableVehiclesNearby = availableVehiclesNearby.stream().sorted(Comparator.comparing(VehiclePositionVo::getDistance)).collect(Collectors.toList());
-                        int size = tendencyDistance;
-                        // 做比对的分数
-                        double temp = availableVehiclesNearby.get(0).getDistance();
-                        for (VehiclePositionVo vehiclePosition : availableVehiclesNearby) {
-                            vehiclePosition.setDistanceScore(vehiclePosition.getDistanceScore() + size);
-                            if (temp != vehiclePosition.getDistance()) {
-                                size--;
-                            }
-                        }
-                    }
-
-
-                    // 时间分数
-                    if (max.equals(tendencyTime)) {
-                        for (VehiclePositionVo vehiclePosition : availableVehiclesNearby) {
-                            RouteAndFareDto routeAndFareDto = new RouteAndFareDto();
-                            LonLatDto lonLatDto = new LonLatDto();
-                            lonLatDto.setLongitude(vehiclePosition.getPoint().getX());
-                            lonLatDto.setLatitude(vehiclePosition.getPoint().getY());
-                            routeAndFareDto.setOrigin(lonLatDto);
-                            LonLatDto lonLatDto1 = new LonLatDto();
-                            lonLatDto1.setLongitude(Double.parseDouble(split[0]));
-                            lonLatDto1.setLatitude(Double.parseDouble(split[1]));
-
-                            routeAndFareDto.setRoutePlanRule(Integer.valueOf(planRule));
-                            routeAndFareDto.setDestination(lonLatDto1);
-                            //  调用地图 获取时间
-                            R<RouteVo> r = xpMapClient.getDistanceAndDuration(routeAndFareDto);
-                            if (r.getCode() == 200) {
-                                vehiclePosition.setSecond(r.getData().getDuration());
-                            } else {
-                                vehiclePosition.setSecond(0);
-                            }
-                        }
-                        availableVehiclesNearby = availableVehiclesNearby.stream().sorted(Comparator.comparing(VehiclePositionVo::getSecond)).collect(Collectors.toList());
-                        int size = tendencyTime;
-                        // 做比对的分数
-                        double temp = availableVehiclesNearby.get(0).getSecond();
-                        for (VehiclePositionVo vehiclePosition : availableVehiclesNearby) {
-                            vehiclePosition.setTimeScore(vehiclePosition.getTimeScore() + size);
-                            if (temp != vehiclePosition.getSecond()) {
-                                size--;
-                            }
-                        }
-
-                    }
-
-
-                    // 电量分数
-                    if (max.equals(tendencyElectricity)) {
-                        // 计算车的分数  分数最大是车的size
-                        availableVehiclesNearby = availableVehiclesNearby.stream().sorted(Comparator.comparing(VehiclePositionVo::getCurrentElectricity).reversed()).collect(Collectors.toList());
-                        int size = tendencyElectricity;
-                        // 做比对的分数
-                        int temp = availableVehiclesNearby.get(0).getCurrentElectricity();
-
-                        int maxTemp = 0;
-                        for (VehiclePositionVo vehiclePosition : availableVehiclesNearby) {
-                            vehiclePosition.setCurrentElectricityScore(vehiclePosition.getCurrentElectricityScore() + size);
-                            if (temp != vehiclePosition.getCurrentElectricity()) {
-                                size--;
-                            } else {
-                                maxTemp++;
-                            }
-                        }
-
-                        if (maxTemp > 1) {
-                            // 证明有最高相同电量的  找下一个
-                            // 找出最第二大的值是那个
-                            // 将四个值放入列表
-                            List<Integer> values = Arrays.asList(tendencyOrderValue, tendencyDistance, tendencyTime);
-                            // 降序排序
-                            values.sort(Collections.reverseOrder());
-                            // 获取第二大值
-                            Integer secondMax = values.get(1);
-
-                            // 判断第二大的是哪个
-                            if (Objects.equals(secondMax, tendencyDistance)) {
+                            if (max1.equals(weightDistance)) {
                                 for (VehiclePositionVo vehiclePosition : availableVehiclesNearby) {
                                     RouteAndFareDto routeAndFareDto = new RouteAndFareDto();
                                     LonLatDto lonLatDto = new LonLatDto();
@@ -561,8 +385,9 @@
                                     LonLatDto lonLatDto1 = new LonLatDto();
                                     lonLatDto1.setLongitude(Double.parseDouble(split[0]));
                                     lonLatDto1.setLatitude(Double.parseDouble(split[1]));
-
-                                    routeAndFareDto.setRoutePlanRule(Integer.valueOf(planRule));
+                                    if(planRule!=null&& !"null".equals(planRule)){
+                                        routeAndFareDto.setRoutePlanRule(Integer.valueOf(planRule));
+                                    }
                                     routeAndFareDto.setDestination(lonLatDto1);
                                     //  调用地图 获取时间
                                     R<RouteVo> r = xpMapClient.getDistanceAndDuration(routeAndFareDto);
@@ -572,20 +397,9 @@
                                         vehiclePosition.setDistance(0.0);
                                     }
                                 }
-                                availableVehiclesNearby = availableVehiclesNearby.stream().sorted(Comparator.comparing(VehiclePositionVo::getDistance)).collect(Collectors.toList());
-                                int size1 = tendencyDistance;
-                                // 做比对的分数
-                                double temp1 = availableVehiclesNearby.get(0).getDistance();
-                                for (VehiclePositionVo vehiclePosition : availableVehiclesNearby) {
-                                    vehiclePosition.setDistanceScore(vehiclePosition.getDistanceScore() + size1);
-                                    if (temp1 != vehiclePosition.getDistance()) {
-                                        size1--;
-                                    }
-                                }
                             }
 
-
-                            if (Objects.equals(secondMax, tendencyTime)) {
+                            if (max1.equals(weightTime)) {
                                 for (VehiclePositionVo vehiclePosition : availableVehiclesNearby) {
                                     RouteAndFareDto routeAndFareDto = new RouteAndFareDto();
                                     LonLatDto lonLatDto = new LonLatDto();
@@ -595,8 +409,9 @@
                                     LonLatDto lonLatDto1 = new LonLatDto();
                                     lonLatDto1.setLongitude(Double.parseDouble(split[0]));
                                     lonLatDto1.setLatitude(Double.parseDouble(split[1]));
-
-                                    routeAndFareDto.setRoutePlanRule(Integer.valueOf(planRule));
+                                    if(planRule!=null&& !"null".equals(planRule)){
+                                        routeAndFareDto.setRoutePlanRule(Integer.valueOf(planRule));
+                                    }
                                     routeAndFareDto.setDestination(lonLatDto1);
                                     //  调用地图 获取时间
                                     R<RouteVo> r = xpMapClient.getDistanceAndDuration(routeAndFareDto);
@@ -606,81 +421,148 @@
                                         vehiclePosition.setSecond(0);
                                     }
                                 }
-                                availableVehiclesNearby = availableVehiclesNearby.stream().sorted(Comparator.comparing(VehiclePositionVo::getSecond)).collect(Collectors.toList());
-                                int size1 = tendencyTime;
+                            }
+
+                            if (max1.equals(weightElectricity)) {
+                                // 计算车的分数  分数最大是车的size
+                                availableVehiclesNearby = availableVehiclesNearby.stream().sorted(Comparator.comparing(VehiclePositionVo::getCurrentElectricity).reversed()).collect(Collectors.toList());
+                                int size = tendencyElectricity;
                                 // 做比对的分数
-                                double temp1 = availableVehiclesNearby.get(0).getSecond();
+                                int temp = availableVehiclesNearby.get(0).getCurrentElectricity();
                                 for (VehiclePositionVo vehiclePosition : availableVehiclesNearby) {
-                                    vehiclePosition.setTimeScore(vehiclePosition.getTimeScore() + size1);
-                                    if (temp1 != vehiclePosition.getSecond()) {
-                                        size1--;
+                                    vehiclePosition.setCurrentElectricityScore(vehiclePosition.getCurrentElectricityScore() + size);
+                                    if (temp != vehiclePosition.getCurrentElectricity()) {
+                                        size--;
                                     }
                                 }
                             }
 
 
-                            // 订单价值
-                            if (Objects.equals(secondMax, tendencyOrderValue)) {
-                                // 订单价值
-                                // 时间差权重
-                                Integer weightTimeDifference = xpTradingStrategy.getWeightTimeDifference();
-                                // 距离差权重
-                                Integer weightDistanceDifference = xpTradingStrategy.getWeightDistanceDifference();
-                                // 距离权重
-                                Integer weightDistance = xpTradingStrategy.getWeightDistance();
-                                // 时间权重
-                                Integer weightTime = xpTradingStrategy.getWeightTime();
-                                // 电量权重
-                                Integer weightElectricity = xpTradingStrategy.getWeightElectricity();
+                            // 算出总分 再来排序计算
+                            for (VehiclePositionVo vehiclePositionVo : availableVehiclesNearby) {
+                                vehiclePositionVo.setOrderValueTotal(vehiclePositionVo.getCurrentElectricityScore() + vehiclePositionVo.getDistanceScore() + vehiclePositionVo.getTimeScore() + vehiclePositionVo.getDistanceDifference() + vehiclePositionVo.getTimeDifference()+vehiclePositionVo.getSecond()+vehiclePositionVo.getDistance().intValue());
+                            }
+                            availableVehiclesNearby = availableVehiclesNearby.stream().sorted(Comparator.comparing(VehiclePositionVo::getOrderValueTotal).reversed()).collect(Collectors.toList());
 
-                                // 找出最大的值是那个
-                                Integer max1 = Math.max(weightTimeDifference, Math.max(weightDistanceDifference, Math.max(weightDistance, Math.max(weightTime, weightElectricity))));
 
-                                //  时间差
-                                if (max1.equals(weightTimeDifference)) {
-                                    for (VehiclePositionVo vehiclePosition : availableVehiclesNearby) {
-                                        RouteAndFareDto routeAndFareDto = new RouteAndFareDto();
-                                        LonLatDto lonLatDto = new LonLatDto();
-                                        lonLatDto.setLongitude(vehiclePosition.getPoint().getX());
-                                        lonLatDto.setLatitude(vehiclePosition.getPoint().getY());
-                                        routeAndFareDto.setOrigin(lonLatDto);
-                                        LonLatDto lonLatDto1 = new LonLatDto();
-                                        lonLatDto1.setLongitude(Double.valueOf(split[0]));
-                                        lonLatDto1.setLatitude(Double.valueOf(split[1]));
-                                        routeAndFareDto.setDestination(lonLatDto1);
-                                        routeAndFareDto.setRoutePlanRule(Integer.valueOf(planRule));
-                                        R<RouteVo> distanceAndDuration = xpMapClient.getDistanceAndDuration(routeAndFareDto);
-                                        if (distanceAndDuration.getCode() == 200) {
-                                            // 送驾- 接驾
-                                            Integer durationDifference = Integer.parseInt(duration) - distanceAndDuration.getData().getDuration();
-                                            vehiclePosition.setTimeDifference(durationDifference);
-                                        }
-                                    }
+                            int size = tendencyOrderValue;
+                            // 做比对的分数
+                            double temp = availableVehiclesNearby.get(0).getOrderValueTotal();
+                            for (VehiclePositionVo vehiclePosition : availableVehiclesNearby) {
+                                vehiclePosition.setValueScore(vehiclePosition.getValueScore() + size);
+                                if (temp != vehiclePosition.getOrderValueTotal()) {
+                                    size--;
                                 }
+                            }
 
-                                if (max1.equals(weightDistanceDifference)) {
-                                    for (VehiclePositionVo vehiclePosition : availableVehiclesNearby) {
-                                        RouteAndFareDto routeAndFareDto = new RouteAndFareDto();
-                                        LonLatDto lonLatDto = new LonLatDto();
-                                        lonLatDto.setLongitude(vehiclePosition.getPoint().getX());
-                                        lonLatDto.setLatitude(vehiclePosition.getPoint().getY());
-                                        routeAndFareDto.setOrigin(lonLatDto);
-                                        LonLatDto lonLatDto1 = new LonLatDto();
-                                        lonLatDto1.setLongitude(Double.valueOf(split[0]));
-                                        lonLatDto1.setLatitude(Double.valueOf(split[1]));
-                                        routeAndFareDto.setDestination(lonLatDto1);
-                                        routeAndFareDto.setRoutePlanRule(Integer.valueOf(planRule));
-                                        R<RouteVo> distanceAndDuration = xpMapClient.getDistanceAndDuration(routeAndFareDto);
-                                        if (distanceAndDuration.getCode() == 200) {
-                                            // 送驾- 接驾
-                                            Integer distanceDifference = Integer.parseInt(distance) - distanceAndDuration.getData().getDistance();
-                                            vehiclePosition.setDistanceDifference(distanceDifference);
-                                        }
-                                    }
 
+                        }
+
+                        // 距离分数
+                        if (max.equals(tendencyDistance)) {
+                            for (VehiclePositionVo vehiclePosition : availableVehiclesNearby) {
+                                RouteAndFareDto routeAndFareDto = new RouteAndFareDto();
+                                LonLatDto lonLatDto = new LonLatDto();
+                                lonLatDto.setLongitude(vehiclePosition.getPoint().getX());
+                                lonLatDto.setLatitude(vehiclePosition.getPoint().getY());
+                                routeAndFareDto.setOrigin(lonLatDto);
+                                LonLatDto lonLatDto1 = new LonLatDto();
+                                lonLatDto1.setLongitude(Double.parseDouble(split[0]));
+                                lonLatDto1.setLatitude(Double.parseDouble(split[1]));
+
+                                if(planRule!=null&& !"null".equals(planRule)){
+                                    routeAndFareDto.setRoutePlanRule(Integer.valueOf(planRule));
                                 }
+                                routeAndFareDto.setDestination(lonLatDto1);
+                                //  调用地图 获取时间
+                                R<RouteVo> r = xpMapClient.getDistanceAndDuration(routeAndFareDto);
+                                if (r.getCode() == 200) {
+                                    vehiclePosition.setDistance(Double.valueOf(r.getData().getDistance()));
+                                } else {
+                                    vehiclePosition.setDistance(0.0);
+                                }
+                            }
+                            availableVehiclesNearby = availableVehiclesNearby.stream().sorted(Comparator.comparing(VehiclePositionVo::getDistance)).collect(Collectors.toList());
+                            int size = tendencyDistance;
+                            // 做比对的分数
+                            double temp = availableVehiclesNearby.get(0).getDistance();
+                            for (VehiclePositionVo vehiclePosition : availableVehiclesNearby) {
+                                vehiclePosition.setDistanceScore(vehiclePosition.getDistanceScore() + size);
+                                if (temp != vehiclePosition.getDistance()) {
+                                    size--;
+                                }
+                            }
+                        }
 
-                                if (max1.equals(weightDistance)) {
+
+                        // 时间分数
+                        if (max.equals(tendencyTime)) {
+                            for (VehiclePositionVo vehiclePosition : availableVehiclesNearby) {
+                                RouteAndFareDto routeAndFareDto = new RouteAndFareDto();
+                                LonLatDto lonLatDto = new LonLatDto();
+                                lonLatDto.setLongitude(vehiclePosition.getPoint().getX());
+                                lonLatDto.setLatitude(vehiclePosition.getPoint().getY());
+                                routeAndFareDto.setOrigin(lonLatDto);
+                                LonLatDto lonLatDto1 = new LonLatDto();
+                                lonLatDto1.setLongitude(Double.parseDouble(split[0]));
+                                lonLatDto1.setLatitude(Double.parseDouble(split[1]));
+
+                                if(planRule!=null&& !"null".equals(planRule)){
+                                    routeAndFareDto.setRoutePlanRule(Integer.valueOf(planRule));
+                                }
+                                routeAndFareDto.setDestination(lonLatDto1);
+                                //  调用地图 获取时间
+                                R<RouteVo> r = xpMapClient.getDistanceAndDuration(routeAndFareDto);
+                                if (r.getCode() == 200) {
+                                    vehiclePosition.setSecond(r.getData().getDuration());
+                                } else {
+                                    vehiclePosition.setSecond(0);
+                                }
+                            }
+                            availableVehiclesNearby = availableVehiclesNearby.stream().sorted(Comparator.comparing(VehiclePositionVo::getSecond)).collect(Collectors.toList());
+                            int size = tendencyTime;
+                            // 做比对的分数
+                            double temp = availableVehiclesNearby.get(0).getSecond();
+                            for (VehiclePositionVo vehiclePosition : availableVehiclesNearby) {
+                                vehiclePosition.setTimeScore(vehiclePosition.getTimeScore() + size);
+                                if (temp != vehiclePosition.getSecond()) {
+                                    size--;
+                                }
+                            }
+
+                        }
+
+
+                        // 电量分数
+                        if (max.equals(tendencyElectricity)) {
+                            // 计算车的分数  分数最大是车的size
+                            availableVehiclesNearby = availableVehiclesNearby.stream().sorted(Comparator.comparing(VehiclePositionVo::getCurrentElectricity).reversed()).collect(Collectors.toList());
+                            int size = tendencyElectricity;
+                            // 做比对的分数
+                            int temp = availableVehiclesNearby.get(0).getCurrentElectricity();
+
+                            int maxTemp = 0;
+                            for (VehiclePositionVo vehiclePosition : availableVehiclesNearby) {
+                                vehiclePosition.setCurrentElectricityScore(vehiclePosition.getCurrentElectricityScore() + size);
+                                if (temp != vehiclePosition.getCurrentElectricity()) {
+                                    size--;
+                                } else {
+                                    maxTemp++;
+                                }
+                            }
+
+                            if (maxTemp > 1) {
+                                // 证明有最高相同电量的  找下一个
+                                // 找出最第二大的值是那个
+                                // 将四个值放入列表
+                                List<Integer> values = Arrays.asList(tendencyOrderValue, tendencyDistance, tendencyTime);
+                                // 降序排序
+                                values.sort(Collections.reverseOrder());
+                                // 获取第二大值
+                                Integer secondMax = values.get(1);
+
+                                // 判断第二大的是哪个
+                                if (Objects.equals(secondMax, tendencyDistance)) {
                                     for (VehiclePositionVo vehiclePosition : availableVehiclesNearby) {
                                         RouteAndFareDto routeAndFareDto = new RouteAndFareDto();
                                         LonLatDto lonLatDto = new LonLatDto();
@@ -690,8 +572,9 @@
                                         LonLatDto lonLatDto1 = new LonLatDto();
                                         lonLatDto1.setLongitude(Double.parseDouble(split[0]));
                                         lonLatDto1.setLatitude(Double.parseDouble(split[1]));
-
-                                        routeAndFareDto.setRoutePlanRule(Integer.valueOf(planRule));
+                                        if(planRule!=null&& !"null".equals(planRule)){
+                                            routeAndFareDto.setRoutePlanRule(Integer.valueOf(planRule));
+                                        }
                                         routeAndFareDto.setDestination(lonLatDto1);
                                         //  调用地图 获取时间
                                         R<RouteVo> r = xpMapClient.getDistanceAndDuration(routeAndFareDto);
@@ -701,9 +584,20 @@
                                             vehiclePosition.setDistance(0.0);
                                         }
                                     }
+                                    availableVehiclesNearby = availableVehiclesNearby.stream().sorted(Comparator.comparing(VehiclePositionVo::getDistance)).collect(Collectors.toList());
+                                    int size1 = tendencyDistance;
+                                    // 做比对的分数
+                                    double temp1 = availableVehiclesNearby.get(0).getDistance();
+                                    for (VehiclePositionVo vehiclePosition : availableVehiclesNearby) {
+                                        vehiclePosition.setDistanceScore(vehiclePosition.getDistanceScore() + size1);
+                                        if (temp1 != vehiclePosition.getDistance()) {
+                                            size1--;
+                                        }
+                                    }
                                 }
 
-                                if (max1.equals(weightTime)) {
+
+                                if (Objects.equals(secondMax, tendencyTime)) {
                                     for (VehiclePositionVo vehiclePosition : availableVehiclesNearby) {
                                         RouteAndFareDto routeAndFareDto = new RouteAndFareDto();
                                         LonLatDto lonLatDto = new LonLatDto();
@@ -714,7 +608,9 @@
                                         lonLatDto1.setLongitude(Double.parseDouble(split[0]));
                                         lonLatDto1.setLatitude(Double.parseDouble(split[1]));
 
-                                        routeAndFareDto.setRoutePlanRule(Integer.valueOf(planRule));
+                                        if(planRule!=null&& !"null".equals(planRule)){
+                                            routeAndFareDto.setRoutePlanRule(Integer.valueOf(planRule));
+                                        }
                                         routeAndFareDto.setDestination(lonLatDto1);
                                         //  调用地图 获取时间
                                         R<RouteVo> r = xpMapClient.getDistanceAndDuration(routeAndFareDto);
@@ -724,26 +620,150 @@
                                             vehiclePosition.setSecond(0);
                                         }
                                     }
-                                }
-
-                                if (max1.equals(weightElectricity)) {
-                                    // 计算车的分数  分数最大是车的size
-                                    availableVehiclesNearby = availableVehiclesNearby.stream().sorted(Comparator.comparing(VehiclePositionVo::getCurrentElectricity).reversed()).collect(Collectors.toList());
-                                    int size1 = tendencyElectricity;
+                                    availableVehiclesNearby = availableVehiclesNearby.stream().sorted(Comparator.comparing(VehiclePositionVo::getSecond)).collect(Collectors.toList());
+                                    int size1 = tendencyTime;
                                     // 做比对的分数
-                                    int temp1 = availableVehiclesNearby.get(0).getCurrentElectricity();
+                                    double temp1 = availableVehiclesNearby.get(0).getSecond();
                                     for (VehiclePositionVo vehiclePosition : availableVehiclesNearby) {
-                                        vehiclePosition.setCurrentElectricityScore(vehiclePosition.getCurrentElectricityScore() + size1);
-                                        if (temp1 != vehiclePosition.getCurrentElectricity()) {
+                                        vehiclePosition.setTimeScore(vehiclePosition.getTimeScore() + size1);
+                                        if (temp1 != vehiclePosition.getSecond()) {
                                             size1--;
                                         }
                                     }
                                 }
 
 
+                                // 订单价值
+                                if (Objects.equals(secondMax, tendencyOrderValue)) {
+                                    // 订单价值
+                                    // 时间差权重
+                                    Integer weightTimeDifference = xpTradingStrategy.getWeightTimeDifference();
+                                    // 距离差权重
+                                    Integer weightDistanceDifference = xpTradingStrategy.getWeightDistanceDifference();
+                                    // 距离权重
+                                    Integer weightDistance = xpTradingStrategy.getWeightDistance();
+                                    // 时间权重
+                                    Integer weightTime = xpTradingStrategy.getWeightTime();
+                                    // 电量权重
+                                    Integer weightElectricity = xpTradingStrategy.getWeightElectricity();
+
+                                    // 找出最大的值是那个
+                                    Integer max1 = Math.max(weightTimeDifference, Math.max(weightDistanceDifference, Math.max(weightDistance, Math.max(weightTime, weightElectricity))));
+
+                                    //  时间差
+                                    if (max1.equals(weightTimeDifference)) {
+                                        for (VehiclePositionVo vehiclePosition : availableVehiclesNearby) {
+                                            RouteAndFareDto routeAndFareDto = new RouteAndFareDto();
+                                            LonLatDto lonLatDto = new LonLatDto();
+                                            lonLatDto.setLongitude(vehiclePosition.getPoint().getX());
+                                            lonLatDto.setLatitude(vehiclePosition.getPoint().getY());
+                                            routeAndFareDto.setOrigin(lonLatDto);
+                                            LonLatDto lonLatDto1 = new LonLatDto();
+                                            lonLatDto1.setLongitude(Double.valueOf(split[0]));
+                                            lonLatDto1.setLatitude(Double.valueOf(split[1]));
+                                            routeAndFareDto.setDestination(lonLatDto1);
+                                            if(planRule!=null&& !"null".equals(planRule)){
+                                                routeAndFareDto.setRoutePlanRule(Integer.valueOf(planRule));
+                                            }
+                                            R<RouteVo> distanceAndDuration = xpMapClient.getDistanceAndDuration(routeAndFareDto);
+                                            if (distanceAndDuration.getCode() == 200) {
+                                                // 送驾- 接驾
+                                                Integer durationDifference = Integer.parseInt(duration) - distanceAndDuration.getData().getDuration();
+                                                vehiclePosition.setTimeDifference(durationDifference);
+                                            }
+                                        }
+                                    }
+
+                                    if (max1.equals(weightDistanceDifference)) {
+                                        for (VehiclePositionVo vehiclePosition : availableVehiclesNearby) {
+                                            RouteAndFareDto routeAndFareDto = new RouteAndFareDto();
+                                            LonLatDto lonLatDto = new LonLatDto();
+                                            lonLatDto.setLongitude(vehiclePosition.getPoint().getX());
+                                            lonLatDto.setLatitude(vehiclePosition.getPoint().getY());
+                                            routeAndFareDto.setOrigin(lonLatDto);
+                                            LonLatDto lonLatDto1 = new LonLatDto();
+                                            lonLatDto1.setLongitude(Double.valueOf(split[0]));
+                                            lonLatDto1.setLatitude(Double.valueOf(split[1]));
+                                            routeAndFareDto.setDestination(lonLatDto1);
+                                            if(planRule!=null&& !"null".equals(planRule)){
+                                                routeAndFareDto.setRoutePlanRule(Integer.valueOf(planRule));
+                                            }
+                                            R<RouteVo> distanceAndDuration = xpMapClient.getDistanceAndDuration(routeAndFareDto);
+                                            if (distanceAndDuration.getCode() == 200) {
+                                                // 送驾- 接驾
+                                                Integer distanceDifference = Integer.parseInt(distance) - distanceAndDuration.getData().getDistance();
+                                                vehiclePosition.setDistanceDifference(distanceDifference);
+                                            }
+                                        }
+
+                                    }
+
+                                    if (max1.equals(weightDistance)) {
+                                        for (VehiclePositionVo vehiclePosition : availableVehiclesNearby) {
+                                            RouteAndFareDto routeAndFareDto = new RouteAndFareDto();
+                                            LonLatDto lonLatDto = new LonLatDto();
+                                            lonLatDto.setLongitude(vehiclePosition.getPoint().getX());
+                                            lonLatDto.setLatitude(vehiclePosition.getPoint().getY());
+                                            routeAndFareDto.setOrigin(lonLatDto);
+                                            LonLatDto lonLatDto1 = new LonLatDto();
+                                            lonLatDto1.setLongitude(Double.parseDouble(split[0]));
+                                            lonLatDto1.setLatitude(Double.parseDouble(split[1]));
+                                            if(planRule!=null&& !"null".equals(planRule)){
+                                                routeAndFareDto.setRoutePlanRule(Integer.valueOf(planRule));
+                                            }
+                                            routeAndFareDto.setDestination(lonLatDto1);
+                                            //  调用地图 获取时间
+                                            R<RouteVo> r = xpMapClient.getDistanceAndDuration(routeAndFareDto);
+                                            if (r.getCode() == 200) {
+                                                vehiclePosition.setDistance(Double.valueOf(r.getData().getDistance()));
+                                            } else {
+                                                vehiclePosition.setDistance(0.0);
+                                            }
+                                        }
+                                    }
+
+                                    if (max1.equals(weightTime)) {
+                                        for (VehiclePositionVo vehiclePosition : availableVehiclesNearby) {
+                                            RouteAndFareDto routeAndFareDto = new RouteAndFareDto();
+                                            LonLatDto lonLatDto = new LonLatDto();
+                                            lonLatDto.setLongitude(vehiclePosition.getPoint().getX());
+                                            lonLatDto.setLatitude(vehiclePosition.getPoint().getY());
+                                            routeAndFareDto.setOrigin(lonLatDto);
+                                            LonLatDto lonLatDto1 = new LonLatDto();
+                                            lonLatDto1.setLongitude(Double.parseDouble(split[0]));
+                                            lonLatDto1.setLatitude(Double.parseDouble(split[1]));
+                                            if(planRule!=null&& !"null".equals(planRule)){
+                                                routeAndFareDto.setRoutePlanRule(Integer.valueOf(planRule));
+                                            }
+                                            routeAndFareDto.setDestination(lonLatDto1);
+                                            //  调用地图 获取时间
+                                            R<RouteVo> r = xpMapClient.getDistanceAndDuration(routeAndFareDto);
+                                            if (r.getCode() == 200) {
+                                                vehiclePosition.setSecond(r.getData().getDuration());
+                                            } else {
+                                                vehiclePosition.setSecond(0);
+                                            }
+                                        }
+                                    }
+
+                                    if (max1.equals(weightElectricity)) {
+                                        // 计算车的分数  分数最大是车的size
+                                        availableVehiclesNearby = availableVehiclesNearby.stream().sorted(Comparator.comparing(VehiclePositionVo::getCurrentElectricity).reversed()).collect(Collectors.toList());
+                                        int size1 = tendencyElectricity;
+                                        // 做比对的分数
+                                        int temp1 = availableVehiclesNearby.get(0).getCurrentElectricity();
+                                        for (VehiclePositionVo vehiclePosition : availableVehiclesNearby) {
+                                            vehiclePosition.setCurrentElectricityScore(vehiclePosition.getCurrentElectricityScore() + size1);
+                                            if (temp1 != vehiclePosition.getCurrentElectricity()) {
+                                                size1--;
+                                            }
+                                        }
+                                    }
+                                }
+
                                 // 算出总分 再来排序计算
                                 for (VehiclePositionVo vehiclePositionVo : availableVehiclesNearby) {
-                                    vehiclePositionVo.setOrderValueTotal(vehiclePositionVo.getCurrentElectricityScore() + vehiclePositionVo.getDistanceScore() + vehiclePositionVo.getTimeScore() + vehiclePositionVo.getDistanceDifference() + vehiclePositionVo.getTimeDifference());
+                                    vehiclePositionVo.setOrderValueTotal(vehiclePositionVo.getCurrentElectricityScore() + vehiclePositionVo.getDistanceScore() + vehiclePositionVo.getTimeScore() + vehiclePositionVo.getDistanceDifference() + vehiclePositionVo.getTimeDifference()+vehiclePositionVo.getSecond()+vehiclePositionVo.getDistance().intValue());
                                 }
                                 availableVehiclesNearby = availableVehiclesNearby.stream().sorted(Comparator.comparing(VehiclePositionVo::getOrderValueTotal).reversed()).collect(Collectors.toList());
 
@@ -762,6 +782,8 @@
                         }
 
 
+                    } catch (Exception e) {
+                        log.error("异常", e);
                     }
 
                     // 判断总分来计算
@@ -786,12 +808,12 @@
                         XpVehicle vehiclePosition = vehiclePositionR.getData();
                         log.info("符合条件的车辆 {} ,直接推单XPU。单号 {}", vehiclePosition.getPlateNumber(), orderNo);
                         log.info("当前车辆状态 {} 单号 {}", vehiclePosition.getStatus(), orderNo);
-                        if (vehiclePosition.getStatus() != 1 || vehiclePosition.getState() != 0 || vehiclePosition.getVehicleType()==1) {
+                        if (vehiclePosition.getOperatingStatus() != 1 || vehiclePosition.getState() != 0 || vehiclePosition.getVehicleType() == 1) {
                             continue;
                         }
                         //  关闭巡游单子
                         R<String> stringR = xpCruiseOrderClient.updateCruiseOrder(vehiclePosition.getVehicleVin());
-                        if(stringR ==null || stringR.getCode() != 200){
+                        if (stringR == null || stringR.getCode() != 200) {
                             log.info("关闭巡游单子失败 车牌号 {}", vehiclePosition.getPlateNumber());
                             continue;
                         }
@@ -810,7 +832,7 @@
                         orderMissionClient.pushOrder(pushOrderDto);
                         log.info("开始推送 {} 订单到XPU。单号 {}", xpOrder.getOrderNumber(), orderNo);
 
-                        redisService.popFirstElement(quoteName);
+                        redisService.removeByPattern(quoteName,xpOrder.getOrderNumber());
                         log.info("将订单 {} 从队列 {} 弹出去", orderNo, quoteName);
                         return true;
                     } catch (Exception e) {
@@ -835,12 +857,12 @@
                         XpVehicle vehicleId1 = vehicleR.getData();
                         log.info("附近只有一个车辆 {} ,直接推单XPU。单号 {}", vehicleId1.getPlateNumber(), orderNo);
                         log.info("当前车辆状态 {} 运营状态 {} 单号 {}", vehicleId1.getOperatingStatus(), vehicleId1.getState(), orderNo);
-                        if (vehicleId1.getOperatingStatus() != 1 || vehicleId1.getState() != 0 || vehicleId1.getVehicleType()==1) {
+                        if (vehicleId1.getOperatingStatus() != 1 || vehicleId1.getState() != 0 || vehicleId1.getVehicleType() == 1) {
                             continue;
                         }
                         //  关闭巡游单子
                         R<String> stringR = xpCruiseOrderClient.updateCruiseOrder(vehicleId1.getVehicleVin());
-                        if(stringR ==null || stringR.getCode() != 200){
+                        if (stringR == null || stringR.getCode() != 200) {
                             log.info("关闭巡游单子失败 车牌号 {}", vehicleId1.getPlateNumber());
                             continue;
                         }
@@ -861,11 +883,11 @@
                         log.info("将订单 {} 从队列 {} 弹出去", orderNo, quoteName);
                         //判断还原车辆状态
                         Object cacheObject = redisService.getCacheObject("CREATE_ORDER:" + xpOrder.getId().toString());
-                        if(null != cacheObject){
+                        if (null != cacheObject) {
                             JSONObject jsonObject = JSON.parseObject(cacheObject.toString());
                             String vin = jsonObject.getString("vin");
                             XpVehicle vehicle = xpVehicleClient.findByVehicleVin(vin).getData();
-                            if(null != vehicle && 0 != vehicle.getState()){
+                            if (null != vehicle && 0 != vehicle.getState()) {
                                 vehicle.setState(0);
                                 xpVehicleClient.updateVehicleById(vehicle);
                             }
@@ -935,7 +957,7 @@
                 }
                 //  关闭巡游单子
                 R<String> stringR = xpCruiseOrderClient.updateCruiseOrder(vehicleId1.getVehicleVin());
-                if(stringR ==null || stringR.getData()==null){
+                if (stringR == null || stringR.getData() == null) {
                     log.info("关闭巡游单子失败");
                     continue;
                 }

--
Gitblit v1.7.1