applications/drone-command/src/styles/common/cockpit.scss
@@ -1065,24 +1065,37 @@ } .command-page-view-dialog { padding: 30px; margin: 0; padding: 20px; display: flex; flex-direction: column; width: 770px; background: #1A1A2A; border-radius: 6px 6px 6px 6px; border: 1px solid #2E2E46; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); .el-dialog__header { position: relative; span { font-family: Source Han Sans CN, Source Han Sans CN; font-weight: bold; font-size: 18px; color: #FFFFFF; line-height: 40px; text-align: left; font-style: normal; text-transform: none; } .el-button { width: auto; height: auto; display: flex; align-items: center; } .el-icon { @@ -1145,6 +1158,7 @@ height: 360px; .command-table-pagination { padding-bottom: 20px; justify-content: center; } } @@ -1165,6 +1179,10 @@ .el-row { .el-col { margin-bottom: 0; .el-form-item { margin-bottom: 20px; } } } @@ -1288,6 +1306,7 @@ } .el-dialog__footer { padding-top: 0; display: flex; justify-content: center; @@ -1353,7 +1372,9 @@ } .command-page-map-view-dialog { padding: 30px; margin: 0; padding: 20px; display: flex; flex-direction: column; width: 80%; @@ -1362,6 +1383,11 @@ border-radius: 6px 6px 6px 6px; border: 1px solid #2E2E46; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); .el-dialog__header, .el-dialog__footer { margin: 0; applications/drone-command/src/views/areaManage/precinctInfo/FormDiaLog.vue
@@ -1,7 +1,7 @@ <template> <el-dialog class="command-page-view-dialog" v-model="visible" :title="titleEnum[dialogMode]"> <el-dialog class="command-page-view-dialog" v-model="visible" :title="titleEnum[dialogMode]" :close-on-click-modal="false"> <div class="detail-container" v-if="readonly"> <div class="detail-title">派出所详情</div> <el-row> <el-col :span="12"> <div class="label">派出所名称</div> applications/drone-command/src/views/basicManage/deviceScrap/FormDiaLog.vue
@@ -1,6 +1,6 @@ <template> <el-dialog class="command-page-view-dialog" v-model="visible" :title="titleEnum[dialogMode]" @closed="handleClosed" destroy-on-close> destroy-on-close :close-on-click-modal="false"> <div class="detail-container" v-if="dialogReadonly"> <el-row> <el-col :span="12"> applications/drone-command/src/views/basicManage/deviceStock/DeviceScrapDiaLog.vue
@@ -1,5 +1,6 @@ <template> <el-dialog class="command-page-view-dialog" v-model="visible" :title="dialogTitle" @closed="handleClosed" destroy-on-close> <el-dialog class="command-page-view-dialog" v-model="visible" :title="dialogTitle" @closed="handleClosed" destroy-on-close :close-on-click-modal="false"> <el-form class="dialog-form" ref="formRef" :model="formData" :rules="rules" label-width="100px"> <el-row> <el-col :span="24"> applications/drone-command/src/views/basicManage/deviceStock/DeviceTrackDiaLog.vue
@@ -1,5 +1,6 @@ <template> <el-dialog class="command-page-view-dialog" v-model="visible" :title="dialogTitle" @closed="handleClosed" destroy-on-close> <el-dialog class="command-page-view-dialog" v-model="visible" :title="dialogTitle" @closed="handleClosed" destroy-on-close :close-on-click-modal="false"> <el-form class="dialog-form" ref="formRef" :model="formData" :rules="rules" label-width="100px"> <el-row> <el-col :span="12"> applications/drone-command/src/views/basicManage/deviceStock/FormDiaLog.vue
@@ -1,6 +1,6 @@ <template> <el-dialog class="command-page-view-dialog" v-model="visible" :title="dialogTitle" @closed="handleClosed" destroy-on-close> destroy-on-close :close-on-click-modal="false"> <div class="detail-container" v-if="dialogReadonly"> <div class="detail-title">设备详情</div> <el-row> applications/drone-command/src/views/basicManage/maintainRecord/FormDiaLog.vue
@@ -1,6 +1,6 @@ <template> <el-dialog class="command-page-view-dialog" v-model="visible" :title="titleEnum[dialogMode]" @closed="handleClosed" destroy-on-close> destroy-on-close :close-on-click-modal="false"> <div class="detail-container" v-if="dialogReadonly"> <div class="detail-title">设备详情</div> <el-row> applications/drone-command/src/views/basicManage/maintainRecord/MaintenanceDiaLog.vue
@@ -5,9 +5,9 @@ :title="titleEnum[dialogMode]" @closed="handleClosed" destroy-on-close :close-on-click-modal="false" > <div class="detail-container" v-if="dialogReadonly"> <div class="detail-title">设备详情</div> <el-row> <el-col :span="12"> <div class="label">设备名称</div> applications/drone-command/src/views/detectionCountermeasure/deviceAppConfig/FormDiaLog.vue
@@ -8,7 +8,6 @@ destroy-on-close > <div v-if="readonly" class="detail-container"> <div class="detail-title">配置详情</div> <el-row> <el-col :span="12"> <div class="label">起始扇区</div> @@ -94,7 +93,7 @@ /> </el-form-item> </el-col> <el-col :span="24"><h3 style="color: #ffffff">工作模式</h3></el-col> <el-col :span="24"><h3 style="color: #ffffff">设备参数</h3></el-col> <el-col :span="12"> <el-form-item label="伺服模式" prop="servoMode"> <el-select applications/drone-command/src/views/detectionCountermeasure/taskSchedule/FormDiaLog.vue
@@ -8,7 +8,6 @@ @closed="handleClosed" > <div v-if="readonly" class="detail-container"> <div class="detail-title">调度详情</div> <el-row> <el-col :span="12"> <div class="label">设备名称</div> applications/drone-command/src/views/permissionManage/permissionDept/FormDiaLog.vue
@@ -1,7 +1,7 @@ <template> <el-dialog class="command-page-view-dialog" v-model="visible" :title="dialogTitle" @closed="handleClosed" destroy-on-close> <el-dialog class="command-page-view-dialog" v-model="visible" :title="dialogTitle" @closed="handleClosed" destroy-on-close :close-on-click-modal="false"> <div class="detail-container" v-if="dialogReadonly"> <div class="detail-title">机构详情</div> <el-row> <el-col :span="12"> <div class="label">部门名称</div> applications/drone-command/src/views/permissionManage/permissionRole/FormDiaLog.vue
@@ -1,7 +1,7 @@ <template> <el-dialog class="command-page-view-dialog" v-model="visible" :title="dialogTitle" @closed="handleClosed" destroy-on-close> <el-dialog class="command-page-view-dialog" v-model="visible" :title="dialogTitle" @closed="handleClosed" destroy-on-close :close-on-click-modal="false"> <div class="detail-container" v-if="dialogReadonly"> <div class="detail-title">角色详情</div> <el-row> <el-col :span="12"> <div class="label">角色名称</div> applications/drone-command/src/views/permissionManage/permissionUser/FormDiaLog.vue
@@ -1,5 +1,6 @@ <template> <el-dialog class="command-page-view-dialog" v-model="visible" :title="dialogTitle" @closed="handleClosed" destroy-on-close> <el-dialog class="command-page-view-dialog" v-model="visible" :title="dialogTitle" @closed="handleClosed" destroy-on-close :close-on-click-modal="false"> <div class="detail-container" v-if="dialogReadonly"> <div class="detail-title">用户详情</div> <el-row> applications/drone-command/src/views/recordManage/historyTracks/index.vue
@@ -39,12 +39,22 @@ </el-form> <div class="command-table-toolbar"> <el-button :icon="Download" color="#1A2652" type="primary" @click="exportFile" :loading="exportLoading">导出</el-button> <el-button :icon="Download" color="#1A2652" type="primary" @click="exportFile" :loading="exportLoading" :disabled="!selectionList.length" > 导出 </el-button> </div> <div class="command-table-container" v-loading="loading" element-loading-background="rgba(5, 5, 15, 0.6)"> <div class="command-table-content command-table-content-bg"> <el-table class="command-table" :data="list"> <el-table class="command-table" :data="list" ref="tableRef" @selection-change="handleSelectionChange"> <el-table-column type="selection" width="48" /> <el-table-column type="index" show-overflow-tooltip width="64" label="序号" /> <el-table-column prop="droneName" show-overflow-tooltip width="140" label="无人机名称" /> <el-table-column prop="serialNo" show-overflow-tooltip label="无人机序列号" /> @@ -82,7 +92,7 @@ <script setup> import { Search, RefreshRight, Download } from '@element-plus/icons-vue' import { onMounted, ref } from 'vue' import { onMounted, ref, nextTick } from 'vue' import { exportFwDroneFlightRecordApi, fwDroneFlightRecordPageApi } from './fwDroneFlightRecord' import { blobDownload, dateRangeFormat } from '@ztzf/utils' import TrajectoryDiaLog from '@/views/recordManage/historyTracks/TrajectoryDiaLog.vue' @@ -97,6 +107,8 @@ const total = ref(0) // 总条数 const loading = ref(true) // 列表加载中 const list = ref([]) // 列表数据 const tableRef = ref(null) const selectionList = ref([]) const queryParamsRef = ref(null) // 查询表单实例 const dateRange = ref([]) const exportLoading = ref(false) @@ -111,6 +123,9 @@ const res = await fwDroneFlightRecordPageApi(params) list.value = res?.data?.data?.records ?? [] total.value = res?.data?.data?.total ?? 0 selectionList.value = [] await nextTick() tableRef.value?.clearSelection() } finally { loading.value = false } @@ -141,8 +156,14 @@ function exportFile() { const range = dateRangeFormat(dateRange.value) const ids = selectionList.value.map(item => item.id).filter(Boolean) exportLoading.value = true exportFwDroneFlightRecordApi({ ...searchParams.value, start_time: range[0], end_time: range[1] }) exportFwDroneFlightRecordApi({ ...searchParams.value, start_time: range?.[0], end_time: range?.[1], id: ids.join(','), }) .then(res => { blobDownload(res) }) @@ -151,6 +172,10 @@ }) } function handleSelectionChange(selection) { selectionList.value = selection || [] } function handleView(row) { dialogRef.value?.open({ mode: 'view', row: { ...row } }) }