| | |
| | | :before-close="handleClose" |
| | | > |
| | | <el-form :model="state.noticeForm" size="default" ref="noticeRef" :rules="title === '新增' || title === '编辑' ? state.formRules : {}" label-width="110px" > |
| | | <el-form-item label="企业名称:" prop="companyName" v-if="state.isAdmin"> |
| | | <el-select |
| | | v-model="state.noticeForm.companyName" |
| | | filterable |
| | | remote |
| | | :disabled="title == '查看' || title == '编辑' ||!state.isAdmin" |
| | | @change="selectValue" |
| | | reserve-keyword |
| | | placeholder="请输入企业名称" |
| | | remote-show-suffix |
| | | :remote-method="getCompanyList" |
| | | style="width: 100%" |
| | | > |
| | | <el-form-item label="企业名称:" prop="companyId" v-if="state.isAdmin"> |
| | | <el-select v-model="state.noticeForm.companyId" placeholder="请选择" clearable style="width: 100%" :disabled="title == '查看' || title == '编辑' || !state.isAdmin"> |
| | | <el-option |
| | | v-for="item in state.companyList" |
| | | :key="item.id" |
| | | :label="item.name" |
| | | :value="item.name" |
| | | /> |
| | | :value="item.id"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="质量方针:" v-if="showEditor" required> |
| | |
| | | companyName: '' |
| | | }, |
| | | formRules:{ |
| | | companyName: [{ required: true, message: '请选择企业', trigger: 'blur' }], |
| | | companyId: [{ required: true, message: '请选择企业', trigger: 'blur' }], |
| | | policy: [{ required: true, message: '质量方针', trigger: 'blur' }], |
| | | }, |
| | | isAdmin: false, |
| | |
| | | onMounted(() => { |
| | | |
| | | }); |
| | | const openDialog = async (type, value) => { |
| | | const openDialog = async (type, value,companyList) => { |
| | | const userInfo = JSON.parse(Cookies.get('userInfo')) |
| | | state.isAdmin = userInfo.userType === 0; |
| | | if(state.isAdmin){ |
| | | await getCompanyList() |
| | | state.companyList = companyList |
| | | } |
| | | isReview.value = false; |
| | | showEditor.value = false |
| | |
| | | companyName: '' |
| | | } |
| | | } |
| | | const selectValue = (val) => { |
| | | state.companyList.forEach(item => { |
| | | if(item.name === val){ |
| | | state.noticeForm.companyId = item.id |
| | | } |
| | | }) |
| | | } |
| | | const getCompanyList = async (val)=>{ |
| | | if(val){ |
| | | const queryParams = { |
| | | name: val |
| | | } |
| | | const res = await getCompany(queryParams) |
| | | if (res.code == 200) { |
| | | state.companyList = res.data.list |
| | | |
| | | } else { |
| | | ElMessage.warning(res.message) |
| | | } |
| | | }else { |
| | | const queryParams = { |
| | | pageSize: 10, |
| | | pageNum: 1, |
| | | } |
| | | const res = await getCompany(queryParams) |
| | | if (res.code == 200) { |
| | | state.companyList = res.data.list |
| | | } else { |
| | | ElMessage.warning(res.message) |
| | | } |
| | | } |
| | | } |
| | | |
| | | defineExpose({ |
| | | openDialog |