From 5c66a7f02f62ce8f5293a59b467461b0468c4e51 Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期六, 18 四月 2026 17:40:18 +0800
Subject: [PATCH] merge

---
 xp-robotaxi-maintenance-boot/src/main/java/com/xiaopeng/maintenance/service/impl/XpTaskServiceImpl.java |   16 ++++++++--------
 1 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/xp-robotaxi-maintenance-boot/src/main/java/com/xiaopeng/maintenance/service/impl/XpTaskServiceImpl.java b/xp-robotaxi-maintenance-boot/src/main/java/com/xiaopeng/maintenance/service/impl/XpTaskServiceImpl.java
index b2650fd..2416bfe 100644
--- a/xp-robotaxi-maintenance-boot/src/main/java/com/xiaopeng/maintenance/service/impl/XpTaskServiceImpl.java
+++ b/xp-robotaxi-maintenance-boot/src/main/java/com/xiaopeng/maintenance/service/impl/XpTaskServiceImpl.java
@@ -68,6 +68,7 @@
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.data.geo.Point;
 import org.springframework.data.mongodb.core.MongoTemplate;
+import org.springframework.data.mongodb.core.geo.GeoJsonPoint;
 import org.springframework.data.mongodb.core.query.Criteria;
 import org.springframework.data.mongodb.core.query.Query;
 import org.springframework.stereotype.Service;
@@ -1392,7 +1393,7 @@
             throw new ServiceException("未配置车辆事故任务分配规则");
         }
         List<Long> excludedUserIds = Optional.ofNullable(task.getExcluded()).orElse(new ArrayList<>());
-        excludedUserIds.add(Long.valueOf(task.getHandleUserId()));
+        excludedUserIds.addAll(Arrays.asList(task.getHandleUserId().split(",")).stream().map(Long::parseLong).collect(Collectors.toList()));
         task.setExcluded(excludedUserIds);
         Long fleetId = xpFleetVehicleClient.getFleetIdByVehicleId(vehicle.getId()).getData();
         List<Long> roleIds = taskRuleRole.stream().map(XpTaskRuleRole::getRoleId).collect(Collectors.toList());
@@ -1402,7 +1403,9 @@
                 .filter(ids::contains)
                 .filter(id -> !excludedUserIds.contains(id))
                 .map(String::valueOf).collect(Collectors.joining(","));
-        VehiclePosition vehiclePosition = mongoTemplate.findOne(new Query(Criteria.where("vin").is(vehicle.getVehicleVin())), VehiclePosition.class);
+//        VehiclePosition vehiclePosition = mongoTemplate.findOne(new Query(Criteria.where("vin").is(vehicle.getVehicleVin())), VehiclePosition.class);
+        VehiclePosition vehiclePosition = new VehiclePosition();
+        vehiclePosition.setPoint(new GeoJsonPoint(103.12615621, 30.264561));
         String handlerUser = chooseNearestAvailableOperationsUser(belongUserIds, vehiclePosition);
         task.setHandleUserId(handlerUser);
         if(handlerUser == null) {
@@ -1410,12 +1413,9 @@
             noticeAdministrator(task);//TODO 需要通知管理员手动处理,考虑再AliPushUtil 中给管理员发送消息
         }
         updateById(task);
-        // 存储事故处理日志
-        XpTaskHandleDetail xpTaskHandleDetail = new XpTaskHandleDetail();
-        xpTaskHandleDetail.setTaskId(task.getId());
-        xpTaskHandleDetail.setResponsibleDescription(msg);
-        xpTaskHandleDetailMapper.insert(xpTaskHandleDetail);
-        sendAccidentNotificationAsync(task, vehicle.getPlateNumber(), taskRule.getProcessingTimeLimit());
+        if(StringUtils.isNotBlank(task.getHandleUserId())){
+            sendAccidentNotificationAsync(task, vehicle.getPlateNumber(), taskRule.getProcessingTimeLimit());
+        }
     }
 
 

--
Gitblit v1.7.1