From 8a6ce370f1aa1c061b76fa3e9d2d4d1df53ca4c5 Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期二, 21 五月 2024 16:38:09 +0800
Subject: [PATCH] Merge branch 'master' into positec

---
 src/tabviews/custom/components/card/table-card/index.jsx |   31 +++++++++++++++++++------------
 1 files changed, 19 insertions(+), 12 deletions(-)

diff --git a/src/tabviews/custom/components/card/table-card/index.jsx b/src/tabviews/custom/components/card/table-card/index.jsx
index 231e066..5251e62 100644
--- a/src/tabviews/custom/components/card/table-card/index.jsx
+++ b/src/tabviews/custom/components/card/table-card/index.jsx
@@ -272,8 +272,8 @@
 
     if (config.uuid !== menuId) return
 
-    if ((position === 'mainline' || position === 'popclose') && config.setting.supModule && BID) { // 鍒锋柊婧愮粍浠舵椂锛岄檮甯﹀埛鏂颁笂绾ц涓庡綋鍓嶇粍浠�
-      MKEmitter.emit('reloadData', config.setting.supModule, BID)
+    if (['mainline', 'maingrid', 'popclose'].includes(position) && config.setting.supModule) {
+      MKEmitter.emit('reloadData', config.setting.supModule, position === 'maingrid' ? '' : BID)
     } else {
       this.loadData()
     }
@@ -466,16 +466,12 @@
 
       if (!menu) return
 
-      menu.param = {}
+      menu.param = {$BID: data.$$uuid || ''}
 
-      if (card.setting.joint === 'true') {
-        menu.param.$BID = data.$$uuid || ''
-
-        Object.keys(data).forEach(key => {
-          if (/^\$/.test(key)) return
-          menu.param[key] = data[key]
-        })
-      }
+      Object.keys(data).forEach(key => {
+        if (/^\$/.test(key)) return
+        menu.param[key] = data[key]
+      })
 
       MKEmitter.emit('modifyTabs', menu, true)
     } else if (card.setting.click === 'link') {
@@ -489,11 +485,22 @@
         }
 
         src = src + `${con}id=${data.$$uuid || ''}&appkey=${window.GLOB.appkey}&userid=${sessionStorage.getItem('UserID')}&LoginUID=${sessionStorage.getItem('LoginUID') || ''}`
+      } else if (/@/.test(src)) {
+        src = src.replace(/@id@/ig, data.$$uuid || '')
+        src = src.replace(/@appkey@/ig, window.GLOB.appkey)
+        src = src.replace(/@userid@/ig, sessionStorage.getItem('UserID'))
+        src = src.replace(/@LoginUID@/ig, sessionStorage.getItem('LoginUID'))
+
+        Object.keys(data).forEach(key => {
+          if (/^\$/.test(key)) return
+          let reg = new RegExp('@' + key + '@', 'ig')
+          src = src.replace(reg, data[key])
+        })
       }
 
       window.open(src)
     } else if (card.setting.click === 'button' && card.setting.linkbtn) {
-      MKEmitter.emit('triggerBtnId', card.setting.linkbtn, [data], 'linkbtn')
+      MKEmitter.emit('triggerBtnId', card.setting.linkbtn, [data], 'linkbtn', (data.$$uuid || '') + (data.$Index || ''))
     }
   }
 

--
Gitblit v1.8.0