From 937a9197970df68d7853afef2f4226ce4b893bbc Mon Sep 17 00:00:00 2001 From: zss <zss@example.com> Date: 星期五, 28 二月 2025 15:17:40 +0800 Subject: [PATCH] 检验任务添加实验结果 --- src/components/caorui/Department/components/Records/control/index.vue | 643 ++++++++++++++++++++++++++++++---------------------------- 1 files changed, 331 insertions(+), 312 deletions(-) diff --git a/src/components/caorui/Department/components/Records/control/index.vue b/src/components/caorui/Department/components/Records/control/index.vue index 3a934e4..85a2b3f 100644 --- a/src/components/caorui/Department/components/Records/control/index.vue +++ b/src/components/caorui/Department/components/Records/control/index.vue @@ -1,331 +1,350 @@ <template> - <div> - <el-dialog - :visible.sync="dialogVisible" - title="涓嶇鍚堝伐浣滄帶鍒跺崟" - > - <el-steps :active="active" :align-center="true" finish-status="success"> - <el-step - v-for="(item, index) in stepList" - :key="index" - :title="item.label" - style="cursor: pointer;" - @click.native="setStep(item.value)" - ></el-step> - </el-steps> - <el-divider></el-divider> - <ConditionForm - v-if="pageStatus == 0" - :condiForm.sync="mainForm.condiForm" - :currentResponsible="currentResponsible" - :disabled="active != 0" - :step="active" - :userList="userList" - @nextStep="submit" - ></ConditionForm> - <ConditionForm - v-if="pageStatus == 1" - :condiForm.sync="mainForm.condiForm" - :currentResponsible="currentResponsible" - :disabled="true" - :step="active" - :userList="userList" - @cancel="cancel" - @nextStep="submit" - ></ConditionForm> - <MeasureForm - v-if="pageStatus == 2" - :currentResponsible="currentResponsible" - :disabled="active != 2" - :handleForm.sync="mainForm.handleForm" - :step="active" - :userList="userList" - @cancel="cancel" - @nextStep="submit" - ></MeasureForm> - <RectifyForm - v-if="pageStatus == 3" - :currentResponsible="currentResponsible" - :disabled="active != 3" - :rectifyForm.sync="mainForm.rectifyForm" - :step="active" - :userList="userList" - @cancel="cancel" - @nextStep="submit" - ></RectifyForm> - <Inform - v-if="pageStatus == 4" - :disabled="active != 4" - :inform.sync="mainForm.inform" - :step="active" - :userList="userList" - @cancel="cancel" - @nextStep="submit" - ></Inform> - <el-result v-if="pageStatus == 5" icon="success" subTitle="澶勭悊瀹屾垚" title="瀹℃牳瀹屾垚"> - </el-result> - </el-dialog> - </div> + <div> + <el-dialog :visible.sync="dialogVisible" title="涓嶇鍚堝伐浣滄帶鍒跺崟"> + <el-steps :active="active" :align-center="true" finish-status="success"> + <el-step + v-for="(item, index) in stepList" + :key="index" + :title="item.label" + style="cursor: pointer;" + @click.native="setStep(item.value)" + ></el-step> + </el-steps> + <el-divider></el-divider> + <ConditionForm + v-if="pageStatus == 0" + :condiForm.sync="mainForm.condiForm" + :currentResponsible="currentResponsible" + :disabled="active != 0" + :step="active" + :userList="userList" + @nextStep="submit" + ></ConditionForm> + <ConditionForm + v-if="pageStatus == 1" + :condiForm.sync="mainForm.condiForm" + :currentResponsible="currentResponsible" + :disabled="true" + :step="active" + :userList="userList" + @cancel="cancel" + @nextStep="submit" + ></ConditionForm> + <MeasureForm + v-if="pageStatus == 2" + :currentResponsible="currentResponsible" + :disabled="active != 2" + :handleForm.sync="mainForm.handleForm" + :step="active" + :userList="userList" + @cancel="cancel" + @nextStep="submit" + ></MeasureForm> + <RectifyForm + v-if="pageStatus == 3" + :currentResponsible="currentResponsible" + :disabled="active != 3" + :rectifyForm.sync="mainForm.rectifyForm" + :step="active" + :userList="userList" + @cancel="cancel" + @nextStep="submit" + ></RectifyForm> + <Inform + v-if="pageStatus == 4" + :disabled="active != 4" + :inform.sync="mainForm.inform" + :step="active" + :userList="userList" + @cancel="cancel" + @nextStep="submit" + ></Inform> + <el-result + v-if="pageStatus == 5" + icon="success" + subTitle="澶勭悊瀹屾垚" + title="瀹℃牳瀹屾垚" + > + </el-result> + </el-dialog> + </div> </template> <script> -import ConditionForm from './Step/ConditionForm.vue' -import MeasureForm from './Step/MeasureForm.vue' -import RectifyForm from './Step/RectifyForm.vue' -import Inform from './Step/Inform.vue' +import ConditionForm from "./Step/ConditionForm.vue"; +import MeasureForm from "./Step/MeasureForm.vue"; +import RectifyForm from "./Step/RectifyForm.vue"; +import Inform from "./Step/Inform.vue"; import { - personSupervisionControlSheetPage, - getUserListApi, - addOrUpdatePersonSupervisionControl -} from "../../../../../../assets/api/api" + personSupervisionControlSheetPage, + getUserListApi, + addOrUpdatePersonSupervisionControl +} from "../../../../../../assets/api/api"; export default { - components: { - ConditionForm, MeasureForm, RectifyForm, Inform - }, - data() { - return { - active: 0, - pageStatus: 0, - dialogVisible: false, - currentResponsible: undefined, - stepList: [{ - label: '宸ヤ綔鎯呭喌', - value: 0 - }, { - label: '琚洃鐫d汉纭', - value: 1 - }, { - label: '澶勭悊鎺柦', - value: 2 - }, { - label: '绾犳鎺柦', - value: 3 - }, { - label: '閫氱煡瀹㈡埛', - value: 4 - } - ], - supervisionRecordId: undefined, - controlId: undefined, - mainForm: { - condiForm: { - departmentHeadId: undefined, - supervisedPersonId: undefined, - discoveryApproach: [], - notConformDetails: undefined, - nonConformityClause: undefined, - }, - handleForm: { - responsibleDepartmentPersonId: undefined, - treatmentMeasures: undefined - }, - rectifyForm: { - correctiveMeasure: undefined, - correctiveMeasureFollowTracks: undefined, - correctiveMeasurePersonId: undefined - }, - inform: { - whetherInformCustomer: undefined, - whetherResumeWork: undefined, - qualitySupervisorId: undefined - } - }, - userList: [], - controlType: undefined + components: { + ConditionForm, + MeasureForm, + RectifyForm, + Inform + }, + data() { + return { + active: 0, + pageStatus: 0, + dialogVisible: false, + currentResponsible: undefined, + stepList: [ + { + label: "宸ヤ綔鎯呭喌", + value: 0 + }, + { + label: "琚洃鐫d汉纭", + value: 1 + }, + { + label: "澶勭悊鎺柦", + value: 2 + }, + { + label: "绾犳鎺柦", + value: 3 + }, + { + label: "閫氱煡瀹㈡埛", + value: 4 } - }, - methods: { - /** - * @desc 鍒濆鍖栬〃鍗� - */ - initForm() { - this.mainForm.condiForm.departmentHeadId = undefined - this.mainForm.condiForm.supervisedPersonId = undefined - this.mainForm.condiForm.discoveryApproach = [] - this.mainForm.condiForm.notConformDetails = undefined - this.mainForm.condiForm.nonConformityClause = undefined - this.mainForm.handleForm.responsibleDepartmentPersonId = undefined - this.mainForm.handleForm.treatmentMeasures = undefined - this.mainForm.rectifyForm.correctiveMeasure = undefined - this.mainForm.rectifyForm.correctiveMeasureFollowTracks = undefined - this.mainForm.rectifyForm.correctiveMeasurePersonId = undefined - this.mainForm.inform.whetherInformCustomer = undefined - this.mainForm.inform.whetherResumeWork = undefined - this.mainForm.inform.qualitySupervisorId = undefined + ], + supervisionRecordId: undefined, + controlId: undefined, + mainForm: { + condiForm: { + departmentHeadId: undefined, + supervisedPersonId: undefined, + discoveryApproach: [], + notConformDetails: undefined, + nonConformityClause: undefined }, - /** - * @desc 鎵撳紑妯℃�佹 - * @param {鐩戠潱璁板綍id} id - */ - openDialog(id) { - this.dialogVisible = true - this.getUserList() - this.getControlData(id) + handleForm: { + responsibleDepartmentPersonId: undefined, + treatmentMeasures: undefined }, - /** - * @desc 鑾峰彇鐢ㄦ埛淇℃伅 - */ - async getUserList() { - const { code, data } = await this.$axios({ - method: 'get', - url: getUserListApi, - }) - if(code == 200) { - this.userList = data - } + rectifyForm: { + correctiveMeasure: undefined, + correctiveMeasureFollowTracks: undefined, + correctiveMeasurePersonId: undefined }, - /** - * @desc 鏌ヨ鐩戠潱璁板綍鎺у埗鍗� - * @param {鐩戠潱璁板綍id} id - */ - async getControlData(id) { - const { code, data } = await this.$axios({ - method: 'get', - url: personSupervisionControlSheetPage, - params: {id} - }) - if(code == 202) { - this.controlType = '鏂板' - this.supervisionRecordId = id - this.active = 0 - this.pageStatus = 0 - this.controlId = undefined - this.initForm() - } - if(code == 200) { - this.currentResponsible = data.currentResponsible - this.controlType = '缂栬緫' - this.controlId = data.id - this.active = Number(data.currentState) - this.pageStatus = Number(data.currentState === 4 ? 0 : data.currentState) - // 绗�1銆�2姝ユ暟鎹� - this.mainForm.condiForm.departmentHeadId = data.departmentHeadId - this.mainForm.condiForm.supervisedPersonId = data.supervisedPersonId - this.mainForm.condiForm.notConformDetails = data.notConformDetails - this.mainForm.condiForm.nonConformityClause = data.nonConformityClause - // 绗�3姝ユ暟鎹� - this.mainForm.handleForm.responsibleDepartmentPersonId = data.responsibleDepartmentPersonId - this.mainForm.handleForm.treatmentMeasures = data.treatmentMeasures - // 绗�4姝ユ暟鎹� - this.mainForm.rectifyForm.correctiveMeasure = data.correctiveMeasure - this.mainForm.rectifyForm.correctiveMeasureFollowTracks = data.correctiveMeasureFollowTracks - this.mainForm.rectifyForm.correctiveMeasurePersonId = data.correctiveMeasurePersonId - // 绗�5姝ユ暟鎹� - this.mainForm.whetherInformCustomer = data.whetherInformCustomer - this.mainForm.whetherResumeWork = data.whetherResumeWork - this.mainForm.qualitySupervisorId = data.qualitySupervisorId - this.supervisionRecordId = data.supervisionRecordId - } - }, - submit(type) { - let currentState = undefined - if(type == 'submit') { - currentState = this.active + 1 - } else if(type == 'save') { - currentState = undefined - } - if(this.active == 0) { - let { discoveryApproach, ...condiFormRest } = this.mainForm.condiForm - let approcahStr = discoveryApproach.join(',') - this.submitForm({ - id: this.controlId, - supervisionRecordId: this.supervisionRecordId, - discoveryApproach: approcahStr, - currentState: currentState, - discovererDate: this.$moment().format('YYYY-MM-DD HH:mm:ss'), - ...condiFormRest - }) - } - if(this.active == 1) { - let { discoveryApproach, ...condiFormRest } = this.mainForm.condiForm - let approcahStr = discoveryApproach.join(',') - this.submitForm({ - id: this.controlId, - supervisionRecordId: this.supervisionRecordId, - discoveryApproach: approcahStr, - currentState: currentState, - supervisedPersonDate: this.$moment().format('YYYY-MM-DD'), - ...condiFormRest - }) - } - if(this.active == 2) { - let { handleForm } = this.mainForm - this.submitForm({ - id: this.controlId, - supervisionRecordId: this.supervisionRecordId, - currentState: currentState, - responsibleDepartmentDate: this.$moment().format('YYYY-MM-DD HH:mm:ss'), - ...handleForm - }) - } - if(this.active == 3) { - let { rectifyForm } = this.mainForm - this.submitForm({ - id: this.controlId, - supervisionRecordId: this.supervisionRecordId, - currentState: currentState, - correctiveMeasureDate: this.$moment().format('YYYY-MM-DD HH:mm:ss'), - ...rectifyForm - }) - } - if(this.active == 4) { - let { inform } = this.mainForm - this.submitForm({ - id: this.controlId, - supervisionRecordId: this.supervisionRecordId, - currentState: currentState, - qualitySupervisorDate: this.$moment().format('YYYY-MM-DD HH:mm:ss'), - ...inform - }) - } - }, - /** - * @desc 鎻愪氦琛ㄥ崟 - */ - async submitForm(form) { - let user = JSON.parse(localStorage.getItem('user')); - const { code } = await this.$axios({ - method: 'post', - url: addOrUpdatePersonSupervisionControl, - data: { - currentResponsible: user.name, - ...form - }, - noQs: true - }) - if(this.controlType == '鏂板') { - if(code == 200) { - this.$message.success('鎻愪氦鎴愬姛') - } - } else if(this.controlType == '缂栬緫') { - if(code == 200) { - this.$message.success('鎻愪氦鎴愬姛') - } - } - this.dialogVisible = false - }, - /** - * @desc 椹冲洖 - */ - cancel() { - let currentState = this.active - 1 - this.submitForm({ - id: this.controlId, - supervisionRecordId: this.supervisionRecordId, - currentState: currentState, - }) - }, - setStep(e) { - this.pageStatus = e + inform: { + whetherInformCustomer: undefined, + whetherResumeWork: undefined, + qualitySupervisorId: undefined } + }, + userList: [], + controlType: undefined + }; + }, + methods: { + /** + * @desc 鍒濆鍖栬〃鍗� + */ + initForm() { + this.mainForm.condiForm.departmentHeadId = undefined; + this.mainForm.condiForm.supervisedPersonId = undefined; + this.mainForm.condiForm.discoveryApproach = []; + this.mainForm.condiForm.notConformDetails = undefined; + this.mainForm.condiForm.nonConformityClause = undefined; + this.mainForm.handleForm.responsibleDepartmentPersonId = undefined; + this.mainForm.handleForm.treatmentMeasures = undefined; + this.mainForm.rectifyForm.correctiveMeasure = undefined; + this.mainForm.rectifyForm.correctiveMeasureFollowTracks = undefined; + this.mainForm.rectifyForm.correctiveMeasurePersonId = undefined; + this.mainForm.inform.whetherInformCustomer = undefined; + this.mainForm.inform.whetherResumeWork = undefined; + this.mainForm.inform.qualitySupervisorId = undefined; + }, + /** + * @desc 鎵撳紑妯℃�佹 + * @param {鐩戠潱璁板綍id} id + */ + openDialog(id) { + this.dialogVisible = true; + this.getUserList(); + this.getControlData(id); + }, + /** + * @desc 鑾峰彇鐢ㄦ埛淇℃伅 + */ + async getUserList() { + const { code, data } = await this.$axios({ + method: "get", + url: getUserListApi + }); + if (code == 200) { + this.userList = data; + } + }, + /** + * @desc 鏌ヨ鐩戠潱璁板綍鎺у埗鍗� + * @param {鐩戠潱璁板綍id} id + */ + async getControlData(id) { + const { code, data } = await this.$axios({ + method: "get", + url: personSupervisionControlSheetPage, + params: { id } + }); + if (code == 202) { + this.controlType = "鏂板"; + this.supervisionRecordId = id; + this.active = 0; + this.pageStatus = 0; + this.controlId = undefined; + this.initForm(); + } + if (code == 200) { + this.currentResponsible = data.currentResponsible; + this.controlType = "缂栬緫"; + this.controlId = data.id; + this.active = Number(data.currentState); + this.pageStatus = Number( + data.currentState === 4 ? 0 : data.currentState + ); + // 绗�1銆�2姝ユ暟鎹� + this.mainForm.condiForm.departmentHeadId = data.departmentHeadId; + this.mainForm.condiForm.supervisedPersonId = data.supervisedPersonId; + this.mainForm.condiForm.notConformDetails = data.notConformDetails; + this.mainForm.condiForm.nonConformityClause = data.nonConformityClause; + // 绗�3姝ユ暟鎹� + this.mainForm.handleForm.responsibleDepartmentPersonId = + data.responsibleDepartmentPersonId; + this.mainForm.handleForm.treatmentMeasures = data.treatmentMeasures; + // 绗�4姝ユ暟鎹� + this.mainForm.rectifyForm.correctiveMeasure = data.correctiveMeasure; + this.mainForm.rectifyForm.correctiveMeasureFollowTracks = + data.correctiveMeasureFollowTracks; + this.mainForm.rectifyForm.correctiveMeasurePersonId = + data.correctiveMeasurePersonId; + // 绗�5姝ユ暟鎹� + this.mainForm.whetherInformCustomer = data.whetherInformCustomer; + this.mainForm.whetherResumeWork = data.whetherResumeWork; + this.mainForm.qualitySupervisorId = data.qualitySupervisorId; + this.supervisionRecordId = data.supervisionRecordId; + } + }, + submit(type) { + let currentState = undefined; + if (type == "submit") { + currentState = this.active + 1; + } else if (type == "save") { + currentState = undefined; + } + if (this.active == 0) { + let { discoveryApproach, ...condiFormRest } = this.mainForm.condiForm; + let approcahStr = discoveryApproach.join(","); + this.submitForm({ + id: this.controlId, + supervisionRecordId: this.supervisionRecordId, + discoveryApproach: approcahStr, + currentState: currentState, + discovererDate: this.$moment().format("YYYY-MM-DD HH:mm:ss"), + ...condiFormRest + }); + } + if (this.active == 1) { + let { discoveryApproach, ...condiFormRest } = this.mainForm.condiForm; + let approcahStr = discoveryApproach.join(","); + this.submitForm({ + id: this.controlId, + supervisionRecordId: this.supervisionRecordId, + discoveryApproach: approcahStr, + currentState: currentState, + supervisedPersonDate: this.$moment().format("YYYY-MM-DD"), + ...condiFormRest + }); + } + if (this.active == 2) { + let { handleForm } = this.mainForm; + this.submitForm({ + id: this.controlId, + supervisionRecordId: this.supervisionRecordId, + currentState: currentState, + responsibleDepartmentDate: this.$moment().format( + "YYYY-MM-DD HH:mm:ss" + ), + ...handleForm + }); + } + if (this.active == 3) { + let { rectifyForm } = this.mainForm; + this.submitForm({ + id: this.controlId, + supervisionRecordId: this.supervisionRecordId, + currentState: currentState, + correctiveMeasureDate: this.$moment().format("YYYY-MM-DD HH:mm:ss"), + ...rectifyForm + }); + } + if (this.active == 4) { + let { inform } = this.mainForm; + this.submitForm({ + id: this.controlId, + supervisionRecordId: this.supervisionRecordId, + currentState: currentState, + qualitySupervisorDate: this.$moment().format("YYYY-MM-DD HH:mm:ss"), + ...inform + }); + } + }, + /** + * @desc 鎻愪氦琛ㄥ崟 + */ + async submitForm(form) { + let user = JSON.parse(localStorage.getItem("user")); + const { code } = await this.$axios({ + method: "post", + url: addOrUpdatePersonSupervisionControl, + data: { + currentResponsible: user.name, + ...form + }, + noQs: true + }); + if (this.controlType == "鏂板") { + if (code == 200) { + this.$message.success("鎻愪氦鎴愬姛"); + this.$parent.getTableData(); + } + } else if (this.controlType == "缂栬緫") { + if (code == 200) { + this.$message.success("鎻愪氦鎴愬姛"); + this.$parent.getTableData(); + } + } + this.dialogVisible = false; + }, + /** + * @desc 椹冲洖 + */ + cancel() { + let currentState = this.active - 1; + this.submitForm({ + id: this.controlId, + supervisionRecordId: this.supervisionRecordId, + currentState: currentState + }); + }, + setStep(e) { + this.pageStatus = e; } -} + } +}; </script> <style scoped> .dialog-footer { - width: 100%; + width: 100%; } >>> .el-dialog__footer { - padding-right: 20px; + padding-right: 20px; } </style> -- Gitblit v1.9.3