From 5d2e6ca50091f405dfda9e287b367dd295dc6cf8 Mon Sep 17 00:00:00 2001
From: Xiajijian <1176061145@qq.com>
Date: Mon, 09 Feb 2026 17:39:17 +0800
Subject: [PATCH] 1. 航线任务增加校验,只有下发人和登陆人是一个人才可以删除修改操作。 2. 增加校验航线任务是否可以创建航线接口。

---
 ard-route/src/main/java/com/ard/route/service/impl/ArdRouteInfoServiceImpl.java |   18 +++++++++++++++---
 1 files changed, 15 insertions(+), 3 deletions(-)

diff --git a/ard-route/src/main/java/com/ard/route/service/impl/ArdRouteInfoServiceImpl.java b/ard-route/src/main/java/com/ard/route/service/impl/ArdRouteInfoServiceImpl.java
index 6fb58d9..5ecf63c 100644
--- a/ard-route/src/main/java/com/ard/route/service/impl/ArdRouteInfoServiceImpl.java
+++ b/ard-route/src/main/java/com/ard/route/service/impl/ArdRouteInfoServiceImpl.java
@@ -5,6 +5,7 @@
 
 import com.ard.common.exception.ControlException;
 import com.ard.common.utils.DateUtils;
+import com.ard.common.utils.SecurityUtils;
 import com.ard.common.utils.file.FileUtils;
 import com.ard.common.utils.uuid.IdUtils;
 import com.ard.data.noflyzone.domain.ArdNoFlyZone;
@@ -36,10 +37,9 @@
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.web.multipart.MultipartFile;
-
 import javax.annotation.Resource;
 
-import static com.ard.common.utils.SecurityUtils.getUsername;
+import static com.ard.common.utils.SecurityUtils.getUserId;
 import static com.ard.route.enums.kml.DroneEnumValueEnums.M350_RTK;
 import static com.ard.route.util.InitializationUtils.divided_23;
 import static com.ard.route.util.ToolUtils.*;
@@ -140,6 +140,7 @@
      */
     @Override
     public String insertArdRouteInfo(ArdRouteInfo ardRouteInfo) {
+        validateForCreate(ardRouteInfo);
         checkRouteMissionStatus(ardRouteInfo,"1");
         checkRouteMissionStatus(ardRouteInfo,"2");
         ardRouteInfo.setId(IdUtils.simpleUUID());
@@ -182,6 +183,17 @@
         }
     }
 
+    // 验证,只有当前用户是下发人才能创建航线
+    private void validateForCreate(ArdRouteInfo ardRouteInfo) {
+        ArdRouteMission mission = ardRouteMissionMapper.selectArdRouteMissionById(ardRouteInfo.getMissionId());
+        if (mission != null){
+            if (!mission.getIssuerId().equals(getUserId())){
+                throw new RuntimeException("创建航线,只能创建下发自己的航线任务信息【" + mission.getMissionName() + "】,无法执行操作!");
+                //return "创建航线,只能创建下发自己的航线任务信息【" + mission.getMissionName() + "】,无法执行操作!";
+            }
+        }
+    }
+
     private void validateForCreate(ArdRouteMission mission) {
         if ("1".equals(mission.getExecuteStatus())){
             throw new RuntimeException("航线任务已完成,无法创建航线!!!");
@@ -200,7 +212,7 @@
         if ("0".equals(mission.getExecuteStatus())) {
             mission.setRouteId(ardRouteInfo.getId());
             mission.setExecuteStatus("1");
-            mission.setExecuteBy(getUsername());
+            mission.setExecuteName(SecurityUtils.getUsername());
             mission.setExecuteTime(DateUtils.getNowDate());
             mission.setUpdateTime(DateUtils.getNowDate());
             ardRouteMissionMapper.updateArdRouteMission(mission);

--
Gitblit v1.9.3