祖安之光
2025-11-13 2405410a2df3178ebacdc241522fa9aaf28f4a34
src/views/work/qualityInfo/infrastructureMng/repairRecord/components/editDialog.vue
@@ -9,7 +9,7 @@
        :close-on-click-modal="false"
    >
      <el-form :model="state.form" size="default" ref="superRef" :rules="state.formRules" label-width="150px" >
        <el-form-item v-if="state.isAdmin" label="企业:" prop="companyId">
        <el-form-item v-if="state.isAdmin" label="单位:" prop="companyId">
          <el-select v-model="state.form.companyId" placeholder="请选择" :disabled="state.title =='查看'" clearable @change="getDeptList">
            <el-option
                v-for="item in state.companyList"
@@ -22,7 +22,15 @@
        <el-row>
          <el-col :span="8">
            <el-form-item label="设备名称:" prop="deviceName">
              <el-input v-model.trim="state.form.deviceName" :disabled="state.title =='查看'"></el-input>
<!--              <el-input v-model.trim="state.form.deviceName" :disabled="state.title =='查看'"></el-input>-->
              <el-select clearable v-model="state.form.deviceName" :readonly="state.title =='查看'" filterable placeholder="设备名称" style="width: 100%" @change="getDeviceInfo()">
                <el-option
                    v-for="item in state.deviceList"
                    :key="item.id"
                    :label="item.name"
                    :value="item.id"
                />
              </el-select>
            </el-form-item>
          </el-col>
          <el-col :span="8">
@@ -223,7 +231,8 @@
} from "@/api/innerReview/meetingReview";
import {getDepart} from "@/api/orgStructure/depart";
import {listUser} from "@/api/system/user";
import {getMaintenanceRecordDetail, updateMaintenanceRecord} from "@/api/infrastructureMng/ledger";
import {getEmployeeRecords} from "@/api/onlineEducation/user";
import {getMaintenanceRecordDetail, getStandingBookList, updateMaintenanceRecord} from "@/api/infrastructureMng/ledger";
const emit = defineEmits(["getList"]);
const dialogVisible = ref(false)
@@ -279,7 +288,8 @@
  isAdmin: false,
  companyList: [],
  oldRecordUsers: [],
  userList: []
  userList: [],
  deviceList: []
})
onMounted(() => {
@@ -291,6 +301,7 @@
    state.companyList = companyList
  }
  await getUserList(companyId)
  await getDeviceList(companyId)
  state.title = type === 'add' ? '新增' : type ==='edit' ? '编辑' : '查看'
  state.form.companyId = companyId
  if(state.title == '编辑'||state.title == '查看'){
@@ -299,6 +310,23 @@
  dialogVisible.value = true
}
const getDeviceList = async (companyId) => {
  const res = await getStandingBookList({pageNum: 1, pageSize: 999, companyId: companyId})
  if(res.code == 200){
    state.deviceList = res.data.list || []
  }else{
    ElMessage.warning(res.message)
  }
}
const getDeviceInfo = ()=>{
  const foundNode = state.deviceList.find(i=>i.id == state.form.deviceName)
  state.form = {
    ...state.form,
    deviceName: foundNode.name,
    number: foundNode.number
  }
}
const onSubmit = async () => {
  const valid = await superRef.value.validate()
@@ -389,20 +417,16 @@
  state.form.establishmentId = null
  state.form.processId = null
  state.form.approvalId = null
  state.form.deviceName = ''
  state.form.number = ''
  await getUserList(state.form.companyId)
  await getDeviceList(state.form.companyId)
}
const getUserList = async (companyId)=> {
  const res = await listUser({pageIndex: 1,pageSize: 999, companyId: companyId})
  const res = await getEmployeeRecords({companyId: companyId})
  if(res.code == 200){
    state.userList = res.data.list?res.data.list.map(item=>{
      const user = item.id
      const {id, ...data} = item
      return {
        ...data,
        userId: user
      }
    }):[]
    state.userList = res.data.list?res.data.list:[]
  }else{
    ElMessage.warning(res.message)
  }