| | |
| | | if (vehicle != null) { |
| | | // 修改车辆状态 |
| | | XpVehicle vehicle1 = new XpVehicle(); |
| | | vehicle1.setState(0); |
| | | vehicle1.setOperatingStatus(4); |
| | | vehicle1.setState(0);//车辆接单状态 1接单中 0空闲 |
| | | vehicle1.setOperatingStatus(4);//运营状态 1运营中 2维修中 3已收车 4车辆异常 |
| | | vehicle1.setId(vehicle.getId()); |
| | | xpVehicleClient.updateVehicleById(vehicle1); |
| | | log.info("车辆故障,车辆状态修改0 {}", vehicle.getPlateNumber()); |
| | |
| | | userVehicleClient.cancelTaxiPassenger(cancelTaxiPassengerVo); |
| | | } |
| | | //status 状态 0=已取消,1=待接单,2=待出发,3=接驾中,4=待客上车,5=乘客已上车,6=服务中,7=待客下车,8=待付款,9=待评价,10=已完成 |
| | | List<Integer> notDrive = new ArrayList<Integer>(){{ //未行驶的情况下订单故障状态点 |
| | | List<Integer> notDrive = new ArrayList<Integer>(){{ //未行驶的情况下订单故障状态点 status=2、3、4、5 |
| | | add(OrderStatusEnum.READY_DEPART.getCode());add(OrderStatusEnum.PICK_UP.getCode()); |
| | | add(OrderStatusEnum.PICK_UP_GUESTS.getCode());add(OrderStatusEnum.PASSENGER_BOARDED.getCode()); |
| | | }}; |
| | | |
| | | if(xpOrder.getStatus().equals(OrderStatusEnum.IN_SERVICE.getCode()) |
| | | || xpOrder.getStatus().equals(OrderStatusEnum.SEE_OFF_GUESTS.getCode()) ){ //6=服务中 7=待客下车 在行驶中 修改订单-已完成 需要处理订单金额 |
| | | //单独写个修改订单的方法。 |
| | | // ff |
| | | if(xpOrder.getStatus().equals(OrderStatusEnum.IN_SERVICE.getCode()) ){ //6=服务中 在行驶中 修改订单-已完成 需要处理订单金额 |
| | | //行驶中车辆异常,订单状态修改- 修改状态=7 再修改 金额 再将状态修改成8 |
| | | xpOrderClient.carAbnormalUpdateOrderStatus(Long.parseLong(orderId)); |
| | | |
| | | }else if(notDrive.contains(xpOrder.getStatus())){//在接驾中 车辆出现故障 重新派单 |
| | | |
| | | // TODO 重新派单 |
| | | }else if(notDrive.contains(xpOrder.getStatus())){//在接驾中 车辆出现故障 重新派单 改派 |
| | | ReassignOrderDTO reassignOrderDTO = new ReassignOrderDTO(); |
| | | reassignOrderDTO.setUid(xpOrder.getAppUserId().toString()); |
| | | reassignOrderDTO.setOrderNo(xpOrder.getOrderNumber()); |