祖安之光
8 天以前 35b1970aa850c233f7f9f26a5992ece5d356fe92
src/views/work/assetMng/toolsMonitorMeasure/equipCalibrateConfirm/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="12">
            <el-form-item label="设备名称:" prop="deviceName">
              <el-input v-model.trim="state.form.deviceName" :readonly="state.title =='查看'"></el-input>
<!--              <el-input v-model.trim="state.form.deviceName" :readonly="state.title =='查看'"></el-input>-->
              <el-select clearable v-model="state.form.deviceName" :disabled="state.title =='查看'" filterable placeholder="设备名称" style="width: 100%" @change="getDeviceInfo()">
                <el-option
                    v-for="item in state.deviceList"
                    :key="item.id"
                    :label="item.deviceName"
                    :value="item.deviceName"
                />
              </el-select>
            </el-form-item>
          </el-col>
          <el-col :span="12">
@@ -50,7 +58,7 @@
            </el-form-item>
          </el-col>
        </el-row>
        <el-form-item label="校准单位:" prop="calibrationCompany">
        <el-form-item label="校准人:" prop="calibrationCompany">
          <el-input v-model.trim="state.form.calibrationCompany" :readonly="state.title =='查看'"></el-input>
        </el-form-item>
        <el-form-item label="校准结果确认:" prop="calibrationResult">
@@ -130,8 +138,13 @@
} from "@/api/innerReview/meetingReview";
import {getDepart} from "@/api/orgStructure/depart";
import {listUser} from "@/api/system/user";
import {getMaintenanceRecordDetail, updateMaintenanceRecord} from "@/api/infrastructureMng/ledger";
import {saveCalibrationMonitoringEquipment} from "@/api/assetManage/assetMng";
import {getEmployeeRecords} from "@/api/onlineEducation/user";
import {getMaintenanceRecordDetail, getStandingBookList, updateMaintenanceRecord} from "@/api/infrastructureMng/ledger";
import {
  getAnnualVerificationPlanDetail,
  getAnnualVerificationPlanList,
  saveCalibrationMonitoringEquipment
} from "@/api/assetManage/assetMng";
const emit = defineEmits(["getList"]);
const dialogVisible = ref(false)
@@ -159,7 +172,7 @@
    deviceNumber: [{ required: true, message: '请填写设备编号',  trigger: 'blur' }],
    calibrationTime: [{ required: true, message: '请选择校准日期',  trigger: 'blur' }],
    calibrationNumber: [{ required: true, message: '请填写校准证书编号',  trigger: 'blur' }],
    calibrationCompany: [{ required: true, message: '请填写校准单位',  trigger: 'blur' }],
    calibrationCompany: [{ required: true, message: '请填写校准人',  trigger: 'blur' }],
    calibrationResult: [{ required: true, message: '请选择校准结果',  trigger: 'blur' }],
    confirmUser: [{ required: true, message: '请填写确认人',  trigger: 'blur' }],
    confirmTime: [{ required: true, message: '请选择日期',  trigger: 'blur' }],
@@ -168,7 +181,8 @@
  },
  isAdmin: false,
  companyList: [],
  userList: []
  userList: [],
  deviceList: []
})
onMounted(() => {
@@ -180,6 +194,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 == '查看'){
@@ -192,6 +207,33 @@
  dialogVisible.value = true
}
const getDeviceList = async (companyId) => {
  const res = await getAnnualVerificationPlanList({pageNum: 1, pageSize: 9999, companyId})
  if(res.code == 200){
    if(Array.isArray(res.data.list) && res.data.list.length>0){
      const re = await getAnnualVerificationPlanDetail({id: res.data.list[0].id})
      if(re.code == 200){
        if(re.data && Array.isArray(re.data.annualVerificationDevices)){
          state.deviceList = re.data.annualVerificationDevices
        }
      }
    }
  }else{
    ElMessage.warning(res.message)
  }
}
const getDeviceInfo = ()=>{
  const foundNode = state.deviceList.find(i=>i.deviceName == state.form.deviceName)
  state.form = {
    ...state.form,
    deviceName: foundNode.deviceName,
    deviceNumber: foundNode.deviceNumber,
    calibrationTime: foundNode.nextCalibrationTime.substring(0,10),
    calibrationNumber: foundNode.certificateName,
    calibrationCompany: foundNode.calibrationUser
  }
}
const onSubmit = async () => {
  const valid = await superRef.value.validate()
@@ -223,20 +265,19 @@
}
const getDeptList = async ()=>{
  state.form.deviceName = ''
  state.form.deviceNumber = ''
  state.form.calibrationTime = ''
  state.form.calibrationNumber = ''
  state.form.calibrationCompany = ''
  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 ? res.data :[]
  }else{
    ElMessage.warning(res.message)
  }