From dd04b26581614110fa318bab79a85d81de9245e8 Mon Sep 17 00:00:00 2001
From: 罗广辉 <guanghui.luo@foxmail.com>
Date: Wed, 09 Apr 2025 18:43:59 +0800
Subject: [PATCH] feat: 完成智引即飞

---
 src/views/SignMachineNest/MachineLeft/MachineLeft.vue |    1 +
 src/views/Home/AINowFly.vue                           |   40 ++++++++++++++++++++++++----------------
 2 files changed, 25 insertions(+), 16 deletions(-)

diff --git a/src/views/Home/AINowFly.vue b/src/views/Home/AINowFly.vue
index a11981f..6cbaf78 100644
--- a/src/views/Home/AINowFly.vue
+++ b/src/views/Home/AINowFly.vue
@@ -2,16 +2,20 @@
 	<div class="AINowFly">
 		<div>智引即飞</div>
 		<el-form ref="ruleFormRef" :model="params" :rules="rules" label-width="auto" size="small" status-icon>
-			<el-form-item label="任务名称" prop="taskName">
-				<el-input v-model="params.taskName" />
+			<el-form-item label="任务名称" prop="name">
+				<el-input v-model="params.name" />
 			</el-form-item>
 			<el-form-item label="关联算法" prop="ai_types">
-				<el-select v-model="params.ai_types" placeholder="请选择">
+				<el-select v-model="params.ai_types" placeholder="请选择" multiple>
 					<el-option v-for="item in taskAlgorithm" :key="item.id" :label="item.dictValue" :value="item.dictKey" />
 				</el-select>
 			</el-form-item>
-			<el-form-item label="地址" >
+			<el-form-item label="地址">
 				<el-input disabled type="text" v-model="di" />
+			</el-form-item>
+			<!--			todo-->
+			<el-form-item label="事件">
+				<div>默认拍照</div>
 			</el-form-item>
 		</el-form>
 
@@ -40,23 +44,24 @@
 import dayjs from 'dayjs'
 import { useStore } from 'vuex'
 
-
-
-const now = dayjs().format('YYYY/MM/DD HH:mm')
+const now = dayjs().format('YYYYMMDDHHmm')
+const nowTime = dayjs().format('YYYY-MM-DD HH:mm:ss')
 
 const paramsInit = {
-	taskName: `智引即飞 ${now}`,
+	name: `智引即飞${now}`,
 	ai_types: '',
 	longitude: '',
 	latitude: '',
 	dock_sns: [],
+	type: 1,
+	begin_time: nowTime,
+	end_time: nowTime,
 }
 const params = ref(_.cloneDeep(paramsInit))
 const di = computed(() => params.value.longitude + ',' + params.value.latitude)
 
-
 const rules = ref({
-	taskName: [
+	name: [
 		{ required: true, message: '请输入任务名称', trigger: 'blur' },
 		{ min: 3, max: 50, message: '长度在 3 到 20 个字符', trigger: 'blur' },
 	],
@@ -79,11 +84,14 @@
 	await ruleFormRef.value.validate()
 	if (!params.value.dock_sns.length) return ElMessage.warning('请选择将要飞行的机巢')
 	if (!params.value.longitude) return ElMessage.warning('请选择飞行的点')
-	if (params.value.dock_sns.length === 1){
-		store.commit('setSingleUavHome', { device_sn: params.value.dock_sns[0]})
-	}else{
-		store.commit('setFootActiveIndex', 0)
-	}
+	createTask(params.value).then(res => {
+		ElMessage.success('起飞成功')
+		if (params.value.dock_sns.length === 1) {
+			store.commit('setSingleUavHome', { device_sn: params.value.dock_sns[0] })
+		} else {
+			store.commit('setFootActiveIndex', 0)
+		}
+	})
 }
 
 const renderingLine = () => {
@@ -158,7 +166,7 @@
 	})
 	const { longitude, latitude } = cartesian3Convert(earthPosition, viewer)
 	eventPoint = { longitude, latitude }
-	params.value = {...params.value,longitude, latitude}
+	params.value = { ...params.value, longitude, latitude }
 	getFJList()
 }
 
diff --git a/src/views/SignMachineNest/MachineLeft/MachineLeft.vue b/src/views/SignMachineNest/MachineLeft/MachineLeft.vue
index f746ffc..1b6e110 100644
--- a/src/views/SignMachineNest/MachineLeft/MachineLeft.vue
+++ b/src/views/SignMachineNest/MachineLeft/MachineLeft.vue
@@ -24,6 +24,7 @@
 
 const goBack = () => {
   store.commit('setSingleUavHome', {});
+	store.commit('setFootActiveIndex', 0)
 };
 </script>
 

--
Gitblit v1.9.3