| | |
| | | <template> |
| | | <div> |
| | | <el-dialog :close-on-click-modal="false" :close-on-press-escape="false" |
| | | :visible.sync="formDia" |
| | | title="检测工作监督记录表" |
| | | width="70%" @close="closeRecordsDia"> |
| | | <el-dialog :close-on-click-modal="false" :close-on-press-escape="false" :visible.sync="formDia" title="检测工作监督记录表" |
| | | width="70%" @close="closeRecordsDia"> |
| | | <el-steps :active="currentStep" align-center finish-status="success"> |
| | | <el-step title="实施"></el-step> |
| | | <el-step title="批准"></el-step> |
| | |
| | | <p><span class="required-span">* </span>检测人员:</p> |
| | | </td> |
| | | <td colspan="2"> |
| | | <el-input v-if="currentStep === 0" v-model="form.testMember" |
| | | placeholder="请输入内容" |
| | | size="small"> |
| | | <el-input v-if="currentStep === 0" v-model="form.testMember" placeholder="请输入内容" size="small"> |
| | | </el-input> |
| | | <span v-else class="td-info"> {{ form.testMember }}</span> |
| | | </td> |
| | |
| | | <p><span class="required-span">* </span>监督员:</p> |
| | | </td> |
| | | <td colspan="2"> |
| | | <el-input v-if="currentStep === 0" v-model="form.supervisor" |
| | | placeholder="请输入内容" |
| | | size="small"> |
| | | <el-input v-if="currentStep === 0" v-model="form.supervisor" placeholder="请输入内容" size="small"> |
| | | </el-input> |
| | | <span v-else class="td-info"> {{ form.supervisor }}</span> |
| | | </td> |
| | |
| | | <p><span class="required-span">* </span>检测项目:</p> |
| | | </td> |
| | | <td> |
| | | <el-input v-if="currentStep === 0" v-model="form.testItem" |
| | | placeholder="请输入内容" |
| | | size="small"> |
| | | <el-input v-if="currentStep === 0" v-model="form.testItem" placeholder="请输入内容" size="small"> |
| | | </el-input> |
| | | <span v-else class="td-info"> {{ form.testItem }}</span> |
| | | </td> |
| | |
| | | <p><span class="required-span">* </span>样品编号:</p> |
| | | </td> |
| | | <td> |
| | | <el-input v-if="currentStep === 0" v-model="form.sampleNumber" |
| | | placeholder="请输入内容" |
| | | size="small"> |
| | | <el-input v-if="currentStep === 0" v-model="form.sampleNumber" placeholder="请输入内容" size="small"> |
| | | </el-input> |
| | | <span v-else class="td-info"> {{ form.sampleNumber }}</span> |
| | | </td> |
| | |
| | | <p><span class="required-span">* </span>检测日期:</p> |
| | | </td> |
| | | <td> |
| | | <el-input v-if="currentStep === 0" v-model="form.testDate" |
| | | placeholder="请输入内容" |
| | | size="small"> |
| | | <el-input v-if="currentStep === 0" v-model="form.testDate" placeholder="请输入内容" size="small"> |
| | | </el-input> |
| | | <span v-else class="td-info"> {{ form.testDate }}</span> |
| | | </td> |
| | |
| | | <p><span class="required-span">* </span>人员:</p> |
| | | </td> |
| | | <td colspan="5"> |
| | | <el-input v-if="currentStep === 0" v-model="form.personnel" |
| | | placeholder="请输入内容" |
| | | size="small"> |
| | | <el-input v-if="currentStep === 0" v-model="form.personnel" placeholder="请输入内容" size="small"> |
| | | </el-input> |
| | | <span v-else class="td-info"> {{ form.personnel }}</span> |
| | | </td> |
| | |
| | | <p><span class="required-span">* </span>仪器设备:</p> |
| | | </td> |
| | | <td colspan="5"> |
| | | <el-input v-if="currentStep === 0" v-model="form.device" |
| | | placeholder="请输入内容" |
| | | size="small"> |
| | | <el-input v-if="currentStep === 0" v-model="form.device" placeholder="请输入内容" size="small"> |
| | | </el-input> |
| | | <span v-else class="td-info"> {{ form.device }}</span> |
| | | </td> |
| | |
| | | <p><span class="required-span">* </span>工作环境:</p> |
| | | </td> |
| | | <td colspan="5"> |
| | | <el-input v-if="currentStep === 0" v-model="form.environment" |
| | | placeholder="请输入内容" |
| | | size="small"> |
| | | <el-input v-if="currentStep === 0" v-model="form.environment" placeholder="请输入内容" size="small"> |
| | | </el-input> |
| | | <span v-else class="td-info"> {{ form.environment }}</span> |
| | | </td> |
| | |
| | | <p><span class="required-span">* </span>样品采集:</p> |
| | | </td> |
| | | <td colspan="5"> |
| | | <el-input v-if="currentStep === 0" v-model="form.sampleCollection" |
| | | placeholder="请输入内容" |
| | | size="small"> |
| | | <el-input v-if="currentStep === 0" v-model="form.sampleCollection" placeholder="请输入内容" size="small"> |
| | | </el-input> |
| | | <span v-else class="td-info"> {{ form.sampleCollection }}</span> |
| | | </td> |
| | |
| | | <p><span class="required-span">* </span>样品的准备:</p> |
| | | </td> |
| | | <td colspan="5"> |
| | | <el-input v-if="currentStep === 0" v-model="form.samplePreparation" |
| | | placeholder="请输入内容" |
| | | size="small"> |
| | | <el-input v-if="currentStep === 0" v-model="form.samplePreparation" placeholder="请输入内容" size="small"> |
| | | </el-input> |
| | | <span v-else class="td-info"> {{ form.samplePreparation }}</span> |
| | | </td> |
| | |
| | | <p><span class="required-span">* </span>检测方法:</p> |
| | | </td> |
| | | <td colspan="5"> |
| | | <el-input v-if="currentStep === 0" v-model="form.detectionMethod" |
| | | placeholder="请输入内容" |
| | | size="small"> |
| | | <el-input v-if="currentStep === 0" v-model="form.detectionMethod" placeholder="请输入内容" size="small"> |
| | | </el-input> |
| | | <span v-else class="td-info"> {{ form.detectionMethod }}</span> |
| | | </td> |
| | |
| | | <p><span class="required-span">* </span>检测记录:</p> |
| | | </td> |
| | | <td colspan="5"> |
| | | <el-input v-if="currentStep === 0" v-model="form.inspectionRecord" |
| | | placeholder="请输入内容" |
| | | size="small"> |
| | | <el-input v-if="currentStep === 0" v-model="form.inspectionRecord" placeholder="请输入内容" size="small"> |
| | | </el-input> |
| | | <span v-else class="td-info"> {{ form.inspectionRecord }}</span> |
| | | </td> |
| | |
| | | <p><span class="required-span">* </span>检测报告:</p> |
| | | </td> |
| | | <td colspan="5"> |
| | | <el-input v-if="currentStep === 0" v-model="form.examiningReport" |
| | | placeholder="请输入内容" |
| | | size="small"> |
| | | <el-input v-if="currentStep === 0" v-model="form.examiningReport" placeholder="请输入内容" size="small"> |
| | | </el-input> |
| | | <span v-else class="td-info"> {{ form.examiningReport }}</span> |
| | | </td> |
| | |
| | | <p><span class="required-span">* </span>监督情况评价:</p> |
| | | </td> |
| | | <td colspan="5"> |
| | | <el-input v-if="currentStep === 0" v-model="form.supervisionEvaluation" |
| | | :rows="4" |
| | | placeholder="请输入内容" |
| | | size="small" |
| | | type="textarea"> |
| | | <el-input v-if="currentStep === 0" v-model="form.supervisionEvaluation" :rows="4" placeholder="请输入内容" |
| | | size="small" type="textarea"> |
| | | </el-input> |
| | | <span v-else class="td-info"> {{ form.supervisionEvaluation }}</span> |
| | | </td> |
| | |
| | | <p><span class="required-span">* </span>不符合处理意见:</p> |
| | | </td> |
| | | <td colspan="5"> |
| | | <el-input v-if="currentStep === 0" v-model="form.handlingAdvice" |
| | | :rows="4" |
| | | placeholder="请输入内容" |
| | | size="small" |
| | | type="textarea"> |
| | | <el-input v-if="currentStep === 0" v-model="form.handlingAdvice" :rows="4" placeholder="请输入内容" |
| | | size="small" type="textarea"> |
| | | </el-input> |
| | | <span v-else class="td-info"> {{ form.handlingAdvice }}</span> |
| | | </td> |
| | |
| | | <p><span class="required-span">* </span>请选择下一步批准人:</p> |
| | | </td> |
| | | <td v-if="currentStep === 0" colspan="5"> |
| | | <el-select v-model="form.ratifyUserId" clearable filterable |
| | | placeholder="请选择" size="small"> |
| | | <el-option v-for="(item,i) in personList" :key="i" :label="item.label" :value="item.value"> |
| | | <el-select v-model="form.ratifyUserId" clearable filterable placeholder="请选择" size="small"> |
| | | <el-option v-for="(item, i) in personList" :key="i" :label="item.label" :value="item.value"> |
| | | </el-option> |
| | | </el-select> |
| | | </td> |
| | |
| | | <p>批准负责人:</p> |
| | | </td> |
| | | <td v-if="currentStep === 1" class="td-info" colspan="5"> |
| | | {{form.ratifyUserName}} |
| | | {{ form.ratifyUserName }} |
| | | </td> |
| | | </tr> |
| | | <tr v-if="currentStep === 1 || currentStep === 2"> |
| | |
| | | <p><span class="required-span">* </span>审批结论:</p> |
| | | </td> |
| | | <td colspan="2"> |
| | | <el-input v-if="currentStep === 1" |
| | | v-model="form.ratifyOpinion" |
| | | :rows="4" |
| | | placeholder="请输入内容" |
| | | size="small" |
| | | type="textarea"> |
| | | <el-input v-if="currentStep === 1" v-model="form.ratifyOpinion" :rows="4" placeholder="请输入内容" size="small" |
| | | type="textarea"> |
| | | </el-input> |
| | | <span v-if="currentStep === 2" class="td-info"> {{ form.ratifyOpinion }}</span> |
| | | </td> |
| | |
| | | </template> |
| | | |
| | | <script> |
| | | import { |
| | | getSuperviseDetailRecord, |
| | | addSuperviseDetailRecord, |
| | | addSuperviseRecordOpinion, |
| | | } from '@/api/cnas/process/ensureResults/qualityControlPlan.js' |
| | | import { selectUserCondition } from "@/api/system/user"; |
| | | export default { |
| | | name: 'recordsDialog', |
| | | // import 引入的组件需要注入到对象中才能使用 |
| | |
| | | this.getAuthorizedPerson() |
| | | }, |
| | | // 查询监督计划详情记录流程信息 |
| | | searchInfo (row) { |
| | | this.$axios.get(this.$api.qualitySupervise.getSuperviseDetailRecord + '?superviseDetailsId=' + row.superviseDetailsId).then(res => { |
| | | searchInfo(row) { |
| | | getSuperviseDetailRecord({ superviseDetailsId: row.superviseDetailsId }).then(res => { |
| | | if (res.code === 201) return |
| | | // 有superviseDetailsRecordId说明提交过记录 |
| | | if (res.data.superviseDetailsRecordId) { |
| | |
| | | }) |
| | | }, |
| | | // 提交流程 |
| | | handleEdit () { |
| | | handleEdit() { |
| | | if (!this.form.testMember || !this.form.supervisor || !this.form.testItem || !this.form.sampleNumber |
| | | || !this.form.testDate) { |
| | | this.$message.warning('请填写完整') |
| | |
| | | } |
| | | }, |
| | | // 提交记录 |
| | | addInfo () { |
| | | addInfo() { |
| | | if (!this.form.ratifyUserId) { |
| | | this.$message.warning('请选择下一步批准人') |
| | | return |
| | | } |
| | | this.editLoad = true |
| | | this.$axios.post(this.$api.qualitySupervise.addSuperviseDetailRecord, this.form, { |
| | | headers: { |
| | | "Content-Type": "application/json" |
| | | }, |
| | | noQs: true |
| | | }).then(res => { |
| | | addSuperviseDetailRecord(this.form).then(res => { |
| | | this.editLoad = false |
| | | if (res.code === 201) return |
| | | this.$message.success('操作成功') |
| | |
| | | }) |
| | | }, |
| | | // 提交批准 |
| | | editInfo () { |
| | | editInfo() { |
| | | if (!this.form.ratifyOpinion) { |
| | | this.$message.warning('请填写审批意见') |
| | | return |
| | |
| | | return |
| | | } |
| | | this.editLoad = true |
| | | this.$axios.post(this.$api.qualitySupervise.addSuperviseRecordOpinion, this.form, { |
| | | headers: { |
| | | "Content-Type": "application/json" |
| | | }, |
| | | noQs: true |
| | | }).then(res => { |
| | | addSuperviseRecordOpinion(this.form).then(res => { |
| | | this.editLoad = false |
| | | if (res.code === 201) return |
| | | this.$message.success('操作成功') |
| | |
| | | }) |
| | | }, |
| | | // 关闭弹框 |
| | | closeRecordsDia () { |
| | | closeRecordsDia() { |
| | | this.formDia = false |
| | | this.$emit('closeRecordsDia') |
| | | }, |
| | | getAuthorizedPerson() { |
| | | this.$axios.get(this.$api.user.getUserMenu).then(res => { |
| | | selectUserCondition().then(res => { |
| | | let data = [] |
| | | res.data.forEach(a => { |
| | | data.push({ |
| | |
| | | >>>.el-dialog { |
| | | margin: 20px auto 50px !important; |
| | | } |
| | | |
| | | .tables { |
| | | table-layout: fixed; |
| | | width: 100%; |
| | | margin-top: 10px; |
| | | } |
| | | |
| | | .td-title { |
| | | height: 40px; |
| | | text-align: center; |
| | |
| | | white-space: normal; |
| | | padding: 6px; |
| | | } |
| | | |
| | | .td-info { |
| | | text-align: center; |
| | | font-size: 14px; |
| | | word-wrap: break-word; |
| | | white-space: normal; |
| | | } |
| | | |
| | | .tables td { |
| | | height: 40px; |
| | | font-size: 14px; |