diff --git a/src/api/changeManagement/changeManagement.js b/src/api/changeManagement/changeManagement.js index 56b7203..5e85bf0 100644 --- a/src/api/changeManagement/changeManagement.js +++ b/src/api/changeManagement/changeManagement.js @@ -240,6 +240,11 @@ export const tpExecute = data => createAPI(`/plm/changeManagement/tpExecute`,'po */ export const csExecute = data => createAPI(`/plm/changeManagement/csExecute`,'post',data) +/** + * 校验流程节点特殊管控权限(roleId: 9=选择评估信息, 10=选择执行信息, 11=选择执行人, 12=选择会签信息) + */ +export const checkProcessControl = data => createAPI(`/plm/changeManagement/checkProcessControl`,'post',data) + /** * 会签执行 */ diff --git a/src/views/modules/changeManagement/changeRecord.vue b/src/views/modules/changeManagement/changeRecord.vue index bf1dfd2..0fac2b1 100644 --- a/src/views/modules/changeManagement/changeRecord.vue +++ b/src/views/modules/changeManagement/changeRecord.vue @@ -1488,6 +1488,7 @@ submitChange, // 提交 tpExecute, // TP执行 csExecute, // 会签执行 + checkProcessControl, // 校验流程节点特殊管控权限 getNodeAuthority, // 获取节点权限 getApprovalList, // 查询审批信息 getBuBySite, // 根据site查bu @@ -3312,31 +3313,39 @@ // 选择模板属性 chooseFeasibilityAssessmentModel () { - this.chooseModelData2 = { - site: this.$store.state.user.site, - itemNo: '', - itemDesc: '', - functionType: 'ECN', - codeNo: this.modelList2.length > 0 ? this.modelList2[0].codeNo : '' + const doOpen = () => { + this.chooseModelData2 = { + site: this.$store.state.user.site, + itemNo: '', + itemDesc: '', + functionType: 'ECN', + codeNo: this.modelList2.length > 0 ? this.modelList2[0].codeNo : '' + } + getItemList(this.chooseModelData2).then(({data}) => { + if (data && data.code === 0) { + this.itemList2 = data.rows + this.itemList2.forEach(val => { + if (this.chooseItemList2.map(val => val.itemNo).includes(val.itemNo)) { + this.$nextTick(() => this.$refs.itemTable2.toggleRowSelection(val, true)) + } + }) + } else { + this.$alert(data.msg, '错误', { confirmButtonText: '确定' }) + } + }) + this.chooseModelFlag2 = true } - // 先清空缓存选中 - //this.$nextTick(() => this.$refs.itemTable2.clearSelection()) - getItemList(this.chooseModelData2).then(({data}) => { + if (this.modalData.changeStatus === '草稿') { + doOpen() + return + } + checkProcessControl({ site: this.$store.state.user.site, changeNo: this.modalData.changeNo, roleId: 9 }).then(({data}) => { if (data && data.code === 0) { - this.itemList2 = data.rows - this.itemList2.forEach(val => { - // 回显选中 - if (this.chooseItemList2.map(val => val.itemNo).includes(val.itemNo)) { - this.$nextTick(() => this.$refs.itemTable2.toggleRowSelection(val, true)) - } - }) + doOpen() } else { - this.$alert(data.msg, '错误', { - confirmButtonText: '确定' - }) + this.$alert(data.msg, '权限不足', { confirmButtonText: '确定' }) } }) - this.chooseModelFlag2 = true }, chooseManuFacturingCostModal () { this.manuFacturingCostFlag = true @@ -3365,32 +3374,40 @@ // 选择会签模板属性 chooseCSModel () { - this.chooseCSModelData = { - site: this.$store.state.user.site, - itemNo: '', - itemDesc: '', - functionType: 'ECN', - codeNo: this.modelCSList.length > 0 ? this.modelCSList[0].codeNo : '' + const doOpen = () => { + this.chooseCSModelData = { + site: this.$store.state.user.site, + itemNo: '', + itemDesc: '', + functionType: 'ECN', + codeNo: this.modelCSList.length > 0 ? this.modelCSList[0].codeNo : '' + } + this.$nextTick(() => this.$refs.itemCSTable.clearSelection()) + getItemList(this.chooseCSModelData).then(({data}) => { + if (data && data.code === 0) { + this.itemCSList = data.rows + this.itemCSList.forEach(val => { + if (this.chooseCSItemList.map(val => val.itemNo).includes(val.itemNo)) { + this.$nextTick(() => this.$refs.itemCSTable.toggleRowSelection(val, true)) + } + }) + } else { + this.$alert(data.msg, '错误', { confirmButtonText: '确定' }) + } + }) + this.chooseCSModelFlag = true } - // 先清空缓存选中 - this.$nextTick(() => this.$refs.itemCSTable.clearSelection()) - // 查询所有属性 - getItemList(this.chooseCSModelData).then(({data}) => { + if (this.modalData.changeStatus === '草稿') { + doOpen() + return + } + checkProcessControl({ site: this.$store.state.user.site, changeNo: this.modalData.changeNo, roleId: 12 }).then(({data}) => { if (data && data.code === 0) { - this.itemCSList = data.rows - this.itemCSList.forEach(val => { - // 回显选中的部门 - if (this.chooseCSItemList.map(val => val.itemNo).includes(val.itemNo)) { - this.$nextTick(() => this.$refs.itemCSTable.toggleRowSelection(val, true)) - } - }) + doOpen() } else { - this.$alert(data.msg, '错误', { - confirmButtonText: '确定' - }) + this.$alert(data.msg, '权限不足', { confirmButtonText: '确定' }) } }) - this.chooseCSModelFlag = true }, // 确认多选属性 @@ -3584,11 +3601,24 @@ }, chooseExecutor (row) { - this.tempExecutorRow = row - if (this.tempExecutorRow.executor == null) { - this.tempExecutorRow.executor = '' + const doOpen = () => { + this.tempExecutorRow = row + if (this.tempExecutorRow.executor == null) { + this.tempExecutorRow.executor = '' + } + this.getBaseList(2010) + } + if (this.modalData.changeStatus === '草稿') { + doOpen() + return } - this.getBaseList(2010) + checkProcessControl({ site: this.$store.state.user.site, changeNo: this.modalData.changeNo, roleId: 11 }).then(({data}) => { + if (data && data.code === 0) { + doOpen() + } else { + this.$alert(data.msg, '权限不足', { confirmButtonText: '确定' }) + } + }) }, ecnTypeHeaderChange (val,index) { @@ -4604,32 +4634,39 @@ // 选择模板属性 chooseModel () { - this.chooseModelData = { - site: this.$store.state.user.site, - itemNo: '', - itemDesc: '', - functionType: 'ECN', - codeNo: this.modelList.length > 0 ? this.modelList[0].codeNo : '' + const doOpen = () => { + this.chooseModelData = { + site: this.$store.state.user.site, + itemNo: '', + itemDesc: '', + functionType: 'ECN', + codeNo: this.modelList.length > 0 ? this.modelList[0].codeNo : '' + } + getItemList(this.chooseModelData).then(({data}) => { + if (data && data.code === 0) { + this.itemList = data.rows + this.itemList.forEach(val => { + if (this.chooseItemList.map(val => val.itemNo).includes(val.itemNo)) { + this.$nextTick(() => this.$refs.itemTable.toggleRowSelection(val, true)) + } + }) + } else { + this.$alert(data.msg, '错误', { confirmButtonText: '确定' }) + } + }) + this.chooseModelFlag = true } - // 先清空缓存选中 - //this.$nextTick(() => this.$refs.itemTable.clearSelection()) - // 查询所有属性 - getItemList(this.chooseModelData).then(({data}) => { + if (this.modalData.changeStatus === '草稿') { + doOpen() + return + } + checkProcessControl({ site: this.$store.state.user.site, changeNo: this.modalData.changeNo, roleId: 10 }).then(({data}) => { if (data && data.code === 0) { - this.itemList = data.rows - this.itemList.forEach(val => { - // 回显选中的部门 - if (this.chooseItemList.map(val => val.itemNo).includes(val.itemNo)) { - this.$nextTick(() => this.$refs.itemTable.toggleRowSelection(val, true)) - } - }) + doOpen() } else { - this.$alert(data.msg, '错误', { - confirmButtonText: '确定' - }) + this.$alert(data.msg, '权限不足', { confirmButtonText: '确定' }) } }) - this.chooseModelFlag = true }, // 查询属性