From 6ac321213584d51fc6e34a1f02d6227489fde3cf Mon Sep 17 00:00:00 2001 From: zelian_wu Date: Mon, 22 Apr 2024 14:46:54 +0800 Subject: [PATCH] 2024-04-22 --- src/api/proofing/proofingInformation.js | 5 + .../modules/proofing/requestForProofing.vue | 240 +++++++++++++++--- .../modules/quotation/requestForQuote.vue | 2 +- src/views/modules/test/requestForTest.vue | 44 ++-- 4 files changed, 234 insertions(+), 57 deletions(-) diff --git a/src/api/proofing/proofingInformation.js b/src/api/proofing/proofingInformation.js index 66ec440..0b542e6 100644 --- a/src/api/proofing/proofingInformation.js +++ b/src/api/proofing/proofingInformation.js @@ -18,6 +18,7 @@ export const proofingInformationSave = data => createAPI(`/plm/proofingInformati * @returns {*} */ export const proofingInformationEdit = data => createAPI(`/plm/proofingInformation/proofingInformationEdit`,'post',data) +export const proofingInformationEditStatus = data => createAPI(`/plm/proofingInformation/proofingInformationEditStatus`,'post',data) /** * 打样信息删除 * @param data @@ -97,3 +98,7 @@ export const closeModalDeleteFile = data => createAPI(`/plm/proofingInformation/ */ export const batchDeleteProofingFile = data => createAPI(`/plm/proofingInformation/batchDeleteProofingFile`,'post',data) + +export const searchDelegateAccess = (data)=> createAPI(`/proofing/delegate/access/list`,'post',data) +export const searchDelegateAccessByUser = (data)=> createAPI(`/proofing/delegate/access/user/list`,'post',data) + diff --git a/src/views/modules/proofing/requestForProofing.vue b/src/views/modules/proofing/requestForProofing.vue index 3898bfc..48343a7 100644 --- a/src/views/modules/proofing/requestForProofing.vue +++ b/src/views/modules/proofing/requestForProofing.vue @@ -11,7 +11,7 @@ - + @@ -49,7 +49,7 @@ - + @@ -166,7 +166,7 @@ - + @@ -174,7 +174,7 @@ 客户编码 - + @@ -202,11 +202,7 @@ - - - 跟单员 - - + @@ -242,10 +238,33 @@ - - - 工程师 - + + + + CS + + + + + + + + NPI工程师 + + + + + + + Approver + + + + + + + DelegateAccess + @@ -923,6 +942,39 @@ 关闭 + + + + + + + + + + 查询 + + + + + + + + + + 关闭 + + @@ -958,6 +1010,11 @@ import Chooselist from '@/views/modules/common/Chooselist' import proofingUploadFile from "./proofing_upload_file" import DictDataSelect from "../sys/dict-data-select.vue"; + import { + proofingInformationEditStatus, + searchDelegateAccess, + searchDelegateAccessByUser + } from "../../../api/proofing/proofingInformation"; export default { components: { DictDataSelect, @@ -1004,8 +1061,26 @@ } }, }, + computed:{ + delegateAccessName:{ + get(){ + return this.selectionDelegateAccess.map(item => item.delegateAccessName).join(';') + }, + set(val){ + + } + } + }, data () { return { + selectionDelegateAccess: [], + delegateAccessVisible:false, + baseDelegateAccessList: [], + proofingDelegateAccess:{ + delegateAccess:'', + delegateAccessName:'', + }, + activeName:'part', // 导出 exportData: [], exportName: '设备分类' + this.dayjs().format('YYYYMMDDHHmmss'), @@ -1060,6 +1135,8 @@ partName: '', engineer: '', engineerName: '', + approver: '', + approverName: '', priorityLevel: '一般', proofingNumber: 1, requiredDeliveryDate: '', @@ -1284,7 +1361,7 @@ columnProp: 'trackerName', headerAlign: 'center', align: 'center', - columnLabel: '跟单员', + columnLabel: 'CS', columnHidden: false, columnImage: false, columnSortable: false, @@ -1302,7 +1379,25 @@ columnProp: 'engineerName', headerAlign: 'center', align: 'center', - columnLabel: '工程师', + columnLabel: 'NPI工程师', + columnHidden: false, + columnImage: false, + columnSortable: false, + sortLv: 0, + status: true, + fixed: '', + columnWidth: 80 + }, + { + userId: this.$store.state.user.name, + functionId: 103001, + serialNumber: '103001Table1EngineerName', + tableId: '103001Table1', + tableName: '打样信息表', + columnProp: 'approverName', + headerAlign: 'center', + align: 'center', + columnLabel: 'Approver', columnHidden: false, columnImage: false, columnSortable: false, @@ -1969,7 +2064,7 @@ }) }, created () { - this.getDataList() + this.getDataList(); }, methods: { // ======== 分页相关方法 ======== @@ -2157,6 +2252,7 @@ * 报价信息新增模态框 */ addModal () { + this.searchDelegateAccessByUser(); this.modalDisableFlag = false this.modalFlag = true }, @@ -2180,6 +2276,8 @@ partName: row.partName, engineer: row.engineer, engineerName: row.engineerName, + approver: row.approver, + approverName: row.approverName, priorityLevel: row.priorityLevel, proofingNumber: row.proofingNumber, requiredDeliveryDate: row.requiredDeliveryDate, @@ -2204,6 +2302,7 @@ nextToDo: row.nextToDo, updateBy: this.$store.state.user.name } + this.searchDelegateAccessByUser(); this.modalDisableFlag = true this.modalFlag = true }, @@ -2213,6 +2312,7 @@ * 获取项目物料列表 */ getProjectPartList () { + this.searchDelegateAccess(); if (!this.modalData.projectId){ this.projectPartList = []; return @@ -2267,6 +2367,8 @@ return } this.confirmProjectPart(); + // 将选中的 人员信息添加到请求 + this.modalData.delegateAccessList = this.selectionDelegateAccess if (this.modalData.flag === '1'){ this.saveProofing() }else { @@ -2339,22 +2441,22 @@ this.$message.warning('请选择项目名称!') return } - if (this.modalData.engineer === '' || this.modalData.engineer == null) { - this.$message.warning('请选择工程师编码!') - return - } - if (this.modalData.engineerName === '' || this.modalData.engineerName == null) { - this.$message.warning('请选择工程师名称!') - return - } + // if (this.modalData.engineer === '' || this.modalData.engineer == null) { + // this.$message.warning('请选择工程师编码!') + // return + // } + // if (this.modalData.engineerName === '' || this.modalData.engineerName == null) { + // this.$message.warning('请选择工程师名称!') + // return + // } if (!this.modalData.proofingNumber && this.modalData.proofingNumber > 0) { this.$message.warning('请输入正确的打样数量!') return } - if (this.modalData.priorityLevel === '' || this.modalData.priorityLevel == null) { - this.$message.warning('请选择优先等级!') - return - } + // if (this.modalData.priorityLevel === '' || this.modalData.priorityLevel == null) { + // this.$message.warning('请选择优先等级!') + // return + // } if (!this.modalData.requiredDeliveryDate) { this.$message.warning('请输入要求交付日期!') return @@ -2941,14 +3043,18 @@ strVal = this.modalData.projectId } } - if (val === 2000) { + if (val === 2051) { strVal = this.modalData.trackerName conSql = " and b.site = '" + this.$store.state.user.site + "'" } - if (val === 2001) { + if (val === 2052) { strVal = this.modalData.engineerName conSql = " and b.site = '" + this.$store.state.user.site + "'" } + if (val === 2053) { + strVal = this.modalData.approverName + conSql = " and b.site = '" + this.$store.state.user.site + "'" + } this.$refs.baseList.init(val, strVal, conSql) }) }, @@ -2986,14 +3092,18 @@ this.getProjectPartList(); } } - if (this.tagNo === 2000) { + if (this.tagNo === 2051) { this.modalData.tracker = val.username this.modalData.trackerName = val.user_display } - if (this.tagNo === 2001) { + if (this.tagNo === 2052) { this.modalData.engineer = val.username this.modalData.engineerName = val.user_display } + if (this.tagNo === 2053) { + this.modalData.approver = val.username + this.modalData.approverName = val.user_display + } }, // ======== 导出相关方法 ======== @@ -3038,6 +3148,8 @@ projectName: '', tracker: '', trackerName: '', + approver: '', + approverName: '', testPartNo: '', partName: '', engineer: '', @@ -3065,7 +3177,12 @@ proofingResultStatus: 'B', nextToDo: '', createBy: this.$store.state.user.name - } + }; + this.selectionDelegateAccess = []; + this.activeName = 'part' + Object.keys(this.proofingDelegateAccess).forEach(key => { + this.proofingDelegateAccess[key] = ''; + }) }, checkSelectable(row,index){ if (this.modalData.flag === '1'){ @@ -3112,7 +3229,7 @@ let params = JSON.parse(JSON.stringify(row)) params.proofingResultStatus = status; params.proofingStatus = '下达'; - proofingInformationEdit(params).then(({data}) => { + proofingInformationEditStatus(params).then(({data}) => { if (data && data.code === 0) { this.getDataList() this.modalFlag = false @@ -3123,6 +3240,61 @@ }) } }) + }, + searchDelegateAccessByUser(){ + // 角色 ROO7 的用户 + let params = { + ...this.proofingDelegateAccess, + site:this.$store.state.user.site, + } + searchDelegateAccessByUser(params).then(({data})=>{ + if (data && data.code === 0) { + this.baseDelegateAccessList = data.rows; + }else { + this.$message.warning(data.msg) + } + }).catch((error)=>{ + this.$message.error(error) + }) + }, + handleSelectionChange(val){ + // 获得选中的 用户 + this.selectionDelegateAccess = val; + }, + handleTableClick(row,column, event,val){ + // 表格行点击选择 + this.$refs[val].toggleRowSelection(row); + }, + openDelegateAccess(){ + let rows = JSON.parse(JSON.stringify(this.selectionDelegateAccess)) + if (rows && rows.length > 0){ + this.$nextTick(()=>{ + rows.forEach(item => { + let row = this.baseDelegateAccessList.find(row=>row.delegateAccess === item.delegateAccess); + this.$refs.delegateAccesstTable.toggleRowSelection(row); + }) + }) + } + }, + searchDelegateAccess(){ + let params = { + site:this.modalData.site, + proofingNo:this.modalData.proofingNo, + } + searchDelegateAccess(params).then(({data})=>{ + if (data && data.code === 0){ + this.selectionDelegateAccess = data.rows.map(item=>{ + return { + delegateAccess:item.delegateAccess, + delegateAccessName:item.delegateAccessName, + } + }) + }else { + this.$message.warning(data.msg) + } + }).catch((error)=>{ + this.$message.error(error) + }) } } } diff --git a/src/views/modules/quotation/requestForQuote.vue b/src/views/modules/quotation/requestForQuote.vue index 4dadd66..a0aacbb 100644 --- a/src/views/modules/quotation/requestForQuote.vue +++ b/src/views/modules/quotation/requestForQuote.vue @@ -175,7 +175,7 @@ + :close-on-click-modal="false" top="10vh" :visible.sync="modalFlag" width="65%"> diff --git a/src/views/modules/test/requestForTest.vue b/src/views/modules/test/requestForTest.vue index c7f7762..efe954e 100644 --- a/src/views/modules/test/requestForTest.vue +++ b/src/views/modules/test/requestForTest.vue @@ -8,7 +8,7 @@ - + @@ -46,7 +46,7 @@ - + @@ -260,27 +260,27 @@ - - 跟单员 + + Artwork - - 工程师 + + TP工程师 - - - 设计师 + + + CQC - - - 计划员 + + + FAI @@ -1453,7 +1453,7 @@ columnProp: 'trackerName', headerAlign: 'center', align: 'center', - columnLabel: '跟单员', + columnLabel: 'Artwork', columnHidden: false, columnImage: false, columnSortable: false, @@ -1471,7 +1471,7 @@ columnProp: 'engineerName', headerAlign: 'center', align: 'center', - columnLabel: '工程师', + columnLabel: 'TP工程师', columnHidden: false, columnImage: false, columnSortable: false, @@ -2995,19 +2995,19 @@ strVal = this.modalData.projectId } } - if (val === 2000) { + if (val === 2041) { strVal = this.modalData.trackerName conSql = " and b.site = '" + this.$store.state.user.site + "'" } - if (val === 2001) { + if (val === 2042) { strVal = this.modalData.engineerName conSql = " and b.site = '" + this.$store.state.user.site + "'" } - if (val === 2003) { + if (val === 2043) { strVal = this.modalData.artworkName conSql = " and b.site = '" + this.$store.state.user.site + "'" } - if (val === 2004) { + if (val === 2044) { strVal = this.modalData.plannerName conSql = " and b.site = '" + this.$store.state.user.site + "'" } @@ -3048,19 +3048,19 @@ this.getProjectPartList(); } } - if (this.tagNo === 2000) { + if (this.tagNo === 2041) { this.modalData.tracker = val.username this.modalData.trackerName = val.user_display } - if (this.tagNo === 2001) { + if (this.tagNo === 2042) { this.modalData.engineer = val.username this.modalData.engineerName = val.user_display } - if (this.tagNo === 2003){ + if (this.tagNo === 2043){ this.modalData.artwork = val.username; this.modalData.artworkName = val.user_display; } - if (this.tagNo === 2004){ + if (this.tagNo === 2044){ this.modalData.planner = val.username; this.modalData.plannerName = val.user_display; }