From 8fe9faddf234f7087a516d7e1e068b558289e605 Mon Sep 17 00:00:00 2001
From: zhaowenyu <35589726@qq.com>
Date: Tue, 10 Feb 2026 14:54:24 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/dev' into dev
---
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