From 35c8a9c2babfd373313892af16a031d4c1c21689 Mon Sep 17 00:00:00 2001
From: Xiajijian <1176061145@qq.com>
Date: Tue, 10 Feb 2026 13:44:30 +0800
Subject: [PATCH] 1. 修改校验航线任务是否可以创建航线接口。 2. 增加返回实体类。

---
 ard-route/src/main/java/com/ard/route/service/impl/ArdRouteMissionServiceImpl.java |   31 +++++++++++++++++++++++++------
 1 files changed, 25 insertions(+), 6 deletions(-)

diff --git a/ard-route/src/main/java/com/ard/route/service/impl/ArdRouteMissionServiceImpl.java b/ard-route/src/main/java/com/ard/route/service/impl/ArdRouteMissionServiceImpl.java
index 2afdbb7..cc01107 100644
--- a/ard-route/src/main/java/com/ard/route/service/impl/ArdRouteMissionServiceImpl.java
+++ b/ard-route/src/main/java/com/ard/route/service/impl/ArdRouteMissionServiceImpl.java
@@ -9,6 +9,7 @@
 import com.ard.common.utils.uuid.IdUtils;
 import com.ard.route.domain.route.ArdRouteMission;
 import com.ard.route.domain.route.ArdRoutePoint;
+import com.ard.route.domain.route.MissionNot;
 import com.ard.route.domain.route.UpdateMission;
 import com.ard.route.mapper.ArdRoutePointMapper;
 import com.ard.route.websocket.utils.MiWebSocketUtils;
@@ -213,16 +214,34 @@
     /**
      * 校验航线任务是否可以创建航线
      *
-     * @param missionId 航线任务ID
+     * @param id ID
      * @return 结果
      */
     @Override
-    public Boolean selectRouteMissionNot(String missionId) {
-        ArdRouteMission mission = ardRouteMissionMapper.selectArdRouteMissionById(missionId);
-        if (mission != null){
-            throw new RuntimeException("创建航线,只能创建下发自己的航线任务信息【" + mission.getMissionName() + "】,无法执行操作!");
+    public MissionNot selectRouteMissionNot(String id) {
+        // 1. 初始化返回对象,默认允许操作
+        MissionNot missionNot = new MissionNot();
+        missionNot.setIsNot(true);
+
+        // 2. 根据ID查询航线任务
+        ArdRouteMission mission = ardRouteMissionMapper.selectArdRouteMissionById(id);
+
+        // 3. 空值快速返回(任务不存在则无需校验,直接允许操作)
+        if (mission == null) {
+            return missionNot;
         }
-        return true;
+
+        // 4. 校验任务创建者是否为当前用户
+        // 增加空指针防护:避免issuerId为null导致空指针异常
+        if (mission.getIssuerId() == null || !mission.getIssuerId().equals(getUserId())) {
+            String errorMsg = String.format("创建航线,只能创建下发自己的航线任务信息【%s】,无法执行操作!",
+                    mission.getMissionName());
+            missionNot.setInformation(errorMsg);
+            missionNot.setIsNot(false);
+        }
+
+        // 5. 统一返回结果
+        return missionNot;
     }
 
 }

--
Gitblit v1.9.3