applications/drone-command/src/main.js
@@ -41,6 +41,7 @@ import dayjs from 'dayjs' import 'styles/common.scss' import * as Cesium from 'cesium' import _ from 'lodash' // 视频回放 import 'video.js/dist/video-js.css' @@ -81,13 +82,14 @@ location.reload() } else { if (localStorage.getItem("isReload")) { localStorage.removeItem("isReload") localStorage.removeItem('isReload') } } window.$crudCommon = crudCommon window.axios = axios window._ = _ const app = createApp(App) for (const [key, component] of Object.entries(ElementPlusIconsVue)) { app.component(key, component) applications/drone-command/src/views/aICrudTemplate/FormDiaLog.vue
@@ -1,5 +1,5 @@ <template> <el-dialog v-model="visible" :title="titleEnum[dialogMode]" @closed="handleClosed" destroy-on-close> <el-dialog v-model="visible" :title="titleEnum[dialogMode]" :close-on-click-modal="false"> <div v-if="readonly"> <el-row> <el-col :span="12"> @@ -123,7 +123,7 @@ const emit = defineEmits(['success']) const formRef = ref(null) // 表单实例 const formData = ref(initForm()) // 表单数据 const visible = ref(false) // 弹框显隐 const visible = defineModel() // 弹框显隐 const dialogMode = ref('add') // 弹框模式 const submitting = ref(false) // 提交中 const userList = ref([]) // 用户列表 @@ -179,15 +179,9 @@ formData.value = res?.data?.data ?? {} } // 关闭后重置 function handleClosed() { formData.value = initForm() } // 打开弹框 async function open({ mode, row } = {}) { dialogMode.value = mode || 'add' visible.value = true formData.value = dialogMode.value === 'add' ? initForm() : row dialogMode.value !== 'add' && (await loadDetail()) } applications/drone-command/src/views/aICrudTemplate/index.vue
@@ -88,7 +88,7 @@ /> </div> <FormDiaLog ref="dialogRef" @success="getList" /> <FormDiaLog v-if="dialogVisible" v-model="dialogVisible" ref="dialogRef" @success="getList" /> </basic-container> </template> @@ -115,6 +115,7 @@ const selectedIds = ref([]) // 勾选的设备ID列表 const queryParamsRef = ref(null) // 查询表单实例 const dialogRef = ref(null) // 弹框实例 const dialogVisible = ref(null) // 弹框实例 const dictObj = ref({ deviceType: [], //设备类型 deviceAtt: [], //设备属性 @@ -160,11 +161,13 @@ // 查看 function handleView(row) { dialogVisible.value = true dialogRef.value?.open({ mode: 'view', row: { ...row } }) } // 编辑 function handleEdit(row) { dialogVisible.value = true dialogRef.value?.open({ mode: 'edit', row: { ...row } }) } @@ -212,6 +215,7 @@ // 新增 function handleAdd() { dialogVisible.value = true dialogRef.value?.open({ mode: 'add' }) } applications/drone-command/src/views/areaManage/precinctInfo/FormDiaLog.vue
@@ -29,18 +29,15 @@ </el-form-item> </el-col> <el-col :span="12"> <el-form-item label="位置" prop="longitude"> <el-button @click="selectLocation">{{ formData.longitude }},{{ formData.longitude }}</el-button> </el-form-item> </el-col> <el-col :span="12"> <el-form-item label="位置" prop="address"> <el-input v-model="formData.address" maxlength="50" placeholder="请输入" clearable /> </el-form-item> </el-col> <el-col :span="12"> <el-form-item label="联系方式" prop="contactPhone"> <el-input v-model="formData.contactPhone" maxlength="50" placeholder="请输入" clearable /> </el-form-item> </el-col> <el-col :span="24"> <el-form-item label="位置" prop="longitude"> <el-button @click="selectLocation" style="width: 100%"> {{ formData.longitude }}, {{ formData.longitude }}, {{ formData.address }} </el-button> </el-form-item> </el-col> </el-row> @@ -69,6 +66,7 @@ import { fieldRules } from '@ztzf/utils' import { PublicCesium } from '@/utils/cesium/publicCesium' import * as Cesium from 'cesium' import axios from 'axios' const initForm = () => ({ address: '', // 位置 @@ -185,10 +183,22 @@ visible1.value = false } async function getLocationName() { const tk = import.meta.env.VITE_APP_TDT_TOKEN const { latitude, longitude } = tempLocation.value const http = axios.create({ withCredentials: false }) const res = await http({ url: `https://api.tianditu.gov.cn/geocoder?postStr={'lon':${longitude},'lat':${latitude},'ver':1}&tk=${tk}`, method: 'get', }) formData.value.address = res.data.result.formatted_address } function handleMapConfirm() { if (tempLocation.value.longitude != null && tempLocation.value.latitude != null) { formData.value.longitude = tempLocation.value.longitude formData.value.latitude = tempLocation.value.latitude formData.value.longitude = _.round(tempLocation.value.longitude, 6) formData.value.latitude = _.round(tempLocation.value.latitude, 6) getLocationName() } visible1.value = false } applications/drone-command/src/views/areaManage/precinctInfo/index.vue
@@ -44,7 +44,7 @@ /> </div> <FormDiaLog ref="dialogRef" @success="getList" v-if="diaLogVisible" v-model="diaLogVisible" /> <FormDiaLog ref="dialogRef" @success="getList" v-if="dialogVisible" v-model="dialogVisible" /> </basic-container> </template> @@ -66,7 +66,7 @@ const selectedIds = ref([]) // 勾选的ID列表 const queryParamsRef = ref(null) // 查询表单实例 const dialogRef = ref(null) // 弹框实例 const diaLogVisible = ref(false) const dialogVisible = ref(false) // 获取列表 async function getList() { @@ -95,11 +95,13 @@ // 查看 function handleView(row) { dialogVisible.value = true dialogRef.value?.open({ mode: 'view', row: { ...row } }) } // 编辑 function handleEdit(row) { dialogVisible.value = true dialogRef.value?.open({ mode: 'edit', row: { ...row } }) } @@ -121,7 +123,7 @@ // 新增 function handleAdd() { diaLogVisible.value = true dialogVisible.value = true dialogRef.value?.open({ mode: 'add' }) }