祖安之光
2025-11-18 00bae2110315cf9c9a533afea2c617d950f6768e
src/views/work/qualityInfo/infrastructureMng/maintainRecord/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">
@@ -197,8 +205,12 @@
} from "@/api/innerReview/meetingReview";
import {getDepart} from "@/api/orgStructure/depart";
import {listUser} from "@/api/system/user";
import {getMaintenanceServiceDetail, updateMaintenanceService} from "@/api/infrastructureMng/ledger";
import {
  getMaintenanceServiceDetail,
  getStandingBookList,
  updateMaintenanceService
} from "@/api/infrastructureMng/ledger";
import {getEmployeeRecords} from "@/api/onlineEducation/user";
const emit = defineEmits(["getList"]);
const dialogVisible = ref(false)
const superRef = ref()
@@ -298,7 +310,8 @@
  },
  isAdmin: false,
  companyList: [],
  userList: []
  userList: [],
  deviceList: []
})
onMounted(() => {
@@ -310,12 +323,31 @@
    state.companyList = companyList
  }
  await getUserList(companyId)
  await getDeviceList(companyId)
  state.title = type === 'add' ? '新增' : type ==='edit' ? '编辑' : '查看'
  state.form.companyId = companyId
  if(state.title == '编辑'||state.title == '查看'){
    await getInfo(value.id)
  }
  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,
    deviceNumber: foundNode.number
  }
}
const objectSpanMethod = ({row, column, rowIndex, columnIndex,}) => {
@@ -467,21 +499,17 @@
  state.form.checkersOne = []
  state.form.operatorsTwo = []
  state.form.checkersTwo = []
  state.form.deviceName = ''
  state.form.deviceNumber = ''
  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)
  }