吉安感知网项目-前端
罗广辉
2026-01-08 f6f3fc92dbd05f18ff3996ece30feb41b457905e
applications/drone-command/src/views/basicManage/deviceStock/FormDiaLog.vue
@@ -3,13 +3,13 @@
      <el-form ref="formRef" :model="formData" :rules="rules" :disabled="dialogReadonly" label-width="100px">
         <el-row>
            <el-col :span="12">
               <el-form-item label="设备名称" prop="deviceName">
                  <el-input v-model="formData.deviceName" maxlength="50" placeholder="请输入" clearable />
               <el-form-item label="设备名称" prop="fwDeviceDTO.deviceName">
                  <el-input v-model="formData.fwDeviceDTO.deviceName" maxlength="50" placeholder="请输入" clearable />
               </el-form-item>
            </el-col>
            <el-col :span="12">
               <el-form-item label="设备类型" prop="deviceType">
                  <el-select v-model="formData.deviceType" placeholder="请选择" clearable>
               <el-form-item label="设备类型" prop="fwDeviceDTO.deviceType">
                  <el-select v-model="formData.fwDeviceDTO.deviceType" placeholder="请选择" clearable>
                     <el-option
                        v-for="item in dictObj.deviceType"
                        :key="item.dictKey"
@@ -20,8 +20,8 @@
               </el-form-item>
            </el-col>
            <el-col :span="12">
               <el-form-item label="设备属性" prop="deviceType">
                  <el-select v-model="formData.deviceAtt" placeholder="请选择" clearable>
               <el-form-item label="设备属性" prop="fwDeviceDTO.deviceAtt">
                  <el-select v-model="formData.fwDeviceDTO.deviceAtt" placeholder="请选择" clearable>
                     <el-option
                        v-for="item in dictObj.deviceAtt"
                        :key="item.dictKey"
@@ -32,18 +32,23 @@
               </el-form-item>
            </el-col>
            <el-col :span="12">
               <el-form-item label="型号" prop="deviceModel">
                  <el-input v-model="formData.deviceModel" maxlength="50" placeholder="请输入" clearable />
               <el-form-item label="型号" prop="fwDeviceDTO.deviceModel">
                  <el-input v-model="formData.fwDeviceDTO.deviceModel" maxlength="50" placeholder="请输入" clearable />
               </el-form-item>
            </el-col>
            <el-col :span="12">
               <el-form-item label="规格" prop="deviceSpecification">
                  <el-input v-model="formData.deviceSpecification" maxlength="50" placeholder="请输入" clearable />
               <el-form-item label="规格" prop="fwDeviceDTO.deviceSpecification">
                  <el-input
                     v-model="formData.fwDeviceDTO.deviceSpecification"
                     maxlength="50"
                     placeholder="请输入"
                     clearable
                  />
               </el-form-item>
            </el-col>
            <el-col :span="12">
               <el-form-item label="生产厂商" prop="manufacturer">
                  <el-input v-model="formData.manufacturer" maxlength="50" placeholder="请输入" clearable />
               <el-form-item label="生产厂商" prop="fwDeviceDTO.manufacturer">
                  <el-input v-model="formData.fwDeviceDTO.manufacturer" maxlength="50" placeholder="请输入" clearable />
               </el-form-item>
            </el-col>
            <el-col :span="12">
@@ -52,19 +57,19 @@
               </el-form-item>
            </el-col>
            <el-col :span="12">
               <el-form-item label="来源" prop="source">
                  <el-input v-model="formData.source" maxlength="50" placeholder="请输入" clearable />
               <el-form-item label="来源" prop="fwDeviceDTO.source">
                  <el-input v-model="formData.fwDeviceDTO.source" maxlength="50" placeholder="请输入" clearable />
               </el-form-item>
            </el-col>
            <el-col :span="12">
               <el-form-item label="用途" prop="purpose">
                  <el-input v-model="formData.purpose" maxlength="50" placeholder="请输入" clearable />
               <el-form-item label="用途" prop="fwDeviceTrackDTO.purpose">
                  <el-input v-model="formData.fwDeviceTrackDTO.purpose" maxlength="50" placeholder="请输入" clearable />
               </el-form-item>
            </el-col>
            <el-col :span="12">
               <el-form-item label="所属部门" prop="ownerDept">
               <el-form-item label="所属部门" prop="fwDeviceDTO.ownerDept">
                  <el-tree-select
                     v-model="formData.ownerDept"
                     v-model="formData.fwDeviceDTO.ownerDept"
                     node-key="id"
                     :data="deptTree"
                     :props="treeProps"
@@ -75,10 +80,25 @@
               </el-form-item>
            </el-col>
            <el-col :span="12">
               <el-form-item label="负责人" prop="ownerUser">
                  <el-select v-model="formData.ownerUser" placeholder="请选择" :disabled="!formData.ownerDept" clearable>
               <el-form-item label="负责人" prop="fwDeviceTrackDTO.charger">
                  <el-select
                     v-model="formData.fwDeviceTrackDTO.charger"
                     placeholder="请选择"
                     :disabled="!formData.fwDeviceDTO.ownerDept"
                     clearable
                  >
                     <el-option v-for="item in userList" :key="item.id" :label="item.name" :value="item.id" />
                  </el-select>
               </el-form-item>
            </el-col>
            <el-col :span="12">
               <el-form-item label="联系电话" prop="fwDeviceTrackDTO.contactPhone">
                  <el-input v-model="formData.fwDeviceTrackDTO.contactPhone" maxlength="50" placeholder="请输入" clearable />
               </el-form-item>
            </el-col>
            <el-col :span="12">
               <el-form-item label="联系电话" prop="fwDeviceTrackDTO.contactPhone">
                  <el-input v-model="formData.fwDeviceTrackDTO.contactPhone" maxlength="50" placeholder="请输入" clearable />
               </el-form-item>
            </el-col>
         </el-row>
@@ -106,17 +126,24 @@
import { fieldRules } from '@ztzf/utils'
const initForm = () => ({
   // 表单默认值
   deviceModel: '', // 型号
   deviceName: '', // 设备名称
   deviceSpecification: '', // 规格
   deviceType: '', // 设备类型
   manufacturer: '', // 生产厂商
   ownerDept: '', // 所属部门
   ownerUser: '', // 负责人
   purpose: '', // 用途
   source: '', // 来源
   stockOutDestination: '', // 出库去向
   'fwDeviceDTO': {
      'deviceAtt': '',
      'deviceModel': '',
      'deviceName': '',
      'deviceSpecification': '',
      'deviceType': '',
      'manufacturer': '',
      'remark': '',
      'source': '',
   },
   'fwDeviceTrackDTO': {
      'charger': '',
      'purpose': '',
      'contactPhone': '',
      'deptName': '',
      'outTarget': '',
      'outTime': '',
   },
})
const treeProps = {
   label: 'name',
@@ -153,12 +180,12 @@
   source: fieldRules(true, 50),
   purpose: fieldRules(true, 50),
   ownerDept: fieldRules(true, 50),
   ownerUser: fieldRules(true, 0),
   charger: fieldRules(true, 0),
}
const userList = ref([])
function getUserList(val) {
   formData.value.ownerUser = ''
   formData.value.charger = ''
   if (val) {
      getUserListApi(val).then(res => {
         userList.value = res.data.data.records