From 49fabbaab6ad5ab8ab6d8da3954384e0281f6134 Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期三, 05 六月 2024 23:49:17 +0800
Subject: [PATCH] 2024-06-05

---
 src/utils/utils-custom.js |  222 +++++++++++++++++++++++++++++++++++-------------------
 1 files changed, 143 insertions(+), 79 deletions(-)

diff --git a/src/utils/utils-custom.js b/src/utils/utils-custom.js
index 0bbb449..6d66833 100644
--- a/src/utils/utils-custom.js
+++ b/src/utils/utils-custom.js
@@ -364,80 +364,6 @@
   }
 
   /**
-   * @description 鑾峰彇鍙叧鑱旀ā鍧�
-   */
-  static getLinkModules (components) {
-    let modules = components.map(item => {
-      if ((item.type === 'card' && item.subtype === 'datacard') || (item.type === 'table' && item.subtype === 'normaltable')) {
-        return {
-          value: item.uuid,
-          label: item.name
-        }
-      } else if (item.type === 'tabs') {
-        let _item = {
-          value: item.uuid,
-          label: item.name,
-          children: item.subtabs.map(f_tab => {
-            let subItem = {
-              value: f_tab.uuid,
-              label: f_tab.label,
-              children: this.getLinkModules(f_tab.components)
-            }
-
-            if (!subItem.children || subItem.children.length === 0) {
-              return {children: null}
-            }
-            return subItem
-          })
-        }
-
-        _item.children = _item.children.filter(t => t.children !== null)
-
-        if (_item.children.length === 0) {
-          return {children: null}
-        }
-
-        return _item
-      } else if (item.type === 'group') {
-        let _item = {
-          value: item.uuid,
-          label: item.name,
-          children: item.components.map(f_tab => {
-            if ((f_tab.type === 'card' && f_tab.subtype === 'datacard') || (f_tab.type === 'table' && f_tab.subtype === 'normaltable')) {
-              return {
-                value: f_tab.uuid,
-                label: f_tab.name
-              }
-            }
-            return {
-              children: null
-            }
-          })
-        }
-
-        _item.children = _item.children.filter(t => t.children !== null)
-
-        if (_item.children.length === 0) {
-          return {children: null}
-        }
-
-        return _item
-      } else {
-        return {
-          children: null
-        }
-      }
-    })
-
-    modules = modules.filter(mod => mod.children !== null)
-
-    if (modules.length === 0) {
-      return null
-    }
-    return modules
-  }
-
-  /**
    * @description 鐢熸垚32浣島uid string + 鏃堕棿
    * @return {String}  uuid
    */
@@ -576,7 +502,16 @@
             return cell
           })
         }
-      } else if (item.type === 'table' && item.cols) {
+      } else if (item.type === 'table') {
+        if (item.supNodes && item.supNodes.length > 0) {
+          item.supNodes = item.supNodes.map(cell => {
+            cell.nodes = cell.nodes.map(n => md5(commonId + n))
+            cell.componentId = cell.nodes[cell.nodes.length - 1]
+
+            return cell
+          })
+        }
+
         let loopCol = (cols) => {
           return cols.map(col => {
             if (col.type === 'action') {
@@ -614,7 +549,7 @@
           })
         }
 
-        item.cols = loopCol(item.cols)
+        item.cols = loopCol(item.cols || [])
 
         if (item.colsCtrls) {
           item.colsCtrls = item.colsCtrls.map(col => {
@@ -882,7 +817,7 @@
           return cell
         })
       }
-    } else if (item.type === 'table' && item.cols) {
+    } else if (item.type === 'table') {
       let loopCol = (cols) => {
         return cols.map(col => {
           if (col.type === 'action') {
@@ -923,7 +858,7 @@
         })
       }
 
-      item.cols = loopCol(item.cols)
+      item.cols = loopCol(item.cols || [])
 
       if (item.colsCtrls) {
         item.colsCtrls = item.colsCtrls.map(col => {
@@ -1002,6 +937,128 @@
 
     return item
   }
+}
+
+/**
+ * @description 鑾峰彇鍙叧鑱旀ā鍧�
+ */
+export function getLinkModules (components) {
+  let modules = components.map(item => {
+    if ((item.type === 'card' && item.subtype === 'datacard') || (item.type === 'table' && item.subtype === 'normaltable')) {
+      return {
+        value: item.uuid,
+        label: item.name
+      }
+    } else if (item.type === 'tabs') {
+      let _item = {
+        value: item.uuid,
+        label: item.name,
+        children: item.subtabs.map(f_tab => {
+          let subItem = {
+            value: f_tab.uuid,
+            label: f_tab.label,
+            children: getLinkModules(f_tab.components)
+          }
+
+          if (!subItem.children || subItem.children.length === 0) {
+            return {children: null}
+          }
+          return subItem
+        })
+      }
+
+      _item.children = _item.children.filter(t => t.children !== null)
+
+      if (_item.children.length === 0) {
+        return {children: null}
+      }
+
+      return _item
+    } else if (item.type === 'group') {
+      let _item = {
+        value: item.uuid,
+        label: item.name,
+        children: item.components.map(f_tab => {
+          if ((f_tab.type === 'card' && f_tab.subtype === 'datacard') || (f_tab.type === 'table' && f_tab.subtype === 'normaltable')) {
+            return {
+              value: f_tab.uuid,
+              label: f_tab.name
+            }
+          }
+          return {
+            children: null
+          }
+        })
+      }
+
+      _item.children = _item.children.filter(t => t.children !== null)
+
+      if (_item.children.length === 0) {
+        return {children: null}
+      }
+
+      return _item
+    } else {
+      return {
+        children: null
+      }
+    }
+  })
+
+  modules = modules.filter(mod => mod.children !== null)
+
+  if (modules.length === 0) {
+    return null
+  }
+  return modules
+}
+
+/**
+ * @description 鑾峰彇鍏叡鏁版嵁婧�
+ */
+export function getInterfaces () {
+  let menu = window.GLOB.customMenu
+
+  let interfaces = []
+  if (menu.interfaces) {
+    menu.interfaces.forEach(item => {
+      if (item.status === 'true') {
+        interfaces.push({
+          value: item.uuid,
+          label: item.name,
+          columns: JSON.parse(JSON.stringify(item.columns))
+        })
+      }
+    })
+  }
+
+  let mapComponents = (components = []) => {
+    components.forEach(item => {
+      if (item.type === 'card' && item.subtype === 'datacard') {
+        interfaces.push({
+          value: item.uuid,
+          label: item.name + '锛堟暟鎹崱锛�',
+          columns: JSON.parse(JSON.stringify(item.columns))
+        })
+      } else if (item.type === 'table' && item.subtype === 'normaltable') {
+        interfaces.push({
+          value: item.uuid,
+          label: item.name + '锛堝父鐢ㄨ〃锛�',
+          columns: JSON.parse(JSON.stringify(item.columns))
+        })
+      } else if (item.type === 'tabs') {
+        item.subtabs.forEach(f_tab => {
+          mapComponents(f_tab.components)
+        })
+      } else if (item.type === 'group') {
+        mapComponents(item.components)
+      }
+    })
+  }
+
+  mapComponents(menu.components)
+
+  return interfaces
 }
 
 /**
@@ -1711,7 +1768,7 @@
       } else if (!card.setting.supModule) {
         errors.push({ level: 0, detail: '鏈缃笂绾х粍浠讹紒'})
       }
-    } else if (card.type === 'card' && card.subtype === 'datacard') { // 鏁版嵁鍗★紝鍙兘鏈夊涓婄骇
+    } else if ((card.type === 'card' && card.subtype === 'datacard') || card.subtype === 'normaltable') { // 鏁版嵁鍗°�乼able锛屽彲鑳芥湁澶氫笂绾�
       if (card.wrap.supType !== 'multi' && !card.setting.supModule) {
         errors.push({ level: 0, detail: '鏈缃笂绾х粍浠讹紒'})
       }
@@ -1947,6 +2004,13 @@
       duration: 5
     })
     return false
+  } else if (/\send\s+begin\s/ig.test(sql)) {
+    notification.warning({
+      top: 92,
+      message: `end 鍚庝笉鍙揣璺� begin銆俙,
+      duration: 5
+    })
+    return false
   } else if (type === 'customscript' && /\son\s+[a-z0-9_]+\.[a-z0-9_]+\s*=\s*[a-z0-9_]+\.[a-z0-9_]+/ig.test(sql)) {
     let list = sql.match(/\son\s+[a-z0-9_]+\.[a-z0-9_]+\s*=\s*[a-z0-9_]+\.[a-z0-9_]+/ig)
     let errors = []

--
Gitblit v1.8.0