From 5037ab3a64cc8ae81ae32569ef1ca19d80a74547 Mon Sep 17 00:00:00 2001 From: fengyuan_yang <1976974459@qq.com> Date: Fri, 31 Jul 2026 10:55:11 +0800 Subject: [PATCH] =?UTF-8?q?2026-07-31=20RoHS=E5=92=8CLab=EF=BC=9A=20?= =?UTF-8?q?=E4=BC=98=E5=8C=96=E8=8A=82=E7=82=B9=E6=9D=83=E9=99=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/lab/lab.js | 3 -- src/api/rohs/rohs.js | 3 -- src/views/modules/lab/labRecord.vue | 46 +++++++++---------- src/views/modules/rohs/rohsRecord.vue | 64 +++++++++------------------ 4 files changed, 41 insertions(+), 75 deletions(-) diff --git a/src/api/lab/lab.js b/src/api/lab/lab.js index 0cd8603..459ed2d 100644 --- a/src/api/lab/lab.js +++ b/src/api/lab/lab.js @@ -27,9 +27,6 @@ export const submitLab = data => createAPI(`/lab/submit`, 'post', data) // 查询审批信息 export const getLabApprovalList = data => createAPI(`/lab/approvalList`, 'post', data) -// 查询按钮控制信息 -export const getLabButtonCondition = data => createAPI(`/lab/buttonCondition`, 'post', data) - // 获取节点字段权限(复用工程变更接口) export const getLabNodeAuthority = data => createAPI(`/plm/changeManagement/getNodeAuthority`, 'post', data) diff --git a/src/api/rohs/rohs.js b/src/api/rohs/rohs.js index 5781d0b..c46afc8 100644 --- a/src/api/rohs/rohs.js +++ b/src/api/rohs/rohs.js @@ -42,9 +42,6 @@ export const deleteRohs = data => createAPI(`/rohs/delete`, 'post', data); // 查询审批信息 export const getRohsApprovalList = data => createAPI(`/rohs/approvalList`, 'post', data); -// 查询按钮控制信息 -export const getRohsButtonCondition = data => createAPI(`/rohs/buttonCondition`, 'post', data); - // 获取节点字段权限(复用工程变更接口) export const getRohsNodeAuthority = data => createAPI(`/plm/changeManagement/getNodeAuthority`, 'post', data); diff --git a/src/views/modules/lab/labRecord.vue b/src/views/modules/lab/labRecord.vue index 08e0e31..3504bf6 100644 --- a/src/views/modules/lab/labRecord.vue +++ b/src/views/modules/lab/labRecord.vue @@ -1206,9 +1206,7 @@ export default { rejectFlag: 'N', rejectStepId: null, createBy2: '', - isReject: 'Y', - tpProcessControl: 'N', - csProcessControl: 'N', + isReject: 'N', propertyItemList: [] } }, @@ -2282,10 +2280,20 @@ export default { return this.superAdmin || (this.modalData.createBy2 && this.modalData.createBy2.split(';').includes(this.createBy2)) }, canSaveAction () { - return !this.showModalFlag && (this.modalData.status === '草稿' || (this.modalData.status === '审批中' && this.isCurrentApprover())) + if (this.showModalFlag) { + return false + } + const hasSaveAuth = this.authUpdate || this.authDataEntry + if (!hasSaveAuth) { + return false + } + if (this.modalData.status === '草稿') { + return true + } + return this.modalData.status === '审批中' && this.isCurrentApprover() }, canAgreeAction () { - return this.authSubmit && this.isCurrentApprover() && this.modalData.status === '审批中' && this.modalData.tpProcessControl !== 'Y' && this.modalData.csProcessControl !== 'Y' + return this.authSubmit && this.isCurrentApprover() && this.modalData.status === '审批中' }, canRejectAction () { return this.authReject && this.isCurrentApprover() && this.modalData.status === '审批中' && this.modalData.isReject === 'Y' @@ -2713,10 +2721,7 @@ export default { this.$set(this.modalData, 'labApproverList', this.modalData.labApproverCodeList || []) this.$set(this.modalData, 'customerIdFlag', true) this.$set(this.modalData, 'projectIdFlag', true) - this.$set(this.modalData, 'createBy2', '') - this.$set(this.modalData, 'isReject', 'Y') - this.$set(this.modalData, 'tpProcessControl', 'N') - this.$set(this.modalData, 'csProcessControl', 'N') + this.applyModalButtonCondition(row || {}) this.$set(this.modalData, 'testerName', this.modalData.testerName || this.modalData.tester || '') this.$set(this.modalData, 'labApproverName', this.modalData.labApproverName || this.modalData.labApprover || '') Promise.all([ @@ -2731,7 +2736,6 @@ export default { this.applyLabTestLabPairToModalData(this.modalData.testLab) this.loadTesterOptions() }) - this.loadModalButtonCondition() this.loadNodeAuthority(this.modalData.site || row.site, this.modalData.stepId !== null && this.modalData.stepId !== undefined ? this.modalData.stepId : 10) this.refreshJudgeCriteriaFileList() this.refreshTestSpecFileList() @@ -2784,22 +2788,12 @@ export default { this.$set(target, 'customerName', target.customerName || source.customerName || '') this.$set(target, 'projectName', target.projectName || source.projectName || '') }, - loadModalButtonCondition () { - if (!this.modalData || !this.modalData.site || !this.modalData.referenceNo) { - return - } - const params = { - site: this.modalData.site, - referenceNo: this.modalData.referenceNo - } - api.getLabButtonCondition(params).then(({data}) => { - if (data && data.code === 0 && data.data) { - this.$set(this.modalData, 'createBy2', data.data.createBy2 || '') - this.$set(this.modalData, 'isReject', data.data.isReject || 'Y') - this.$set(this.modalData, 'tpProcessControl', data.data.tpProcessControl || 'N') - this.$set(this.modalData, 'csProcessControl', data.data.csProcessControl || 'N') - } - }) + applyModalButtonCondition (source) { + const buttonSource = source || {} + const approverNames = String(buttonSource.createBy2 || buttonSource.currentApprover || '').trim() + const isReject = String(buttonSource.isReject || '').trim().toUpperCase() === 'Y' ? 'Y' : 'N' + this.$set(this.modalData, 'createBy2', approverNames) + this.$set(this.modalData, 'isReject', isReject) }, handleModalClose () { this.judgeCriteriaDialogVisible = false diff --git a/src/views/modules/rohs/rohsRecord.vue b/src/views/modules/rohs/rohsRecord.vue index f39ae73..942125d 100644 --- a/src/views/modules/rohs/rohsRecord.vue +++ b/src/views/modules/rohs/rohsRecord.vue @@ -2263,9 +2263,7 @@ export default { rejectFlag: '', rejectStepId: null, createBy2: '', - isReject: 'Y', - tpProcessControl: 'N', - csProcessControl: 'N' + isReject: 'N' } } }, @@ -3115,10 +3113,20 @@ export default { return this.superAdmin || (this.modalData.createBy2 && this.modalData.createBy2.split(';').includes(this.createBy2)) }, canSaveAction () { - return !this.showModalFlag && (this.modalData.status === '草稿' || (this.modalData.status === '审批中' && this.isCurrentApprover())) + if (this.showModalFlag) { + return false + } + const hasSaveAuth = this.authUpdate || this.authDataEntry + if (!hasSaveAuth) { + return false + } + if (this.modalData.status === '草稿') { + return true + } + return this.modalData.status === '审批中' && this.isCurrentApprover() }, canAgreeAction () { - return this.authSubmit && this.isCurrentApprover() && this.modalData.status === '审批中' && this.modalData.tpProcessControl !== 'Y' && this.modalData.csProcessControl !== 'Y' + return this.authSubmit && this.isCurrentApprover() && this.modalData.status === '审批中' }, canRejectAction () { return this.authReject && this.isCurrentApprover() && this.modalData.status === '审批中' && this.modalData.isReject === 'Y' @@ -3372,36 +3380,12 @@ export default { this.$message.error('保存失败') }) }, - loadModalButtonCondition () { - if (!this.modalData.site || !this.modalData.referenceNo || this.modalData.status !== '审批中') { - this.$set(this.modalData, 'createBy2', '') - this.$set(this.modalData, 'isReject', 'Y') - this.$set(this.modalData, 'tpProcessControl', 'N') - this.$set(this.modalData, 'csProcessControl', 'N') - return - } - let params = { - site: this.modalData.site, - referenceNo: this.modalData.referenceNo - } - api.getRohsButtonCondition(params).then(({data}) => { - if (data && data.code === 0 && data.data) { - this.$set(this.modalData, 'createBy2', data.data.createBy2 || '') - this.$set(this.modalData, 'isReject', data.data.isReject || 'Y') - this.$set(this.modalData, 'tpProcessControl', data.data.tpProcessControl || 'N') - this.$set(this.modalData, 'csProcessControl', data.data.csProcessControl || 'N') - } else { - this.$set(this.modalData, 'createBy2', '') - this.$set(this.modalData, 'isReject', 'Y') - this.$set(this.modalData, 'tpProcessControl', 'N') - this.$set(this.modalData, 'csProcessControl', 'N') - } - }).catch(() => { - this.$set(this.modalData, 'createBy2', '') - this.$set(this.modalData, 'isReject', 'Y') - this.$set(this.modalData, 'tpProcessControl', 'N') - this.$set(this.modalData, 'csProcessControl', 'N') - }) + applyModalButtonCondition (source) { + const buttonSource = source || {} + const approverNames = String(buttonSource.createBy2 || buttonSource.currentApprover || '').trim() + const isReject = String(buttonSource.isReject || '').trim().toUpperCase() === 'Y' ? 'Y' : 'N' + this.$set(this.modalData, 'createBy2', approverNames) + this.$set(this.modalData, 'isReject', isReject) }, // 列表行选中变色 rowStyle ({row}) { @@ -3994,11 +3978,7 @@ export default { // 编辑时默认可修改工艺、最终客户和项目编码(若流程管控不可编辑则以流程为准) this.$set(this.modalData, 'endCustomerFlag', false) this.$set(this.modalData, 'projectIdFlag', false) - this.$set(this.modalData, 'createBy2', '') - this.$set(this.modalData, 'isReject', 'Y') - this.$set(this.modalData, 'tpProcessControl', 'N') - this.$set(this.modalData, 'csProcessControl', 'N') - this.loadModalButtonCondition() + this.applyModalButtonCondition(row || {}) this.ensureModalBuNo(true, false).then((buNo) => { if (!buNo) { return @@ -4090,9 +4070,7 @@ export default { rejectFlag: 'N', rejectStepId: null, createBy2: '', - isReject: 'Y', - tpProcessControl: 'N', - csProcessControl: 'N' + isReject: 'N' } this.initHsfApproverForNewRecord() this.nodeAuthorityLoaded = true