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 | 56 +++++++++++++++++++++++++++++++++++---------------------
1 files changed, 35 insertions(+), 21 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 0cc3de2..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;
@@ -86,8 +87,8 @@
public String insertArdRouteInfo(ArdRouteInfo ardRouteInfo) {
ardRouteInfo.setId(IdUtils.simpleUUID());
ardRouteInfo.setCreateTime(DateUtils.getNowDate());
- if (ardRouteInfo.getGroupingId() == null){
- ardRouteInfo.setGroupingId("0");
+ if (ardRouteInfo.getGroupId() == null){
+ ardRouteInfo.setGroupId("0");
}
// 航线数据
byte[] routeData;
@@ -96,11 +97,13 @@
} 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.setUpPath(kmzResult.getUpPath());
+ ardRouteInfo.setPath(kmzResult.getPath());
+ ardRouteInfo.setReadOnly("0");
ardRouteInfoMapper.insertArdRouteInfo(ardRouteInfo);
- return kmzResult.getUpPath();
+ return kmzResult.getPath();
}
/**
@@ -112,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.setUpPath(kmzResult.getUpPath());
return ardRouteInfoMapper.updateArdRouteInfo(ardRouteInfo);
}
@@ -138,7 +144,7 @@
// 删除航线(kmz)文件
for (String id : ids) {
ArdRouteInfo information = ardRouteInfoMapper.selectArdRouteInfoById(id);
- ossService.deleteObject("kmz", subStringMinioUrlName(information.getUpPath()));
+ ossService.deleteObject("kmz", subStringMinioUrlName(information.getPath()));
}
return ardRouteInfoMapper.deleteArdRouteInfoByIds(ids);
}
@@ -166,8 +172,9 @@
String url = ossService.upload("kmz",file);
ArdRouteInfo information = new ArdRouteInfo();
information.setName(file.getOriginalFilename());
- information.setUpPath(url);
- information.setGroupingId("0"); // 默认分组
+ information.setPath(url);
+ information.setGroupId("0"); // 默认分组
+ information.setReadOnly("1"); // 默认只读
insertRouteInfomation(information);
return MinioUploadResult.builder()
.url(url)
@@ -194,12 +201,12 @@
* 修改航线分组ID
*
* @param id ID
- * @param groupingId 分组ID
+ * @param groupId 分组ID
* @return 结果
*/
@Override
- public int updateRouteInfomationGroupingId(String id, String groupingId) {
- return ardRouteInfoMapper.updateRouteInforGroupingId(id, groupingId);
+ public int updateRouteInfomationGroupId(String id, String groupId) {
+ return ardRouteInfoMapper.updateRouteInforGroupId(id, groupId);
}
/**
@@ -215,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);
@@ -234,4 +244,8 @@
ardRouteInfoMapper.insertArdRouteInfo(ardRouteInfo);
}
+ private void verifyNoFlyZone(CoordinatePointReq a,CoordinatePointReq b){
+
+ }
+
}
--
Gitblit v1.9.3