From d943874d94e69806cb53b649b378075794bdf683 Mon Sep 17 00:00:00 2001
From: liujie <1793218484@qq.com>
Date: 星期日, 15 三月 2026 14:35:28 +0800
Subject: [PATCH] Merge branch 'master' of http://120.76.84.145:10101/gitblit/r/java/Robotaxi

---
 xp-robotaxi-maintenance-boot/src/main/java/com/xiaopeng/maintenance/controller/XpVehicleOperationsController.java |    7 ++++---
 1 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/xp-robotaxi-maintenance-boot/src/main/java/com/xiaopeng/maintenance/controller/XpVehicleOperationsController.java b/xp-robotaxi-maintenance-boot/src/main/java/com/xiaopeng/maintenance/controller/XpVehicleOperationsController.java
index 57ca8d5..3e56dce 100644
--- a/xp-robotaxi-maintenance-boot/src/main/java/com/xiaopeng/maintenance/controller/XpVehicleOperationsController.java
+++ b/xp-robotaxi-maintenance-boot/src/main/java/com/xiaopeng/maintenance/controller/XpVehicleOperationsController.java
@@ -25,6 +25,7 @@
 import org.springframework.data.mongodb.core.MongoTemplate;
 import org.springframework.data.mongodb.core.query.Criteria;
 import org.springframework.data.mongodb.core.query.Query;
+import org.springframework.transaction.annotation.Transactional;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
@@ -61,6 +62,7 @@
     /**
      * 车辆详情-车辆调度-发车 收车
      */
+    @Transactional(rollbackFor = Exception.class)
     @ApiOperation(value = "车辆运维-车辆调度-发车/收车", tags = {"运维APP-车辆管理"})
     @PostMapping("/api/v1/vehicle/vehicleDispatchDeparture")
     public R<String> vehicleDispatchDeparture(@RequestBody VehicleDispatchDepartureDTO dto) {
@@ -71,13 +73,12 @@
         if(xpVehicle.getState()==1){
             return R.fail("车辆正在接单中");
         }
-        xpVehicle.setOperatingStatus(dto.getDepartureStatus());
-        xpVehicleClient.updateVehicleById(xpVehicle);
-
         VehiclePosition vehiclePosition = mongoTemplate.findOne(new Query(Criteria.where("vin").is(xpVehicle.getVehicleVin())), VehiclePosition.class);
         if(vehiclePosition==null || vehiclePosition.getPoint()==null){
             return R.fail("车辆位置信息不存在");
         }
+        xpVehicle.setOperatingStatus(dto.getDepartureStatus());
+        xpVehicleClient.updateVehicleById(xpVehicle);
         // 发车
         if(dto.getDepartureStatus()==1){
             // 找车辆的任务  生成巡游单子 下发命令

--
Gitblit v1.7.1