src/views/equipmentManagement/inspectionManagement/components/formDia.vue
@@ -5,8 +5,8 @@
      <el-form ref="formRef" :model="form" :rules="rules" label-width="120px">
        <el-row>
          <el-col :span="12">
            <el-form-item label="设备名称" prop="taskId">
              <el-select v-model="form.taskId" @change="setDeviceModel" filterable>
            <el-form-item label="设备名称" prop="taskIds">
              <el-select v-model="form.taskIds" @change="setDeviceModel" multiple filterable>
                <el-option
                  v-for="(item, index) in deviceOptions"
                  :key="index"
@@ -114,7 +114,7 @@
const deviceOptions = ref([]);
const data = reactive({
  form: {
    taskId: undefined,
    taskIds: [],
    taskName: undefined,
    inspector: '',
    inspectorIds: '',
@@ -125,7 +125,7 @@
    time: ''
  },
  rules: {
    taskId: [{ required: true, message: "请选择设备", trigger: "change" },],
    taskIds: [{ required: true, message: "请选择设备", trigger: "change" },],
    inspector: [{ required: true, message: "请输入巡检人", trigger: "blur" },],
  }
})
@@ -137,10 +137,17 @@
  deviceOptions.value = data;
};
const setDeviceModel = (id) => {
  const option = deviceOptions.value.find((item) => item.id === id);
  if (option) {
    form.value.taskName = option.deviceName;
const setDeviceModel = (ids) => {
  if (!ids || ids.length === 0) {
    form.value.taskIds = []
    form.value.taskName = undefined
    return
  }
  const selectedDevices = deviceOptions.value.filter((item) => ids.includes(item.id))
  if (selectedDevices.length > 0) {
    form.value.taskIds = ids
    form.value.taskName = selectedDevices.map(d => d.deviceName).join(',')
  }
}
@@ -164,9 +171,10 @@
    form.value = {...row}
    form.value.inspector = form.value.inspectorIds.split(',').map(Number)
    
    // 如果有设备ID,自动设置设备信息
    if (form.value.taskId) {
      setDeviceModel(form.value.taskId);
    // 如果有设备ID数组,转换为数组并设置设备信息
    if (row.taskIds) {
      form.value.taskIds = row.taskIds.split(',').map(id => parseInt(id.trim()))
      setDeviceModel(form.value.taskIds)
    }
  }
}
@@ -185,7 +193,7 @@
  }
  // 重置表单数据确保设备信息正确重置
  form.value = {
    taskId: undefined,
    taskIds: [],
    taskName: undefined,
    inspector: '',
    inspectorIds: '',
@@ -205,6 +213,11 @@
        form.value.inspectorIds = form.value.inspector.join(',')
        delete form.value.inspector
        
        // 处理 taskIds 和 taskName
        if (form.value.taskIds && Array.isArray(form.value.taskIds)) {
          form.value.taskIds = form.value.taskIds.join(',')
        }
        if (form.value.frequencyType === 'WEEKLY') {
          let frequencyDetail = ''
          frequencyDetail = form.value.week + ',' + form.value.time