diff --git a/src/store/modules/user.js b/src/store/modules/user.js index 0dd8e09..ab1d7d6 100644 --- a/src/store/modules/user.js +++ b/src/store/modules/user.js @@ -10,6 +10,7 @@ export default { multiLanguage: '', authControl: '', erfMsgFlag: 'N', // 工程试验消息通知标志:'Y'=启用通知, 'N'=禁用通知 + lineInspectionRoleFlag: false, // 是否包含换线点检角色 // favoriteFlag: false, }, mutations: { @@ -36,6 +37,9 @@ export default { }, updateErfMsgFlag (state, erfMsgFlag) { state.erfMsgFlag = erfMsgFlag + }, + updateLineInspectionRoleFlag (state, lineInspectionRoleFlag) { + state.lineInspectionRoleFlag = lineInspectionRoleFlag } } } diff --git a/src/utils/index.js b/src/utils/index.js index 0121ed6..923fc80 100644 --- a/src/utils/index.js +++ b/src/utils/index.js @@ -56,6 +56,7 @@ export function treeDataTranslate (data, id = 'id', pid = 'parentId') { */ export function clearLoginInfo () { Vue.cookie.delete('token') + localStorage.removeItem('lineInspectionRoleFlag') store.commit('resetStore') router.options.isAddDynamicMenuRoutes = false } diff --git a/src/views/common/login-token.vue b/src/views/common/login-token.vue index 0910a04..a5a33f4 100644 --- a/src/views/common/login-token.vue +++ b/src/views/common/login-token.vue @@ -118,6 +118,7 @@ localStorage.setItem('locale', data.language) localStorage.setItem('refresh', "0") localStorage.setItem('userName', data.userName) + localStorage.setItem('lineInspectionRoleFlag', data.lineInspectionRoleFlag ? 'Y' : 'N') localStorage.setItem('accessSite', this.urlParam.site) this.getConfigParams() } else { diff --git a/src/views/common/login.vue b/src/views/common/login.vue index 9288903..c7b16d4 100644 --- a/src/views/common/login.vue +++ b/src/views/common/login.vue @@ -132,6 +132,7 @@ import { getUUID } from '@/utils' localStorage.setItem('locale', data.language) localStorage.setItem('refresh', "0") localStorage.setItem('userName', this.dataForm.userName) + localStorage.setItem('lineInspectionRoleFlag', data.lineInspectionRoleFlag ? 'Y' : 'N') this.getConfigParams() // 登录成功后关闭loading(路由跳转会自动关闭,这里作为备用) diff --git a/src/views/main.vue b/src/views/main.vue index fda3623..9bddbed 100644 --- a/src/views/main.vue +++ b/src/views/main.vue @@ -104,6 +104,14 @@ this.$store.commit('user/updateErfMsgFlag', val) } }, + lineInspectionRoleFlag: { + get() { + return this.$store.state.user.lineInspectionRoleFlag + }, + set(val) { + this.$store.commit('user/updateLineInspectionRoleFlag', val) + } + }, }, created() { this.getUserInfo() @@ -136,6 +144,10 @@ this.userDisplay = data.user.userDisplay // 工程试验消息通知标志:'Y'=启用通知, 'N'=禁用通知 this.erfMsgFlag = data.user.erfMsgFlag || 'N' + const cacheLineInspectionRoleFlag = localStorage.getItem('lineInspectionRoleFlag') === 'Y' + const backendLineInspectionRoleFlag = data.user.lineInspectionRoleFlag + this.lineInspectionRoleFlag = backendLineInspectionRoleFlag === undefined ? cacheLineInspectionRoleFlag : !!backendLineInspectionRoleFlag + localStorage.setItem('lineInspectionRoleFlag', this.lineInspectionRoleFlag ? 'Y' : 'N') } }) }, diff --git a/src/views/modules/qc/qcItem.vue b/src/views/modules/qc/qcItem.vue index 37d2c18..42b2c01 100644 --- a/src/views/modules/qc/qcItem.vue +++ b/src/views/modules/qc/qcItem.vue @@ -19,8 +19,8 @@ - - + + - + item.inspectionTypeName && item.inspectionTypeName==='PQC') + if (pqcData) { + this.pqcInspectionTypeNo = pqcData.inspectionTypeNo + } + return this.pqcInspectionTypeNo + }, + + // 换线点检角色仅允许PQC + applyPqcInspectionTypeLimit () { + if (!this.lineInspectionRoleFlag) { + return + } + const pqcInspectionTypeNo = this.getPqcInspectionTypeNo() + this.searchData.inspectionTypeNo = pqcInspectionTypeNo + this.modalData.inspectionTypeNo = pqcInspectionTypeNo + this.methodData.inspectionTypeNo = pqcInspectionTypeNo + }, + // bu改变事件 buChangeFunction () { //this.modalData.collectionConditionList = [] @@ -1212,6 +1241,13 @@ inspectionTypeSearch(tempData).then(({data}) => { if (data.code === 0) { this.options = data.rows + if (this.lineInspectionRoleFlag) { + const pqcInspectionTypeNo = this.getPqcInspectionTypeNo() + this.options = this.options.filter(item => item.inspectionTypeNo === pqcInspectionTypeNo) + this.searchData.inspectionTypeNo = pqcInspectionTypeNo + this.modalData.inspectionTypeNo = pqcInspectionTypeNo + this.methodData.inspectionTypeNo = pqcInspectionTypeNo + } } }) }, @@ -1234,6 +1270,7 @@ // 获取数据列表 getDataList () { + this.applyPqcInspectionTypeLimit() this.searchData.limit = this.pageSize this.searchData.page = this.pageIndex qcItemSearch(this.searchData).then(({data}) => { @@ -1261,7 +1298,7 @@ methodNo: '', methodName: '', updateBy: '', - inspectionTypeNo: '', + inspectionTypeNo: this.lineInspectionRoleFlag ? this.getPqcInspectionTypeNo() : '', itemSamplingQuantity: '', samplingProgrammeNo: '', samplingProgrammeDesc: '', @@ -1302,7 +1339,7 @@ methodNo: row.methodNo, methodName: row.methodName, updateBy: this.$store.state.user.name, - inspectionTypeNo: row.inspectionTypeNo, + inspectionTypeNo: this.lineInspectionRoleFlag ? this.getPqcInspectionTypeNo() : row.inspectionTypeNo, itemSamplingQuantity: row.itemSamplingQuantity, samplingProgrammeNo: row.samplingProgrammeNo, samplingProgrammeDesc: row.samplingProgrammeDesc, @@ -1353,6 +1390,7 @@ }, saveData () { + this.applyPqcInspectionTypeLimit() if (this.modalData.bu === '' || this.modalData.bu == null) { this.$message.warning('请选择BU!') return @@ -1432,7 +1470,7 @@ // 获取检验方法列表 queryMethodList () { this.methodData.bu = this.modalData.bu - this.methodData.inspectionTypeNo = this.modalData.inspectionTypeNo + this.methodData.inspectionTypeNo = this.lineInspectionRoleFlag ? this.getPqcInspectionTypeNo() : this.modalData.inspectionTypeNo queryMethodList(this.methodData).then(({data}) => { if (data && data.code === 0) { this.methodList = data.rows @@ -1489,6 +1527,7 @@ //导出excel async createExportData() { + this.applyPqcInspectionTypeLimit() this.searchData.limit = -1 this.searchData.page = 1 await qcItemSearch(this.searchData).then(({data}) => { diff --git a/src/views/modules/qc/qcMethod.vue b/src/views/modules/qc/qcMethod.vue index 4b8fdc6..f80268c 100644 --- a/src/views/modules/qc/qcMethod.vue +++ b/src/views/modules/qc/qcMethod.vue @@ -19,8 +19,8 @@ - - + + - + item.inspectionTypeName && item.inspectionTypeName==='PQC') + if (pqcData) { + this.pqcInspectionTypeNo = pqcData.inspectionTypeNo + } + return this.pqcInspectionTypeNo + }, + + // 换线点检角色仅允许PQC + applyPqcInspectionTypeLimit () { + if (!this.lineInspectionRoleFlag) { + return + } + const pqcInspectionTypeNo = this.getPqcInspectionTypeNo() + this.searchData.inspectionTypeNo = pqcInspectionTypeNo + this.modalData.inspectionTypeNo = pqcInspectionTypeNo + }, + // 查询获取数据列表 getDataList () { + this.applyPqcInspectionTypeLimit() this.searchData.limit = this.pageSize this.searchData.page = this.pageIndex qcMethodSearch(this.searchData).then(({data}) => { @@ -480,7 +509,7 @@ methodNo: '', methodName: '', methodRemark: '', - inspectionTypeNo: '' + inspectionTypeNo: this.lineInspectionRoleFlag ? this.getPqcInspectionTypeNo() : '' } this.modalDisableFlag = false this.modalFlag = true @@ -497,7 +526,7 @@ methodNo: row.methodNo, methodName: row.methodName, methodRemark: row.methodRemark, - inspectionTypeNo: row.inspectionTypeNo + inspectionTypeNo: this.lineInspectionRoleFlag ? this.getPqcInspectionTypeNo() : row.inspectionTypeNo } this.modalDisableFlag = true this.modalFlag = true @@ -531,6 +560,7 @@ // 新增/修改方法 saveData () { + this.applyPqcInspectionTypeLimit() if (this.modalData.bu === '' || this.modalData.bu == null) { this.$message.warning('请选择BU!') return @@ -588,6 +618,12 @@ inspectionTypeSearch(tempData).then(({data}) => { if (data.code === 0) { this.options = data.rows + if (this.lineInspectionRoleFlag) { + const pqcInspectionTypeNo = this.getPqcInspectionTypeNo() + this.options = this.options.filter(item => item.inspectionTypeNo === pqcInspectionTypeNo) + this.searchData.inspectionTypeNo = pqcInspectionTypeNo + this.modalData.inspectionTypeNo = pqcInspectionTypeNo + } } }) }, @@ -629,6 +665,7 @@ //导出excel async createExportData() { + this.applyPqcInspectionTypeLimit() this.searchData.limit = -1 this.searchData.page = 1 await qcMethodSearch(this.searchData).then(({data}) => { diff --git a/src/views/modules/qc/qcPartAttribute.vue b/src/views/modules/qc/qcPartAttribute.vue index e8b605c..f7a0388 100644 --- a/src/views/modules/qc/qcPartAttribute.vue +++ b/src/views/modules/qc/qcPartAttribute.vue @@ -279,7 +279,7 @@ - + 上传文件 - - + + { if (data.code === 0) { this.options = data.rows + if (this.lineInspectionRoleFlag) { + const pqcInspectionTypeNo = this.getPqcInspectionTypeNo() + this.options = this.options.filter(item => item.inspectionTypeNo === pqcInspectionTypeNo) + this.detailData.inspectionTypeNo = pqcInspectionTypeNo + this.sopData.inspectionTypeNo = pqcInspectionTypeNo + } } }) }, @@ -1655,11 +1665,16 @@ partNo: this.detailData.partNo, attributeNo: this.detailData.attributeNo || this.detailData.partNo, attributeType: this.detailData.attributeType || 'A', - createBy: this.detailData.createBy + createBy: this.detailData.createBy, + inspectionTypeNo: this.lineInspectionRoleFlag ? this.getPqcInspectionTypeNo() : '' } return searchPartAttributeDetails(param).then(({ data }) => { if (seq !== this._detailListLoadSeq) return - const rows = (data && data.rows) ? data.rows : [] + let rows = (data && data.rows) ? data.rows : [] + if (this.lineInspectionRoleFlag) { + const pqcInspectionTypeNo = this.getPqcInspectionTypeNo() + rows = rows.filter(item => item.inspectionTypeNo === pqcInspectionTypeNo || (item.inspectionTypeName && item.inspectionTypeName==='PQC')) + } this.detailList = rows.slice() }) }, @@ -1676,6 +1691,9 @@ }, checkInspectionType () { + if (this.lineInspectionRoleFlag) { + this.detailData.inspectionTypeNo = this.getPqcInspectionTypeNo() + } this.operationData.inspectionTypeNo = this.detailData.inspectionTypeNo getPartTemplateLists(this.detailData).then(({data}) => { this.operation = '' @@ -1689,11 +1707,20 @@ addFastModal () { this.itemSelections1 = null this.itemSelections2 = null + if (this.lineInspectionRoleFlag) { + this.detailData.inspectionTypeNo = this.getPqcInspectionTypeNo() + } getPartTemplateLists(this.detailData).then(({data}) => { this.itemList1 = data.row1 this.itemList2 = data.row2 }) - this.detailData.inspectionTypeNo = this.options[0].inspectionTypeNo + if (this.lineInspectionRoleFlag) { + this.detailData.inspectionTypeNo = this.getPqcInspectionTypeNo() + } else if (this.options.length > 0) { + this.detailData.inspectionTypeNo = this.options[0].inspectionTypeNo + } else { + this.detailData.inspectionTypeNo = '' + } this.checkInspectionType() this.dataListOperationSelections = [] this.operation = '' @@ -2088,12 +2115,15 @@ site: row.site, buNo: row.buNo, partNo: row.partNo, - inspectionTypeNo: '' + inspectionTypeNo: this.lineInspectionRoleFlag ? this.getPqcInspectionTypeNo() : '' } this.getFileContentList() }, getFileContentList () { + if (this.lineInspectionRoleFlag) { + this.sopData.inspectionTypeNo = this.getPqcInspectionTypeNo() + } let tempData = { orderRef1: this.sopData.site, orderRef2: this.sopData.partNo, @@ -2118,7 +2148,7 @@ buNo: this.sopData.buNo, createBy: this.$store.state.user.name, partNo: this.sopData.partNo, - inspectionTypeNo: '', + inspectionTypeNo: this.lineInspectionRoleFlag ? this.getPqcInspectionTypeNo() : '', options: this.options } //打开组件 去做新增业务 @@ -2262,6 +2292,20 @@ this.authDetail = !detailFlag this.authFile = !fileFlag }, + + // 是否包含换线点检角色 + resolveLineInspectionRoleFlag () { + return this.$store.state.user.lineInspectionRoleFlag === true || localStorage.getItem('lineInspectionRoleFlag') === 'Y' + }, + + // 获取PQC对应的检验类型编码 + getPqcInspectionTypeNo () { + const pqcData = this.options.find(item => item.inspectionTypeName && item.inspectionTypeName==='PQC') + if (pqcData) { + this.pqcInspectionTypeNo = pqcData.inspectionTypeNo + } + return this.pqcInspectionTypeNo + }, } } diff --git a/src/views/modules/qc/qcTemplate.vue b/src/views/modules/qc/qcTemplate.vue index 057392c..5b460da 100644 --- a/src/views/modules/qc/qcTemplate.vue +++ b/src/views/modules/qc/qcTemplate.vue @@ -19,8 +19,8 @@ - - + + - + item.inspectionTypeName && item.inspectionTypeName==='PQC') + if (pqcData) { + this.pqcInspectionTypeNo = pqcData.inspectionTypeNo + } + return this.pqcInspectionTypeNo + }, + + // 换线点检角色仅允许PQC + applyPqcInspectionTypeLimit () { + if (!this.lineInspectionRoleFlag) { + return + } + const pqcInspectionTypeNo = this.getPqcInspectionTypeNo() + this.searchData.inspectionTypeNo = pqcInspectionTypeNo + this.modalData.inspectionTypeNo = pqcInspectionTypeNo + }, + /** * 查询检验项目 */ @@ -1217,6 +1245,12 @@ inspectionTypeSearch(tempData).then(({data}) => { if (data.code === 0) { this.options = data.rows + if (this.lineInspectionRoleFlag) { + const pqcInspectionTypeNo = this.getPqcInspectionTypeNo() + this.options = this.options.filter(item => item.inspectionTypeNo === pqcInspectionTypeNo) + this.searchData.inspectionTypeNo = pqcInspectionTypeNo + this.modalData.inspectionTypeNo = pqcInspectionTypeNo + } } }) }, @@ -1308,6 +1342,7 @@ // 获取数据列表 getDataList () { + this.applyPqcInspectionTypeLimit() this.searchData.limit = this.pageSize this.searchData.page = this.pageIndex templateSearch(this.searchData).then(({data}) => { @@ -1345,7 +1380,7 @@ templateVersion: '', samplingProgrammeNo: '', samplingProgrammeDesc: '', - inspectionTypeNo: '', + inspectionTypeNo: this.lineInspectionRoleFlag ? this.getPqcInspectionTypeNo() : '', inspectionCycle: '', createBy: this.$store.state.user.name, updateBy: this.$store.state.user.name, @@ -1371,7 +1406,7 @@ templateVersion: row.templateVersion, samplingProgrammeNo: row.samplingProgrammeNo, samplingProgrammeDesc: row.samplingProgrammeDesc, - inspectionTypeNo: row.inspectionTypeNo, + inspectionTypeNo: this.lineInspectionRoleFlag ? this.getPqcInspectionTypeNo() : row.inspectionTypeNo, createBy: this.$store.state.user.name, updateBy: this.$store.state.user.name, samplingLevelNo: row.samplingLevelNo, @@ -1414,6 +1449,7 @@ }, saveData () { + this.applyPqcInspectionTypeLimit() if (this.modalData.bu === '' || this.modalData.bu == null) { this.$message.warning('请选择BU!') return @@ -1701,6 +1737,7 @@ //导出excel async createExportData () { + this.applyPqcInspectionTypeLimit() this.searchData.limit = -1 this.searchData.page = 1 await templateSearch(this.searchData).then(({data}) => {