From 6c76e7bdba80eb1317a08af2a5930b13e5f9ea34 Mon Sep 17 00:00:00 2001 From: gaoluyang <2820782392@qq.com> Date: 星期三, 26 二月 2025 11:03:13 +0800 Subject: [PATCH] 质量监控计划联调 --- src/views/CNAS/process/complaint/index.vue | 2 src/views/system/user/index.vue | 5 + src/views/CNAS/process/ensureResultsValidity/components/detailFormDialog.vue | 19 +--- src/views/CNAS/process/ensureResultsValidity/components/evaluateDialog.vue | 43 ++++------ src/api/cnas/process/ensureResultsValidity/qualityMonitor.js | 73 ++++++++++++++++++ src/views/CNAS/process/ensureResultsValidity/components/carryOutDialog.vue | 44 ++++------ src/views/CNAS/process/ensureResultsValidity/index.vue | 14 +- 7 files changed, 127 insertions(+), 73 deletions(-) diff --git a/src/api/cnas/process/ensureResultsValidity/qualityMonitor.js b/src/api/cnas/process/ensureResultsValidity/qualityMonitor.js index 0115f0b..eb86623 100644 --- a/src/api/cnas/process/ensureResultsValidity/qualityMonitor.js +++ b/src/api/cnas/process/ensureResultsValidity/qualityMonitor.js @@ -42,7 +42,7 @@ responseType: "blob" }) } -// 鍒犻櫎鐩戠潱璁″垝 +// 鍒犻櫎鐩戞帶璁″垝 export function delQualitySupervise(query) { return request({ url: '/qualityMonitor/delQualitySupervise', @@ -84,3 +84,74 @@ params: query }) } +// 鏂板鐩戞帶璁″垝璇︽儏 +export function addQualityMonitorDetail(query) { + return request({ + url: '/qualityMonitor/addQualityMonitorDetail', + method: 'post', + data: query + }) +} +// 淇敼鐩戞帶璁″垝璇︽儏 +export function updateQualityMonitorDetail(query) { + return request({ + url: '/qualityMonitor/updateQualityMonitorDetail', + method: 'post', + data: query + }) +} +// 鏌ヨ鐩戞帶璁″垝璇︽儏瀹炴柦淇℃伅 +export function getQualityMonitorRatify(query) { + return request({ + url: '/qualityMonitor/getQualityMonitorRatify', + method: 'get', + params: query + }) +} +// 鏂板鐩戞帶璁″垝璇︽儏瀹炴柦淇℃伅 +export function addQualityMonitorRatify(query) { + return request({ + url: '/qualityMonitor/addQualityMonitorRatify', + method: 'post', + data: query + }) +} +// 鎻愪氦鐩戞帶璁″垝璇︽儏鎵瑰噯鎰忚 +export function addQualityMonitorRatifyOpinion(query) { + return request({ + url: '/qualityMonitor/addQualityMonitorRatifyOpinion', + method: 'post', + data: query + }) +} +// 鏌ヨ鐩戞帶璇勪环 +export function getQualityMonitorEvaluate(query) { + return request({ + url: '/qualityMonitor/getQualityMonitorEvaluate', + method: 'get', + params: query + }) +} +// 鏂板鐩戞帶璇勪环鎵瑰噯 +export function addMonitorEvaluateOpinion(query) { + return request({ + url: '/qualityMonitor/addMonitorEvaluateOpinion', + method: 'post', + data: query + }) +} +// 鏂板鐩戞帶璇勪环 +export function addQualityMonitorEvaluate(query) { + return request({ + url: '/qualityMonitor/addQualityMonitorEvaluate', + method: 'post', + data: query + }) +} +// 鏂板鐩戞帶璇勪环 +export function selectUserDepartmentLimsName(query) { + return request({ + url: '/user/selectUserDepartmentLimsName', + method: 'get' + }) +} diff --git a/src/views/CNAS/process/complaint/index.vue b/src/views/CNAS/process/complaint/index.vue index db76ec4..5a998b3 100644 --- a/src/views/CNAS/process/complaint/index.vue +++ b/src/views/CNAS/process/complaint/index.vue @@ -610,7 +610,7 @@ .user-info { display: flex; align-items: center; - justify-content: end; + justify-content: flex-end; } .user-content { diff --git a/src/views/CNAS/process/ensureResultsValidity/components/carryOutDialog.vue b/src/views/CNAS/process/ensureResultsValidity/components/carryOutDialog.vue index 22a138b..205ec80 100644 --- a/src/views/CNAS/process/ensureResultsValidity/components/carryOutDialog.vue +++ b/src/views/CNAS/process/ensureResultsValidity/components/carryOutDialog.vue @@ -8,7 +8,7 @@ <el-step title="瀹炴柦"></el-step> <el-step title="鎵瑰噯"></el-step> </el-steps> - <div style="height: 620px;overflow-y: auto"> + <div style="height: 520px;overflow-y: auto"> <table border="1" cellspacing="10" class="tables"> <tr> <td class="td-title"> @@ -181,6 +181,12 @@ <script> +import { + addQualityMonitorRatify, addQualityMonitorRatifyOpinion, + getQualityMonitorRatify +} from "@/api/cnas/process/ensureResultsValidity/qualityMonitor"; +import {selectUserCondition} from "@/api/business/inspectionTask"; + export default { name: 'carryOutDialog', // import 寮曞叆鐨勭粍浠堕渶瑕佹敞鍏ュ埌瀵硅薄涓墠鑳戒娇鐢� @@ -219,8 +225,7 @@ }, // 鏌ヨ鐩戞帶璁″垝璇︽儏瀹炴柦淇℃伅 searchInfo (row) { - this.$axios.get(this.$api.qualityMonitor.getQualityMonitorRatify + '?qualityMonitorDetailsId=' + row.qualityMonitorDetailsId).then(res => { - if (res.code === 201) return + getQualityMonitorRatify({qualityMonitorDetailsId: row.qualityMonitorDetailsId}).then(res => { // 鏈塪etailsRatifyId鍒欒鏄庢彁浜よ繃瀹炴柦淇℃伅 if (res.data.detailsRatifyId) { // 鏄惁缁撴潫0:鏈粨鏉�, 1:宸茬粨鏉� @@ -252,12 +257,7 @@ }, // 鎻愪氦瀹炴柦 addInfo () { - this.$axios.post(this.$api.qualityMonitor.addQualityMonitorRatify, this.form, { - headers: { - "Content-Type": "application/json" - }, - noQs: true - }).then(res => { + addQualityMonitorRatify(this.form).then(res => { this.editLoad = false if (res.code === 201) return this.$message.success('鎿嶄綔鎴愬姛') @@ -269,12 +269,7 @@ }, // 鎻愪氦鎵瑰噯 editInfo () { - this.$axios.post(this.$api.qualityMonitor.addQualityMonitorRatifyOpinion, this.form, { - headers: { - "Content-Type": "application/json" - }, - noQs: true - }).then(res => { + addQualityMonitorRatifyOpinion(this.form).then(res => { this.editLoad = false if (res.code === 201) return this.$message.success('鎿嶄綔鎴愬姛') @@ -290,25 +285,22 @@ this.$emit('closeCarryOutDia') }, getAuthorizedPerson() { - this.$axios.get(this.$api.user.getUserMenu).then(res => { - let data = [] - res.data.forEach(a => { + selectUserCondition({ type: 1 }).then((res) => { + let data = []; + res.data.forEach((a) => { data.push({ label: a.name, - value: a.id - }) - }) - this.personList = data - }) + value: a.id, + }); + }); + this.personList = data; + }); }, } }; </script> <style scoped> ->>>.el-dialog { - margin: 20px auto 50px !important; -} .tables { table-layout: fixed; width: 100%; diff --git a/src/views/CNAS/process/ensureResultsValidity/components/detailFormDialog.vue b/src/views/CNAS/process/ensureResultsValidity/components/detailFormDialog.vue index 8225f29..66aa2b8 100644 --- a/src/views/CNAS/process/ensureResultsValidity/components/detailFormDialog.vue +++ b/src/views/CNAS/process/ensureResultsValidity/components/detailFormDialog.vue @@ -50,6 +50,11 @@ </template> <script> +import { + addQualityMonitorDetail, + updateQualityMonitorDetail +} from "@/api/cnas/process/ensureResultsValidity/qualityMonitor"; + export default { name: 'detailFormDialog', // import 寮曞叆鐨勭粍浠堕渶瑕佹敞鍏ュ埌瀵硅薄涓墠鑳戒娇鐢� @@ -106,12 +111,7 @@ let entity = this.HaveJson(this.form) entity.qualityMonitorId = this.qualityMonitorId this.upLoad = true - this.$axios.post(this.$api.qualityMonitor.addQualityMonitorDetail, entity, { - headers: { - "Content-Type": "application/json" - }, - noQs: true - }).then(res => { + addQualityMonitorDetail(entity).then(res => { this.upLoad = false if (res.code === 201) return this.$message.success('鏂板鎴愬姛') @@ -125,12 +125,7 @@ handleEdit () { const entity = this.HaveJson(this.form) this.upLoad = true - this.$axios.post(this.$api.qualityMonitor.updateQualityMonitorDetail, entity, { - headers: { - "Content-Type": "application/json" - }, - noQs: true - }).then(res => { + updateQualityMonitorDetail(entity).then(res => { this.upLoad = false if (res.code === 201) return this.$message.success('淇敼鎴愬姛') diff --git a/src/views/CNAS/process/ensureResultsValidity/components/evaluateDialog.vue b/src/views/CNAS/process/ensureResultsValidity/components/evaluateDialog.vue index d63fc50..3f671c2 100644 --- a/src/views/CNAS/process/ensureResultsValidity/components/evaluateDialog.vue +++ b/src/views/CNAS/process/ensureResultsValidity/components/evaluateDialog.vue @@ -159,6 +159,11 @@ <script> import ViewRecord from './ViewRecord.vue'; +import { + addMonitorEvaluateOpinion, addQualityMonitorEvaluate, + getQualityMonitorEvaluate, selectUserDepartmentLimsName +} from "@/api/cnas/process/ensureResultsValidity/qualityMonitor"; +import {selectUserCondition} from "@/api/business/inspectionTask"; export default { name: 'evaluateDialog', @@ -202,8 +207,7 @@ // 鏌ヨ鐩戞帶璁″垝璇︽儏瀹炴柦淇℃伅 searchInfo (row) { this.form.qualityMonitorDetailsId = row.qualityMonitorDetailsId - this.$axios.get(this.$api.qualityMonitor.getQualityMonitorEvaluate + '?qualityMonitorDetailsId=' + row.qualityMonitorDetailsId).then(res => { - if (res.code === 201) return + getQualityMonitorEvaluate({qualityMonitorDetailsId: row.qualityMonitorDetailsId}).then(res => { if (res.data === null) { this.showStep = 0 this.currentStep = 0 @@ -229,14 +233,8 @@ // 鎻愪氦 handleEdit () { if (this.currentStep === 2) { - this.$axios.post(this.$api.qualityMonitor.addMonitorEvaluateOpinion, this.form, { - headers: { - "Content-Type": "application/json" - }, - noQs: true - }).then(res => { + addMonitorEvaluateOpinion(this.form).then(res => { this.editLoad = false - if (res.code === 201) return this.$message.success('鎿嶄綔鎴愬姛') this.closeEvaDia() }).catch(err => { @@ -270,14 +268,8 @@ return } } - this.$axios.post(this.$api.qualityMonitor.addQualityMonitorEvaluate, this.form, { - headers: { - "Content-Type": "application/json" - }, - noQs: true - }).then(res => { + addQualityMonitorEvaluate(this.form).then(res => { this.editLoad = false - if (res.code === 201) return this.$message.success('鎿嶄綔鎴愬姛') this.closeEvaDia() }).catch(err => { @@ -301,20 +293,19 @@ }) }, getAuthorizedPerson() { - this.$axios.get(this.$api.user.getUserMenu).then(res => { - let data = [] - res.data.forEach(a => { + selectUserCondition({ type: 1 }).then((res) => { + let data = []; + res.data.forEach((a) => { data.push({ label: a.name, - value: a.id - }) - }) - this.personList = data - }) + value: a.id, + }); + }); + this.personList = data; + }); }, getDepartment() { - this.$axios.get(this.$api.user.selectUserDepartmentLimsName).then(res => { - if (res.code === 201) return + selectUserDepartmentLimsName().then(res => { this.form.implementDepartment = res.data }) }, diff --git a/src/views/CNAS/process/ensureResultsValidity/index.vue b/src/views/CNAS/process/ensureResultsValidity/index.vue index 7630d0b..d61209f 100644 --- a/src/views/CNAS/process/ensureResultsValidity/index.vue +++ b/src/views/CNAS/process/ensureResultsValidity/index.vue @@ -92,7 +92,7 @@ </div> <div> 鎵瑰噯鎰忚锛� - <el-input v-model="approvalRemarks" :disabled="this.ratifyStatus === 1" type="textarea"></el-input> + <el-input v-model="ratifyRemark" :disabled="this.ratifyStatus === 1" type="textarea"></el-input> </div> <span v-if="this.ratifyStatus !== 1" slot="footer" class="dialog-footer"> <el-button :loading="lookDialogLoading" @click="handleApproval(0)">涓嶆壒鍑�</el-button> @@ -148,9 +148,9 @@ </el-dialog> <!--鐢熸垚鎶ュ憡寮规--> <el-dialog :visible.sync="uploadDia1" title="鐢熸垚鎶ュ憡" width="500px"> - <div v-if="approvalRemarks"> + <div v-if="ratifyRemark"> 鎵瑰噯鎰忚锛� - <el-input v-model="approvalRemarks" :disabled="this.ratifyStatus === 1" type="textarea"></el-input> + <el-input v-model="ratifyRemark" :disabled="this.ratifyStatus === 1" type="textarea"></el-input> </div> <div style="margin: 0 auto;"> <el-upload ref="upload1" :action="action1" :auto-upload="false" :data="{qualityMonitorDetailsId: qualityMonitorDetailsId}" :file-list="fileList1" :headers="uploadHeader" @@ -468,7 +468,7 @@ currentInfo: {}, qualityMonitorDetailsId: '', ratifyStatus: '', - approvalRemarks: '', + ratifyRemark: '', downloadDialog: false, download: {}, planYear: '' @@ -608,7 +608,7 @@ handleApproval (status) { const personTrainingUpdateDto = { qualityMonitorDetailsId: this.currentInfo.qualityMonitorDetailsId, - ratifyRemark: this.approvalRemarks, + ratifyRemark: this.ratifyRemark, ratifyStatus: status } this.lookDialogLoading = true @@ -697,10 +697,10 @@ this.carryOutDia = false this.getYearDetailPlanList() }, - // 鎵撳紑鎶ュ憡寮规 + // 鎵撳紑瀹屾垚鎶ュ憡寮规 record (row) { this.qualityMonitorDetailsId = row.qualityMonitorDetailsId - this.approvalRemarks = row.approvalRemarks + this.ratifyRemark = row.ratifyRemark if (row.finishReportUrl) { this.currentInfo = row this.ratifyStatus = row.ratifyStatus diff --git a/src/views/system/user/index.vue b/src/views/system/user/index.vue index 2b823cb..95dc281 100644 --- a/src/views/system/user/index.vue +++ b/src/views/system/user/index.vue @@ -147,6 +147,11 @@ </el-select> </el-form-item> </el-col> + <el-col :span="12"> + <el-form-item label="褰掑睘閮ㄩ棬" prop="deptId"> + <treeselect v-model="form.deptId" :options="enabledDeptOptions" :show-count="true" placeholder="璇烽�夋嫨褰掑睘閮ㄩ棬" /> + </el-form-item> + </el-col> </el-row> <el-row> <el-col :span="12"> -- Gitblit v1.9.3