From 1e2f717393e4053a3b8de11cbf67cd98a8c77ec1 Mon Sep 17 00:00:00 2001
From: zhaowenyu <35589726@qq.com>
Date: Sat, 15 Nov 2025 15:34:32 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/dev' into dev
---
ard-route/src/main/java/com/ard/route/service/impl/ArdRouteInfoServiceImpl.java | 34 +++++++++++++++++++++++-----------
1 files changed, 23 insertions(+), 11 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 b58c31c..ab18141 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
@@ -13,6 +13,7 @@
import com.ard.data.noflyzone.utils.NoFlyZoneUtils;
import com.ard.oss.model.MinioUploadResult;
import com.ard.oss.service.impl.OssServiceContext;
+import com.ard.route.domain.CoordinatePointReq;
import com.ard.route.domain.UavRouteReq;
import com.ard.route.domain.route.ArdRouteInfo;
import com.ard.route.domain.vo.KmzResultVo;
@@ -96,6 +97,7 @@
} catch (IOException e) {
throw new RuntimeException(e);
}
+ ardRouteInfo.getUavRouteReq().setDroneType(subStringDroneType(ardRouteInfo.getAircraft()));
ardRouteInfo.setRouteData(routeData);
KmzResultVo kmzResult = routeService.buildKmz(ardRouteInfo.getUavRouteReq(), ardRouteInfo.getName());
ardRouteInfo.setPath(kmzResult.getPath());
@@ -113,18 +115,21 @@
@Override
public int updateArdRouteInfo(ArdRouteInfo ardRouteInfo) {
ardRouteInfo.setUpdateTime(DateUtils.getNowDate());
- KmzResultVo kmzResult = new KmzResultVo();
- // 获取源文件名字
- ArdRouteInfo route = ardRouteInfoMapper.selectArdRouteInfoById(ardRouteInfo.getId());
- if (route.getName().equals(ardRouteInfo.getName())) {
- kmzResult = routeService.updateKmz(ardRouteInfo.getUavRouteReq(), ardRouteInfo.getName());
- }else {
- kmzResult = routeService.updateKmzNew(ardRouteInfo.getUavRouteReq(), route.getName(), ardRouteInfo.getName());
+ // 判断生成kmz文件实体类是否为空,为空就修改航信信息,不修改行点信息。
+ if (ardRouteInfo.getUavRouteReq() != null) {
+ KmzResultVo kmzResult;
+ // 获取源文件名字
+ ArdRouteInfo route = ardRouteInfoMapper.selectArdRouteInfoById(ardRouteInfo.getId());
+ if (route.getName().equals(ardRouteInfo.getName())) {
+ kmzResult = routeService.updateKmz(ardRouteInfo.getUavRouteReq(), ardRouteInfo.getName());
+ }else {
+ kmzResult = routeService.updateKmzNew(ardRouteInfo.getUavRouteReq(), route.getName(), ardRouteInfo.getName());
+ }
+ if ("更新航线kmz文件失败".equals(kmzResult.getData())) {
+ return 0;
+ }
+ ardRouteInfo.setPath(kmzResult.getPath());
}
- if ("更新航线kmz文件失败".equals(kmzResult.getData())) {
- return 0;
- }
- ardRouteInfo.setPath(kmzResult.getPath());
return ardRouteInfoMapper.updateArdRouteInfo(ardRouteInfo);
}
@@ -217,6 +222,9 @@
throw new ControlException("方法参数中未找到有效经纬度字段,无法判断禁飞区!");
}
List<ArdNoFlyZone> ardNoFlyZones = ardNoFlyZoneService.selectArdNoFlyZoneList(new ArdNoFlyZone());
+
+
+
if (!ardNoFlyZones.isEmpty()) {
Vertex vertex = new Vertex(longitude, latitude);
// boolean inNoFlyZones = NoFlyZoneUtils.isPointInPolygon(vertex, ardNoFlyZones);
@@ -236,4 +244,8 @@
ardRouteInfoMapper.insertArdRouteInfo(ardRouteInfo);
}
+ private void verifyNoFlyZone(CoordinatePointReq a,CoordinatePointReq b){
+
+ }
+
}
--
Gitblit v1.9.3