From 2b46797c3a5868f7f26329da5834c13aae07ad69 Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期一, 03 四月 2023 11:59:34 +0800
Subject: [PATCH] Merge branch 'develop'

---
 src/views/mobdesign/index.jsx |   67 ++++++++++++++++++++++++++++++---
 1 files changed, 61 insertions(+), 6 deletions(-)

diff --git a/src/views/mobdesign/index.jsx b/src/views/mobdesign/index.jsx
index 7e740f5..dc5675f 100644
--- a/src/views/mobdesign/index.jsx
+++ b/src/views/mobdesign/index.jsx
@@ -1189,6 +1189,18 @@
                 menus.push(menuObj[cell.openmenu])
               }
             })
+
+            if (item.subtype === 'dualdatacard') {
+              card.backElements && card.backElements.forEach(cell => {
+                if (cell.eleType !== 'button') return
+  
+                if (cell.linkmenu && menuObj[cell.linkmenu]) {
+                  menus.push(menuObj[cell.linkmenu])
+                } else if (cell.openmenu && menuObj[cell.openmenu]) {
+                  menus.push(menuObj[cell.openmenu])
+                }
+              })
+            }
           })
         } else if (item.type === 'balcony') {
           item.elements && item.elements.forEach(cell => {
@@ -1321,6 +1333,35 @@
     return _style
   }
 
+  resetSyncQuery = (components) => {
+    return components.map(item => {
+      if (item.type === 'tabs') {
+        item.subtabs.forEach(tab => {
+          tab.components = this.resetSyncQuery(tab.components)
+        })
+      } else if (item.type === 'group') {
+        item.components = this.resetSyncQuery(item.components)
+      } else if (item.setting && item.setting.interType === 'system' && item.setting.sync === 'true') {
+        let sql = ''
+        if (item.setting.execute !== 'false' && item.setting.dataresource) {
+          sql = item.setting.dataresource
+        }
+
+        item.scripts && item.scripts.forEach(script => {
+          if (script.status === 'false') return
+
+          sql += script.sql
+        })
+       
+        if (sql.length > 8000) {
+          item.setting.sync = 'false'
+        }
+      }
+
+      return item
+    })
+  }
+
   submitConfig = () => {
     const { adapters } = this.state
     let config = fromJS(this.state.config).toJS()
@@ -1345,6 +1386,10 @@
     setTimeout(() => {
       if (config.enabled && this.verifyConfig()) {
         config.enabled = false
+      }
+
+      if (config.cacheUseful !== 'true') {
+        config.components = this.resetSyncQuery(config.components)
       }
 
       let tbs = []
@@ -1769,12 +1814,22 @@
     let config = fromJS(this.state.config).toJS()
 
     if (item.type === 'search') {
-      notification.warning({
-        top: 92,
-        message: '绉诲姩绔悳绱㈢粍浠朵笉鍙矘璐达紒',
-        duration: 5
-      })
-      return
+      if (config.components.filter(card => card.type === 'topbar' && card.wrap.type !== 'navbar').length > 0) {
+        notification.warning({
+          top: 92,
+          message: '瀵艰埅鏍忎娇鐢ㄤ簡鎼滅储锛屼笉鍙坊鍔犳悳绱㈢粍浠讹紒',
+          duration: 5
+        })
+        return
+      }
+      if (config.components.filter(card => card.type === 'search').length > 0) {
+        notification.warning({
+          top: 92,
+          message: '鎼滅储鏉′欢涓嶅彲閲嶅娣诲姞锛�',
+          duration: 5
+        })
+        return
+      }
     }
     
     if (item.type === 'topbar') {

--
Gitblit v1.8.0