From cfe18e338f08aa200a3bae6b4a25599e4f96ae86 Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期六, 28 二月 2026 22:24:18 +0800
Subject: [PATCH] bug修改

---
 xp-robotaxi-maintenance-boot/src/main/java/com/xiaopeng/maintenance/service/impl/XpTaskServiceImpl.java |   47 +++++++++++++++++++++++++++++++----------------
 1 files changed, 31 insertions(+), 16 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 e854aa8..d55f03d 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
@@ -157,11 +157,11 @@
         PageInfo<TaskPageListVO> pageInfo = new PageInfo<>(query.getPageNum(), query.getPageSize());
         List<TaskPageListVO> list = this.baseMapper.pageList(pageInfo, query);
         XpTaskRule xpTaskRule = xpTaskRuleMapper.selectOne(new LambdaQueryWrapper<XpTaskRule>().last("limit 1"));
-        if (Objects.nonNull(xpTaskRule)) {
-            list.stream().filter(item -> item.getTaskCategory().equals(2)).forEach(item -> {
-                item.setCanArriveRange(xpTaskRule.getCanArriveRange());
-            });
-        }
+//        if (Objects.nonNull(xpTaskRule)) {
+//            list.stream().filter(item -> item.getTaskCategory().equals(2)).forEach(item -> {
+//                item.setCanArriveRange(xpTaskRule.getCanArriveRange());
+//            });
+//        }
         pageInfo.setRecords(list);
         return pageInfo;
     }
@@ -174,20 +174,35 @@
         String code = sdf.format(new Date()) + UUIDUtil.getNumberRandom(5);
         xpTask.setTaskCode(code);
         xpTask.setTaskCategory(2);
-        xpTask.setTaskTypeId(dto.getTaskTypeId());
+        String[] split = dto.getTaskTypeId().split(",");
+        List<String> typeIds = new ArrayList<>();
+        for (String s : split) {
+            typeIds.add(s.trim());
+        }
+        StringBuilder temp = new StringBuilder(dto.getTaskTypeId());
+        List<Long> children = typeIds.stream().map(Long::parseLong).collect(Collectors.toList());
+        List<Long> parentIds = errorTypeMapper.selectList(new LambdaQueryWrapper<XpErrorType>()
+                .in(XpErrorType::getId, children)).stream().map(XpErrorType::getParentId).distinct().collect(Collectors.toList());
+        for (Long parentId : parentIds) {
+            temp.append(",").append(parentId);
+        }
+        xpTask.setTaskTypeId(temp.toString());
         xpTask.setTaskUrgencyLevel(dto.getTaskUrgencyLevel());
         xpTask.setTaskDescription(dto.getTaskDescription());
         XpVehicle vehicle = xpVehicleClient.queryById(xpTask.getVehicleId()).getData();
-        if (vehicle!=null){
-            VehiclePosition vehiclePosition = mongoTemplate.findOne(new Query(Criteria.where("vin").is(vehicle.getVehicleVin())), VehiclePosition.class);
-            if (vehiclePosition != null) {
-                double x = vehiclePosition.getPoint().getX();
-                double y = vehiclePosition.getPoint().getY();
-                xpTask.setVehicleLon(new BigDecimal(x));
-                xpTask.setVehicleLat(new BigDecimal(y));
-            }
-        }
-
+//        if (vehicle!=null){
+//            VehiclePosition vehiclePosition = mongoTemplate.findOne(new Query(Criteria.where("vin").is(vehicle.getVehicleVin())), VehiclePosition.class);
+//            if (vehiclePosition != null) {
+//                double x = vehiclePosition.getPoint().getX();
+//                double y = vehiclePosition.getPoint().getY();
+//                xpTask.setVehicleLon(new BigDecimal(x));
+//                xpTask.setVehicleLat(new BigDecimal(y));
+//            }
+//        }
+// 临时处理
+        xpTask.setVehicleLon(new BigDecimal("104.055683"));
+        xpTask.setVehicleLat(new BigDecimal("30.585991"));
+        xpTask.setVehicleLocation("四川省成都市武侯区石羊街道天府新谷");
         xpTask.setVehicleId(dto.getId());
         xpTask.setReportUserId(xpOperationsUser.getId());
         xpTask.setReportTime(LocalDateTime.now());

--
Gitblit v1.7.1