From 27f63c34e229f6188400a93d246967c1b4dcb9e2 Mon Sep 17 00:00:00 2001
From: 罗广辉 <guanghui.luo@foxmail.com>
Date: Thu, 22 Jan 2026 10:31:24 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
applications/drone-command/src/views/detectionCountermeasure/taskSchedule/FormDiaLog.vue | 72 ++++++++++++++++++++++-------------
1 files changed, 45 insertions(+), 27 deletions(-)
diff --git a/applications/drone-command/src/views/detectionCountermeasure/taskSchedule/FormDiaLog.vue b/applications/drone-command/src/views/detectionCountermeasure/taskSchedule/FormDiaLog.vue
index 1fcc76a..dedb04a 100644
--- a/applications/drone-command/src/views/detectionCountermeasure/taskSchedule/FormDiaLog.vue
+++ b/applications/drone-command/src/views/detectionCountermeasure/taskSchedule/FormDiaLog.vue
@@ -12,12 +12,12 @@
<div class="val">{{ formData.deviceSn }}</div>
</el-col>
<el-col :span="12">
- <div class="label">场景</div>
- <div class="val">{{ formData.defenseSceneName }}</div>
- </el-col>
- <el-col :span="12">
<div class="label">区域</div>
<div class="val">{{ formData.areaDivideName }}</div>
+ </el-col>
+ <el-col :span="12">
+ <div class="label">场景</div>
+ <div class="val">{{ formData.defenseSceneName }}</div>
</el-col>
<el-col :span="12">
<div class="label">调度人员</div>
@@ -71,15 +71,18 @@
</el-select>
</el-form-item>
</el-col>
+
<el-col :span="12">
<el-form-item label="场景" prop="defenseSceneId">
<el-select class="command-select" popper-class="command-select-popper"
- v-model="formData.defenseSceneId" placeholder="请选择" clearable @change="handleSceneChange">
+ v-model="formData.defenseSceneId" placeholder="请选择" clearable
+ @change="handleSceneChange">
<el-option v-for="item in sceneList" :key="item.id" :label="item.sceneName"
:value="item.id" />
</el-select>
</el-form-item>
</el-col>
+
<el-col :span="12">
<el-form-item label="区域" prop="areaDivideId">
<el-select class="command-select" popper-class="command-select-popper"
@@ -90,20 +93,8 @@
</el-select>
</el-form-item>
</el-col>
+
<el-col :span="12">
- <el-form-item label="调度人员" prop="dispatchUser">
- <el-input class="command-input" v-model="formData.dispatchUser" maxlength="50" placeholder="请输入"
- clearable />
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="调度日期" prop="dispatchDateRange">
- <el-date-picker class="command-date-picker" popper-class="command-date-picker-popper"
- v-model="formData.dispatchDateRange" type="datetimerange" range-separator="至"
- start-placeholder="开始日期" end-placeholder="结束日期" value-format="YYYY-MM-DD HH:mm:ss" />
- </el-form-item>
- </el-col>
- <el-col :span="24">
<el-form-item label="调度位置" prop="longitude">
<!-- <el-button @click="selectLocation" style="width: 100%">-->
<el-button style="width: 100%">
@@ -114,6 +105,21 @@
</el-button>
</el-form-item>
</el-col>
+
+ <el-col :span="12">
+ <el-form-item label="调度人员" prop="dispatchUser">
+ <el-input class="command-input" v-model="formData.dispatchUser" maxlength="50" placeholder="请输入"
+ clearable />
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="调度日期" prop="dispatchDateRange">
+ <el-date-picker class="command-date-picker" popper-class="command-date-picker-popper"
+ v-model="formData.dispatchDateRange" type="daterange" range-separator="至"
+ start-placeholder="开始日期" end-placeholder="结束日期" value-format="YYYY-MM-DD HH:mm:ss" />
+ </el-form-item>
+ </el-col>
+
<el-col :span="24">
<el-form-item label="调度内容" prop="dispatchContent">
<el-input class="command-input" v-model="formData.dispatchContent" type="textarea" :rows="3"
@@ -158,6 +164,7 @@
import { ElMessage } from 'element-plus'
import { fwTaskScheduleDetailApi, fwTaskScheduleSubmitApi } from './taskScheduleApi'
import { fwAreaDivideListApi } from '@/views/areaManage/partition/partitionApi'
+import { fwDefenseSceneListApi } from '@/views/areaManage/sceneConfig/sceneConfigApi'
import { fieldRules } from '@ztzf/utils'
import { PublicCesium } from '@/utils/cesium/publicCesium'
import * as Cesium from 'cesium'
@@ -186,7 +193,6 @@
})
const props = defineProps({
- sceneList: { type: Array, default: () => [] },
deviceList: { type: Array, default: () => [] },
})
@@ -203,6 +209,7 @@
const titleEnum = ref({ edit: '编辑', view: '查看', add: '新增' })
const tempLocation = ref({ longitude: null, latitude: null })
const areaList = ref([]) // 区域列表
+const sceneList = ref([]) // 场景列表
const deviceStatus = ref('')
const rules = {
@@ -229,9 +236,16 @@
}
}
+async function handleAreaChange (areaId) {
+ const find = areaList.value.find(item => item.id === areaId)
+ formData.value.longitude = find?.longitude
+ formData.value.latitude = find?.latitude
+}
+
// 场景选择变化处理
async function handleSceneChange (sceneId) {
formData.value.areaDivideId = ''
+
if (sceneId) {
await loadAreaList(sceneId)
} else {
@@ -239,16 +253,16 @@
}
}
-function handleAreaChange (areaId) {
- const find = areaList.value.find(item => item.id === areaId)
- formData.value.longitude = find?.longitude
- formData.value.latitude = find?.latitude
-}
-
// 加载区域列表
async function loadAreaList (sceneId) {
- const res = await fwAreaDivideListApi({ sceneId })
+ const res = await fwAreaDivideListApi({sceneId})
areaList.value = res?.data?.data ?? []
+}
+
+// 加载场景列表
+async function loadSceneList() {
+ const res = await fwDefenseSceneListApi()
+ sceneList.value = res?.data?.data ?? []
}
// 关闭弹框
@@ -319,7 +333,7 @@
text: `${longitude.toFixed(6)}, ${latitude.toFixed(6)}`,
font: '14px',
fillColor: Cesium.Color.WHITE,
- backgroundColor: Cesium.Color.BLACK.withAlpha(0.45),
+ backgroundColor: Cesium.Color.BLACK.withAlpha(0.6),
backgroundPadding: new Cesium.Cartesian2(5, 5),
pixelOffset: new Cesium.Cartesian2(0, -20),
showBackground: true,
@@ -385,6 +399,10 @@
}
defineExpose({ open })
+
+onMounted(() => {
+ loadSceneList()
+})
</script>
<style scoped lang="scss">
#mapContainer {
--
Gitblit v1.9.3