From c3e8d4cb5edcacfd77a51d388e32a2bd0fb79643 Mon Sep 17 00:00:00 2001
From: zhaowei <zhaowei>
Date: 星期五, 14 三月 2025 17:59:10 +0800
Subject: [PATCH] 1、产品结构树以及设备结构树中的列表增加行选中样式 2、产品结构树实现点击设备类出现设备类下挂载的NC程序列表 3、产品结构树实现在设备类中导入NC程序功能

---
 src/views/dnc/base/modules/ProductStructure/ProductStructureMainTop.vue |   63 ++++++++++++++++++++++---------
 1 files changed, 45 insertions(+), 18 deletions(-)

diff --git a/src/views/dnc/base/modules/ProductStructure/ProductStructureMainTop.vue b/src/views/dnc/base/modules/ProductStructure/ProductStructureMainTop.vue
index e67db7c..e961d5f 100644
--- a/src/views/dnc/base/modules/ProductStructure/ProductStructureMainTop.vue
+++ b/src/views/dnc/base/modules/ProductStructure/ProductStructureMainTop.vue
@@ -10,7 +10,8 @@
             ref="deviceCustomTypeTableList" :currentTreeNodeInfo="currentTreeNodeInfo"
             @handleTableContextMenuOpen="handleTableContextMenuOpen" :size="tableContainerSize"/>
 
-          <NcDocumentTableList ref="ncDocumentTableListRef" :currentTreeNodeInfo="currentTreeNodeInfo"
+          <NcDocumentTableList ref="ncDocumentTableListRef"
+                               :currentNCDocumentAttributionInfo="currentNCDocumentAttributionInfo"
                                @handleTableContextMenuOpen="handleTableContextMenuOpen" :size="tableContainerSize"/>
         </div>
       </a-tab-pane>
@@ -55,11 +56,14 @@
       isProcessStepHasDeviceTypeList: false,
       currentRightClickedTableRowInfo: {},
       currentTreeNodeInfo: {},
+      currentClickedTypeInfo: {},
+      currentNCDocumentAttributionInfo: {},//褰撳墠NC鏂囨。鐨勬墍灞炵骇鍗崇埗绾х殑璇︾粏淇℃伅锛堝紩鍏ヨ澶囩被鍚嶯C鎸傝浇鑷宠澶囩被涓嬪弽涔嬪垯鎸傝浇鍦ㄥ伐搴忓拰宸ユ涓嬶級
       hasLoadedDataTabKeyArray: []
     }
   },
   created() {
     this.$bus.$on('sendCurrentTreeNodeInfo', this.receiveCurrentTreeNodeInfo)
+    this.$bus.$on('sendCurrentClickedTypeInfo', this.receiveCurrentClickedTypeInfo)
     this.$bus.$on('reloadDocumentListData', this.reloadDocumentListData)
     this.$bus.$on('tableMenuItemMethodTrigger', this.triggerCorrespondingMethod)
     this.getDeviceTypeListDisplayPermission('dnc_device_type_process', 'isProcessHasDeviceTypeList')
@@ -104,6 +108,19 @@
       this.hasLoadedDataTabKeyArray.push(this.activeTabKey)
     },
 
+    receiveCurrentClickedTypeInfo(record) {
+      const { id, attributionType } = record
+      this.currentClickedTypeInfo = Object.assign({}, record)
+      this.currentNCDocumentAttributionInfo = Object.assign({}, {
+        attributionId: id,
+        attributionType,
+        docClassCode: 'NC'
+      })
+      this.$nextTick(() => {
+        if (this.$refs.ncDocumentTableListRef) this.$refs.ncDocumentTableListRef.loadData(1)
+      })
+    },
+
     /**
      * 鎺у埗鍙抽敭鑿滃崟寮�鍚�
      * @param record 褰撳墠琛ㄦ牸琛屼俊鎭�
@@ -134,13 +151,23 @@
     /**
      * 鏂囨。浠ュ強NC绋嬪簭瀵煎叆/鍑哄簱/鍏ュ簱鎴愬姛鍚庤Е鍙戦噸鏂板姞杞芥枃妗e垪琛�
      * @param docClassCode 鏂囨。绫诲埆
-     * @param attributionId 鑺傜偣Id
+     * @param attributionType 鏂囨。鐖剁骇type绫诲瀷
+     * @param attributionId 鏂囨。鐖剁骇Id
      */
-    reloadDocumentListData({ docClassCode, attributionId }) {
-      // 濡傛灉涓婁紶鐨勬枃妗d笉鏄墍灞炰簬褰撳墠鎵�灞曠ず鑺傜偣鐨勬枃妗e垯涓嶉噸鏂拌幏鍙栨枃妗e垪琛�
-      if (this.currentTreeNodeInfo.id !== attributionId) return
+    reloadDocumentListData({ docClassCode, attributionType, attributionId }) {
+      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
+      }
       if (docClassCode === 'NC') {
-        if (this.$refs.ncDocumentTableListRef) this.$refs.ncDocumentTableListRef.loadData(1)
+        this.$nextTick(() => {
+          if (this.$refs.ncDocumentTableListRef) this.$refs.ncDocumentTableListRef.loadData(1)
+        })
       } else {
         if (this.$refs.otherDocumentTableListRef) this.$refs.otherDocumentTableListRef.loadData(1)
       }
@@ -169,7 +196,7 @@
 
     // 鍒犻櫎褰撳墠鍙抽敭閫変腑鏂囨。
     handleDelete() {
-      const { docId, param, attributionId } = this.currentRightClickedTableRowInfo
+      const { docId, param, attributionId, attributionType } = this.currentRightClickedTableRowInfo
       const that = this
       that.$confirm({
         title: '鎻愮ず',
@@ -184,7 +211,7 @@
                   message: '娑堟伅',
                   description: res.message
                 })
-                that.reloadDocumentListData({ docClassCode: param, attributionId })
+                that.reloadDocumentListData({ docClassCode: param, attributionId, attributionType })
               } else {
                 that.$notification.warning({
                   message: '娑堟伅',
@@ -218,7 +245,7 @@
      */
     handlePull(menuLabel) {
       const that = this
-      const { docId, docName, param, attributionId } = this.currentRightClickedTableRowInfo
+      const { docId, docName, param, attributionId, attributionType } = this.currentRightClickedTableRowInfo
       that.$confirm({
         title: '鎻愮ず',
         content: `纭${menuLabel}鍚楋紵`,
@@ -229,7 +256,7 @@
             .then(res => {
               console.log('res------------------', res)
               if (res.success) {
-                that.reloadDocumentListData({ docClassCode: param, attributionId })
+                that.reloadDocumentListData({ docClassCode: param, attributionId, attributionType })
                 that.$notification.success({
                   message: '娑堟伅',
                   description: `${menuLabel}鎴愬姛`
@@ -263,7 +290,7 @@
      */
     handleCancelPull(menuLabel) {
       const that = this
-      const { docId, param, attributionId } = this.currentRightClickedTableRowInfo
+      const { docId, param, attributionId, attributionType } = this.currentRightClickedTableRowInfo
       that.$confirm({
         title: '鎻愮ず',
         content: `纭${menuLabel}鍚楋紵`,
@@ -273,7 +300,7 @@
           dncApi.documentCancelOutboundApi(docId)
             .then(res => {
               if (res.success) {
-                this.reloadDocumentListData({ docClassCode: param, attributionId })
+                this.reloadDocumentListData({ docClassCode: param, attributionId, attributionType })
                 that.$notification.success({
                   message: '娑堟伅',
                   description: res.message
@@ -307,7 +334,7 @@
      */
     handlePublish(menuLabel) {
       const that = this
-      const { docId, param, attributionId } = this.currentRightClickedTableRowInfo
+      const { docId, param, attributionId, attributionType } = this.currentRightClickedTableRowInfo
       that.$confirm({
         title: '鎻愮ず',
         content: `纭${menuLabel}鍚楋紵`,
@@ -317,7 +344,7 @@
           dncApi.documentPublishApi(docId)
             .then(res => {
               if (res.success) {
-                this.reloadDocumentListData({ docClassCode: param, attributionId })
+                this.reloadDocumentListData({ docClassCode: param, attributionId, attributionType })
                 this.$bus.$emit('reloadMainBottomTableData', 'documentVersion')
                 that.$notification.success({
                   message: '娑堟伅',
@@ -352,7 +379,7 @@
      */
     handleRepublish(menuLabel) {
       const that = this
-      const { docId, param, attributionId } = this.currentRightClickedTableRowInfo
+      const { docId, param, attributionId, attributionType } = this.currentRightClickedTableRowInfo
       that.$confirm({
         title: '鎻愮ず',
         content: `纭${menuLabel}鍚楋紵`,
@@ -362,7 +389,7 @@
           dncApi.documentRepublishApi(docId)
             .then(res => {
               if (res.success) {
-                this.reloadDocumentListData({ docClassCode: param, attributionId })
+                this.reloadDocumentListData({ docClassCode: param, attributionId, attributionType })
                 that.$notification.success({
                   message: '娑堟伅',
                   description: res.message
@@ -396,7 +423,7 @@
      */
     handlePigeonhole(menuLabel) {
       const that = this
-      const { docId, param, attributionId } = this.currentRightClickedTableRowInfo
+      const { docId, param, attributionId, attributionType } = this.currentRightClickedTableRowInfo
       that.$confirm({
         title: '鎻愮ず',
         content: `${menuLabel}鍚庝笉鍙彇娑堬紝纭${menuLabel}鍚楋紵`,
@@ -406,7 +433,7 @@
           dncApi.documentPigeonholeApi(docId)
             .then(res => {
               if (res.success) {
-                this.reloadDocumentListData({ docClassCode: param, attributionId })
+                this.reloadDocumentListData({ docClassCode: param, attributionId, attributionType })
                 that.$notification.success({
                   message: '娑堟伅',
                   description: res.message

--
Gitblit v1.9.3