From 6fb7086ac2e8875c5f74eec3b86b37b8f6b406f2 Mon Sep 17 00:00:00 2001 From: helloxujingliang <3225043@qq.com> Date: Sat, 28 Jun 2025 08:48:42 +0800 Subject: [PATCH] =?UTF-8?q?=E6=89=A7=E8=A1=8C=E4=BB=BB=E5=8A=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/sys/workplan.ts | 8 + .../workplan/components/airPolygon.vue | 65 ++++++- .../workplan/components/aircraft.vue | 6 +- .../workplan/components/createWorkPlan.vue | 158 ++++++++++++------ .../workplan/components/map.vue | 4 +- .../workplan/components/planList.vue | 61 +++++-- .../demo/workmanagement/workplan/index.vue | 8 +- 7 files changed, 235 insertions(+), 75 deletions(-) diff --git a/src/api/sys/workplan.ts b/src/api/sys/workplan.ts index 8efac8b..45cb06c 100644 --- a/src/api/sys/workplan.ts +++ b/src/api/sys/workplan.ts @@ -12,6 +12,9 @@ enum Api{ // 无人机 GetUavPageList = '/api/Manage/GetUavPageList', + + // 无人机机场 + GetPortList = '/api/Manage/GetDataList', // 航线 GetAirLineList = '/api/Manage/GetAirLineList', @@ -53,6 +56,11 @@ export function getUavPageList(params) { return defHttp.get({ url: Api.GetUavPageList, params }); } +// 机场 +export function getPortList(params) { + return defHttp.get({ url: Api.GetPortList, params }); +} + // 航线 export function getAirLineList(params) { return defHttp.get({ url: Api.GetAirLineList, params }); diff --git a/src/views/demo/workmanagement/workplan/components/airPolygon.vue b/src/views/demo/workmanagement/workplan/components/airPolygon.vue index 606cead..edc1ca6 100644 --- a/src/views/demo/workmanagement/workplan/components/airPolygon.vue +++ b/src/views/demo/workmanagement/workplan/components/airPolygon.vue @@ -44,7 +44,47 @@ - + +
+
GSD(地面采样距离)
+
+ +
+
cm/pixel
+
+ +
+
航线高度
+
+ +
+
m
+
+ +
+
航向重叠率
+
+ +
+
%
+
+ +
+
旁向重叠率
+
+ +
+
%
+
+ +
+
主航线角度
+
+ +
+
°
+
+
飞向首航点模式
@@ -87,7 +127,6 @@
m
-
航线结束动作
@@ -146,7 +185,7 @@
- +
全局航线飞行速度
@@ -182,6 +221,15 @@ const setFlyPoint = ()=>{ emits("setFlyPoint"); } +// 航线计算参数 +const calculatParam = ref({ + gsd:5, + overlapY:80, + overlapX:70, + overlapAngle:0, + height:120, +}) + // 航线基本信息 const missionConfig = ref( { @@ -196,6 +244,10 @@ const missionConfig = ref( "droneEnumValue": 100, "droneSubEnumValue": 1 }, + "autoRerouteInfo": { + "transitionalAutoRerouteMode": 1, + "missionAutoRerouteMode": 1 + }, "waylineAvoidLimitAreaMode": 0, "payloadInfo": { "payloadEnumValue": 99, @@ -205,6 +257,7 @@ const missionConfig = ref( } ) + // 航点基本信息 const folder = ref({ "templateId": 0, @@ -307,6 +360,12 @@ const backPage = ()=>{ cursor:pointer; } +.area-options .item .unit{ + min-width: 60px; + text-align:center; + +} + ::v-deep .ant-radio-group { display: block; diff --git a/src/views/demo/workmanagement/workplan/components/aircraft.vue b/src/views/demo/workmanagement/workplan/components/aircraft.vue index 88a137e..10f42eb 100644 --- a/src/views/demo/workmanagement/workplan/components/aircraft.vue +++ b/src/views/demo/workmanagement/workplan/components/aircraft.vue @@ -38,7 +38,7 @@ {{item.name}}
-
无人机型号:{{item.firmwareVersion}}
+
无人机型号:{{item.typeId}}
@@ -48,7 +48,7 @@ import { PlusOutlined,FileAddOutlined,LeftOutlined,ImportOutlined,MoreOutlined,EditOutlined } from '@ant-design/icons-vue'; import {ref,defineEmits} from 'vue' - import { getUavPageList } from '@/api/sys/workplan'; + import { getUavPageList,getPortList } from '@/api/sys/workplan'; const emit = defineEmits(["checkAriLine"]) @@ -65,7 +65,7 @@ }) const getList = async ()=>{ - let res = await getUavPageList(pageQuery.value); + let res = await getPortList(pageQuery.value); ariLineList.value = res.items; } diff --git a/src/views/demo/workmanagement/workplan/components/createWorkPlan.vue b/src/views/demo/workmanagement/workplan/components/createWorkPlan.vue index 6d9aad6..dafe01d 100644 --- a/src/views/demo/workmanagement/workplan/components/createWorkPlan.vue +++ b/src/views/demo/workmanagement/workplan/components/createWorkPlan.vue @@ -18,7 +18,6 @@ -
- - + + + +
+
+ {{item.label}} +
+
+ + +
+ + + +
+
+ {{item.label}} +
+
+ +
-
智能最佳返航路线
+
智能巡检
- +
-
-
自动断点续飞
-
- -
-
- - - - 取消 - 确定 - +
- +