吉安感知网项目-前端
罗广辉
2026-01-09 f83fca47ceeb1bc50a73358dbde269e127191b75
applications/drone-command/src/views/aICrudTemplate/FormDiaLog.vue
@@ -1,6 +1,6 @@
<template>
   <el-dialog v-model="visible" :title="dialogTitle" @closed="handleClosed" destroy-on-close>
      <div v-if="dialogReadonly">
   <el-dialog v-model="visible" :title="titleEnum[dialogMode]" @closed="handleClosed" destroy-on-close>
      <div v-if="readonly">
         <el-row>
            <el-col :span="12">
               <div>设备信息: {{ formData.deviceName }}</div>
@@ -25,7 +25,7 @@
            </el-col>
         </el-row>
      </div>
      <el-form v-else ref="formRef" :model="formData" :rules="rules" :disabled="dialogReadonly" label-width="100px">
      <el-form v-else ref="formRef" :model="formData" :rules="rules" :disabled="readonly" label-width="100px">
         <el-row>
            <el-col :span="12">
               <el-form-item label="设备名称" prop="deviceName">
@@ -89,14 +89,8 @@
         </el-row>
      </el-form>
      <template #footer>
         <el-button @click="handleCancel">{{ dialogReadonly ? '关闭' : '取消' }}</el-button>
         <el-button
            v-if="!dialogReadonly"
            type="primary"
            :loading="submitting"
            :disabled="submitting"
            @click="handleSubmit"
         >
         <el-button @click="handleCancel">{{ readonly ? '关闭' : '取消' }}</el-button>
         <el-button v-if="!readonly" type="primary" :loading="submitting" :disabled="submitting" @click="handleSubmit">
            确定
         </el-button>
      </template>
@@ -133,17 +127,8 @@
const dialogMode = ref('add') // 弹框模式
const submitting = ref(false) // 提交中
const userList = ref([]) // 用户列表
const dialogReadonly = computed(() => dialogMode.value === 'view')
const dialogTitle = computed(() => {
   if (dialogMode.value === 'edit') {
      return '编辑'
   } else if (dialogMode.value === 'view') {
      return '查看'
   } else {
      return '新增'
   }
})
const readonly = computed(() => dialogMode.value === 'view')
const titleEnum = ref({ edit: '编辑', view: '查看', add: '新增' })
const rules = {
   deviceName: fieldRules(true, 50),
@@ -203,12 +188,8 @@
async function open({ mode, row } = {}) {
   dialogMode.value = mode || 'add'
   visible.value = true
   if (dialogMode.value === 'add') {
      formData.value = initForm()
   } else {
      formData.value = row
      await loadDetail()
   }
   formData.value = dialogMode.value === 'add' ? initForm() : row
   dialogMode.value !== 'add' && (await loadDetail())
}
watch(() => formData.value.belongDept, getUserList)