From 8fbfac872e852a0ad0dbe04f2b7b69e4cff3c85c Mon Sep 17 00:00:00 2001 From: zhaowei <zhaowei> Date: 星期三, 19 三月 2025 11:26:24 +0800 Subject: [PATCH] 1、MDC零件加工管理和OEE页面开发100% 2、DNC结构树取消搜索框侧边下拉菜单改为树组件空白处右键菜单 --- src/views/dnc/base/modules/ProductStructure/ProductStructureMainTop.vue | 58 ++++++++++++++++++++++++++++++++++++++++++---------------- 1 files changed, 42 insertions(+), 16 deletions(-) diff --git a/src/views/dnc/base/modules/ProductStructure/ProductStructureMainTop.vue b/src/views/dnc/base/modules/ProductStructure/ProductStructureMainTop.vue index e961d5f..bfff7df 100644 --- a/src/views/dnc/base/modules/ProductStructure/ProductStructureMainTop.vue +++ b/src/views/dnc/base/modules/ProductStructure/ProductStructureMainTop.vue @@ -1,5 +1,5 @@ <template> - <div v-if="+currentTreeNodeInfo.type!==4"> + <div> <a-tabs v-model="activeTabKey" @contextmenu.native="e=>e.preventDefault()" @change="handleTabChange" v-if="Object.keys(currentTreeNodeInfo).length!==0"> <a-tab-pane :key="1" tab="NC绠$悊" v-if="+currentTreeNodeInfo.type===5||+currentTreeNodeInfo.type===6"> @@ -69,6 +69,12 @@ this.getDeviceTypeListDisplayPermission('dnc_device_type_process', 'isProcessHasDeviceTypeList') this.getDeviceTypeListDisplayPermission('dnc_device_type_step', 'isProcessStepHasDeviceTypeList') }, + beforeDestroy() { + this.$bus.$off('sendCurrentTreeNodeInfo', this.receiveCurrentTreeNodeInfo) + this.$bus.$off('sendCurrentClickedTypeInfo', this.receiveCurrentClickedTypeInfo) + this.$bus.$off('reloadDocumentListData', this.reloadDocumentListData) + this.$bus.$off('tableMenuItemMethodTrigger', this.triggerCorrespondingMethod) + }, methods: { /** * 鑾峰彇璁惧绫诲瀷鍒楄〃鍦ㄥ伐搴忓拰宸ユ灞傜骇鐨勫睍绀烘潈闄� @@ -89,15 +95,25 @@ */ receiveCurrentTreeNodeInfo(treeNodeInfo) { console.log('treeNodeInfo', treeNodeInfo) - // 浠庢爲缁勪欢鎺ュ彈鏍戣妭鐐逛俊鎭悗浠庣埗缁勪欢娴佸叆瀛愮粍浠� + const { id, type } = treeNodeInfo + // 浠庢爲缁勪欢鎺ュ彈鏍戣妭鐐逛俊鎭悗浠庣埗缁勪欢娴佸叆瀛愮粍浠跺苟閲嶇疆鏁版嵁 + this.currentClickedTypeInfo = this.currentRightClickedTableRowInfo = {} this.currentTreeNodeInfo = treeNodeInfo - // 娓呯┖涓婁竴鑺傜偣宸茬粡鍔犺浇杩囧緱鏂囨。鍒楄〃tabKey + this.currentNCDocumentAttributionInfo = Object.assign({}, { + attributionId: id, + attributionType: type, + docClassCode: 'NC' + }) this.hasLoadedDataTabKeyArray = [] - if (+treeNodeInfo.type === 5 || +treeNodeInfo.type === 6) { + + if (+type === 5 || +type === 6) { this.activeTabKey = 1 this.$nextTick(() => { - if (this.$refs.deviceCustomTypeTableList) this.$refs.deviceCustomTypeTableList.setQueryParamAndLoadData() - else if (this.$refs.ncDocumentTableListRef) this.$refs.ncDocumentTableListRef.loadData(1) + if (this.$refs.deviceCustomTypeTableList) { + this.$refs.deviceCustomTypeTableList.setQueryParamAndLoadData() + // 鍒囨崲鏍戜箣鍚庢竻绌篘C绋嬪簭鍒楄〃 + if (this.$refs.ncDocumentTableListRef && this.$refs.ncDocumentTableListRef.dataSource.length > 0) this.$refs.ncDocumentTableListRef.dataSource = [] + } else if (this.$refs.ncDocumentTableListRef) this.$refs.ncDocumentTableListRef.loadData(1) }) } else { this.activeTabKey = 2 @@ -108,6 +124,10 @@ this.hasLoadedDataTabKeyArray.push(this.activeTabKey) }, + /** + * 鎺ュ彈褰撳墠鐐瑰嚮鐨勮澶囩被淇℃伅 + * @param record 褰撳墠鐐瑰嚮鐨勮澶囩被琛屼俊鎭� + */ receiveCurrentClickedTypeInfo(record) { const { id, attributionType } = record this.currentClickedTypeInfo = Object.assign({}, record) @@ -127,7 +147,6 @@ */ handleTableContextMenuOpen(record) { this.currentRightClickedTableRowInfo = Object.assign({}, record) - console.log('currentRightClickedTableRowInfo', this.currentRightClickedTableRowInfo) this.$refs.tableContextMenuRef.currentMenuLevel = record.param this.$refs.tableContextMenuRef.menuStyle.top = event.clientY + 'px' this.$refs.tableContextMenuRef.menuStyle.left = event.clientX + 'px' @@ -148,8 +167,9 @@ this.hasLoadedDataTabKeyArray.push(activeTabKey) } }, + /** - * 鏂囨。浠ュ強NC绋嬪簭瀵煎叆/鍑哄簱/鍏ュ簱鎴愬姛鍚庤Е鍙戦噸鏂板姞杞芥枃妗e垪琛� + * 鏂囨。浠ュ強NC绋嬪簭瀵煎叆/鍑哄簱/鍏ュ簱/鍙栨秷鍑哄簱/鍙戝竷/褰掓。鎴愬姛鍚庤Е鍙戦噸鏂板姞杞芥枃妗e垪琛� * @param docClassCode 鏂囨。绫诲埆 * @param attributionType 鏂囨。鐖剁骇type绫诲瀷 * @param attributionId 鏂囨。鐖剁骇Id @@ -158,12 +178,19 @@ console.log('docClassCode, attributionType, attributionId', docClassCode, attributionType, attributionId) // 鍦ㄦ澶勮澶嘚C鏂囨。鐖剁骇鍙傛暟鏄彲姝ゆ柟娉曟槸缁撴瀯鏍戜互鍙婅澶囩被涓ょ涓嶅悓瀵煎叆鏂瑰紡鐨勫叡鍚屽嚭鍙� this.currentNCDocumentAttributionInfo = Object.assign({}, { docClassCode, attributionId, attributionType }) - // 鑻ュ紩鍏ヨ澶囩被鍒欏彧闇�瑕佸垽鏂綋鍓嶅嚭鐜扮殑鏂囨。鎵�灞炴槸鍚︽槸褰撳墠宸﹂敭閫変腑鐨勬枃妗o紝鑻ヤ笉鏄綋鍓嶉�変腑鐨勬枃妗e垯涓嶅埛鏂版枃妗e垪琛�(閬垮厤鏃犳晥鍒锋柊) - if (this.currentRightClickedTableRowInfo.hasOwnProperty('deviceManagementId')) { - if (this.currentClickedTypeInfo.id !== attributionId) return - } else { - if (this.currentTreeNodeInfo.id !== attributionId) return + + // 鍒ゆ柇褰撳墠鍙充晶灞曠ず鐨勬枃妗g殑鎵�灞炴槸鍚︽槸褰撳墠宸﹂敭閫変腑鏍戣妭鐐规垨璁惧绫伙紝鑻ヤ笉鏄綋鍓嶅乏閿�変腑鐨勫垯鍦ㄥ鍏ュ悗涓嶅埛鏂板彸渚х殑鏂囨。鍒楄〃(閬垮厤鏃犳晥鍒锋柊) + // 鍒ゆ柇鏄惁鏄湪鏂囨。鍒楄〃涓繘琛屽嚭搴�/鍏ュ簱/鍙戝竷/褰掓。绛夋搷浣�,鑻ユ槸鍦ㄦ枃妗e垪琛ㄤ腑鎿嶄綔鍒欐搷浣滄垚鍔熷悗鐩存帴鍒锋柊鏂囨。鍒楄〃 + if (!this.currentRightClickedTableRowInfo.hasOwnProperty('docId')) { + if (this.currentRightClickedTableRowInfo.hasOwnProperty('deviceManagementId')) { + // 姝ょ鎯呭喌鏄湪寮曞叆璁惧绫诲苟鍦ㄨ澶囩被鍒楄〃涓繘琛孨C鏂囨。瀵煎叆 + if (this.currentClickedTypeInfo.id !== attributionId) return + } else { + // 姝ょ鎯呭喌鏄湪缁撴瀯鏍戣妭鐐逛笂杩涜鏂囨。瀵煎叆 + if (this.currentTreeNodeInfo.id !== attributionId) return + } } + if (docClassCode === 'NC') { this.$nextTick(() => { if (this.$refs.ncDocumentTableListRef) this.$refs.ncDocumentTableListRef.loadData(1) @@ -179,7 +206,7 @@ const { docId, docName } = this.currentRightClickedTableRowInfo dncApi.downloadDocumentApi({ docId, docName }) .then(res => { - if (res && !res.success) { + if (!res.success) { that.$notification.error({ message: '娑堟伅', description: res.message @@ -254,7 +281,6 @@ onOk: () => { dncApi.documentOutboundApi({ docId, docName }) .then(res => { - console.log('res------------------', res) if (res.success) { that.reloadDocumentListData({ docClassCode: param, attributionId, attributionType }) that.$notification.success({ @@ -418,7 +444,7 @@ }, /** - * 閲嶅綊妗e綋鍓嶅彸閿�変腑鏂囨。涓斿悗缁棤娉曠户缁彂甯冩垨褰掓。 + * 褰掓。褰撳墠鍙抽敭閫変腑鏂囨。涓斿悗缁棤娉曠户缁彂甯冩垨褰掓。 * @param menuLabel */ handlePigeonhole(menuLabel) { -- Gitblit v1.9.3