From c5ce6424ab1241a96fa06f19462c6ca35684b14d Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期三, 23 四月 2025 16:34:16 +0800
Subject: [PATCH] 2025-04-23

---
 src/tabviews/zshare/actionList/exceloutbutton/index.jsx               |   16 ++-
 src/tabviews/custom/popview/index.jsx                                 |   16 ++-
 src/templates/sharecomponent/actioncomponent/verifyexcelout/utils.jsx |   10 ++
 src/menu/datasource/verifycard/utils.jsx                              |   17 +++-
 src/tabviews/basetable/index.jsx                                      |   14 ++-
 src/tabviews/custom/components/module/invoice/index.jsx               |   14 ++-
 src/tabviews/custom/index.jsx                                         |   29 ++++--
 src/templates/sharecomponent/actioncomponent/verifyprint/utils.jsx    |   11 ++
 src/menu/debug/index.jsx                                              |   10 ++
 src/utils/utils-custom.js                                             |   71 +++++++++++------
 src/tabviews/zshare/actionList/printbutton/index.jsx                  |    9 ++
 11 files changed, 151 insertions(+), 66 deletions(-)

diff --git a/src/menu/datasource/verifycard/utils.jsx b/src/menu/datasource/verifycard/utils.jsx
index cb79b71..c679a71 100644
--- a/src/menu/datasource/verifycard/utils.jsx
+++ b/src/menu/datasource/verifycard/utils.jsx
@@ -37,10 +37,6 @@
     if (setting.interType === 'system' && setting.execute !== 'false') {
       _dataresource = setting.dataresource || ''
     }
-
-    if (/\s/.test(_dataresource)) {
-      _dataresource = '(' + _dataresource + ') tb'
-    }
     
     // if (window.GLOB.funcs && window.GLOB.funcs.length > 0) {
     //   window.GLOB.funcs.forEach(item => {
@@ -110,8 +106,19 @@
       })
     }
 
+    let custompage = false
+
+    if (/order\s+by\s+sort_id\s*$/i.test(_dataresource)) {
+      custompage = true
+    } else if (/@pageSize@|@orderBy@|@mk_total/i.test(_dataresource + _customScript)) {
+      custompage = true
+    }
+
+    if (/\s/.test(_dataresource)) {
+      _dataresource = '(' + _dataresource + ') tb'
+    }
+
     // 姝e垯鏇挎崲
-    let custompage = /@pageSize@|@orderBy@|@mk_total/i.test(_dataresource + _customScript)
     let _regoptions = getSearchRegs(searches)
 
     let _search = joinMainSearchkey(searches)
diff --git a/src/menu/debug/index.jsx b/src/menu/debug/index.jsx
index ac2ec2e..dfd426f 100644
--- a/src/menu/debug/index.jsx
+++ b/src/menu/debug/index.jsx
@@ -2513,14 +2513,20 @@
       _search = ''
     }
 
+    let custompage = false
+
+    if (/order\s+by\s+sort_id\s*$/i.test(_dataresource)) {
+      custompage = true
+    } else if (/@pageSize@|@orderBy@|@mk_total/i.test(_dataresource + _customScript)) {
+      custompage = true
+    }
+
     if (/\s/.test(_dataresource)) {
       _dataresource = '(' + _dataresource + ') tb'
     }
 
     item.setting.dataresource = _dataresource
     item.setting.customScript = _customScript
-
-    let custompage = /@pageSize@|@orderBy@|@mk_total/i.test(_dataresource + _customScript)
 
     if (_dataresource) {
       if (custompage) {
diff --git a/src/tabviews/basetable/index.jsx b/src/tabviews/basetable/index.jsx
index 17ca612..05e30ac 100644
--- a/src/tabviews/basetable/index.jsx
+++ b/src/tabviews/basetable/index.jsx
@@ -692,9 +692,6 @@
       if (!component.setting.execute) {
         component.setting.dataresource = ''
       }
-      if (/\s/.test(component.setting.dataresource)) {
-        component.setting.dataresource = '(' + component.setting.dataresource + ') tb'
-      }
   
       if (sessionStorage.getItem('dataM') === 'true') { // 鏁版嵁鏉冮檺
         component.setting.dataresource = component.setting.dataresource.replace(/\$@/ig, '/*').replace(/@\$/ig, '*/').replace(/@datam@/ig, '\'Y\'')
@@ -714,8 +711,17 @@
 
       component.setting.customScript = _customScript // 鏁寸悊鍚庤嚜瀹氫箟鑴氭湰
       component.setting.tailScript = _tailScript     // 鍚庣疆鑷畾涔夎剼鏈�
+      component.setting.custompage = false
 
-      component.setting.custompage = /@pageSize@|@orderBy@|@mk_total/i.test(component.setting.dataresource + component.setting.customScript)
+      if (/order\s+by\s+sort_id\s*$/i.test(component.setting.dataresource)) {
+        component.setting.custompage = true
+      } else if (/@pageSize@|@orderBy@|@mk_total/i.test(component.setting.dataresource + component.setting.customScript)) {
+        component.setting.custompage = true
+      }
+
+      if (/\s/.test(component.setting.dataresource)) {
+        component.setting.dataresource = '(' + component.setting.dataresource + ') tb'
+      }
 
       if (!component.setting.execute || component.setting.custompage) {
         component.forbidLine = true
diff --git a/src/tabviews/custom/components/module/invoice/index.jsx b/src/tabviews/custom/components/module/invoice/index.jsx
index dfb257f..079f4b7 100644
--- a/src/tabviews/custom/components/module/invoice/index.jsx
+++ b/src/tabviews/custom/components/module/invoice/index.jsx
@@ -216,9 +216,6 @@
     if (!item.setting.execute) {
       item.setting.dataresource = ''
     }
-    if (/\s/.test(item.setting.dataresource)) {
-      item.setting.dataresource = '(' + item.setting.dataresource + ') tb'
-    }
 
     if (sessionStorage.getItem('dataM') === 'true') { // 鏁版嵁鏉冮檺
       item.setting.dataresource = item.setting.dataresource.replace(/\$@/ig, '/*').replace(/@\$/ig, '*/').replace(/@datam@/ig, '\'Y\'')
@@ -238,8 +235,17 @@
 
     item.setting.customScript = _customScript // 鏁寸悊鍚庤嚜瀹氫箟鑴氭湰
     item.setting.tailScript = _tailScript     // 鍚庣疆鑷畾涔夎剼鏈�
+    item.setting.custompage = false
+    
+    if (/order\s+by\s+sort_id\s*$/i.test(item.setting.dataresource)) {
+      item.setting.custompage = true
+    } else if (/@pageSize@|@orderBy@|@mk_total/i.test(item.setting.dataresource + item.setting.customScript)) {
+      item.setting.custompage = true
+    }
 
-    item.setting.custompage = /@pageSize@|@orderBy@|@mk_total/i.test(item.setting.dataresource + item.setting.customScript)
+    if (/\s/.test(item.setting.dataresource)) {
+      item.setting.dataresource = '(' + item.setting.dataresource + ') tb'
+    }
 
     return item
   }
diff --git a/src/tabviews/custom/index.jsx b/src/tabviews/custom/index.jsx
index 746f9c8..8234d4a 100644
--- a/src/tabviews/custom/index.jsx
+++ b/src/tabviews/custom/index.jsx
@@ -923,12 +923,9 @@
           delete item.scripts
           item.setting.$name = item.$menuname || ''
           item.setting.execute = item.setting.execute !== 'false'  // 榛樿sql鏄惁鎵ц锛岃浆涓篵oolean 缁熶竴鏍煎紡
-          
+
           if (!item.setting.execute) {
             item.setting.dataresource = ''
-          }
-          if (/\s/.test(item.setting.dataresource)) {
-            item.setting.dataresource = '(' + item.setting.dataresource + ') tb'
           }
       
           if (sessionStorage.getItem('dataM') === 'true') { // 鏁版嵁鏉冮檺
@@ -950,10 +947,16 @@
           item.setting.customScript = _customScript // 鏁寸悊鍚庤嚜瀹氫箟鑴氭湰
           item.setting.tailScript = _tailScript     // 鍚庣疆鑷畾涔夎剼鏈�
 
-          item.setting.custompage = /@pageSize@|@orderBy@|@mk_total/i.test(item.setting.dataresource + item.setting.customScript)
+          item.setting.custompage = false
 
-          if (item.setting.$tree) {
+          if (/order\s+by\s+sort_id\s*$/i.test(item.setting.dataresource)) {
             item.setting.custompage = true
+          } else if (item.setting.$tree || /@pageSize@|@orderBy@|@mk_total/i.test(item.setting.dataresource + item.setting.customScript)) {
+            item.setting.custompage = true
+          }
+
+          if (/\s/.test(item.setting.dataresource)) {
+            item.setting.dataresource = '(' + item.setting.dataresource + ') tb'
           }
 
           if (!item.setting.execute || item.setting.custompage) {
@@ -1387,9 +1390,6 @@
       if (!inter.setting.execute) {
         inter.setting.dataresource = ''
       }
-      if (/\s/.test(inter.setting.dataresource)) {
-        inter.setting.dataresource = '(' + inter.setting.dataresource + ') tb'
-      }
   
       if (sessionStorage.getItem('dataM') === 'true') { // 鏁版嵁鏉冮檺
         inter.setting.dataresource = inter.setting.dataresource.replace(/\$@/ig, '/*').replace(/@\$/ig, '*/').replace(/@datam@/ig, '\'Y\'')
@@ -1409,8 +1409,17 @@
 
       inter.setting.customScript = _customScript // 鏁寸悊鍚庤嚜瀹氫箟鑴氭湰
       inter.setting.tailScript = _tailScript     // 鍚庣疆鑷畾涔夎剼鏈�
+      inter.setting.custompage = false
 
-      inter.setting.custompage = /@pageSize@|@orderBy@|@mk_total/i.test(inter.setting.dataresource + inter.setting.customScript)
+      if (/order\s+by\s+sort_id\s*$/i.test(inter.setting.dataresource)) {
+        inter.setting.custompage = true
+      } else if (/@pageSize@|@orderBy@|@mk_total/i.test(inter.setting.dataresource + inter.setting.customScript)) {
+        inter.setting.custompage = true
+      }
+
+      if (/\s/.test(inter.setting.dataresource)) {
+        inter.setting.dataresource = '(' + inter.setting.dataresource + ') tb'
+      }
 
       return inter
     })
diff --git a/src/tabviews/custom/popview/index.jsx b/src/tabviews/custom/popview/index.jsx
index 261269a..57a2d3f 100644
--- a/src/tabviews/custom/popview/index.jsx
+++ b/src/tabviews/custom/popview/index.jsx
@@ -602,12 +602,9 @@
           delete item.scripts
           item.setting.$name = item.$menuname || ''
           item.setting.execute = item.setting.execute !== 'false'  // 榛樿sql鏄惁鎵ц锛岃浆涓篵oolean 缁熶竴鏍煎紡
-          
+
           if (!item.setting.execute) {
             item.setting.dataresource = ''
-          }
-          if (/\s/.test(item.setting.dataresource)) {
-            item.setting.dataresource = '(' + item.setting.dataresource + ') tb'
           }
       
           if (sessionStorage.getItem('dataM') === 'true') { // 鏁版嵁鏉冮檺
@@ -628,11 +625,16 @@
 
           item.setting.customScript = _customScript // 鏁寸悊鍚庤嚜瀹氫箟鑴氭湰
           item.setting.tailScript = _tailScript     // 鍚庣疆鑷畾涔夎剼鏈�
+          item.setting.custompage = false
 
-          item.setting.custompage = /@pageSize@|@orderBy@|@mk_total/i.test(item.setting.dataresource + item.setting.customScript)
-
-          if (item.setting.$tree) {
+          if (/order\s+by\s+sort_id\s*$/i.test(item.setting.dataresource)) {
             item.setting.custompage = true
+          } else if (item.setting.$tree || /@pageSize@|@orderBy@|@mk_total/i.test(item.setting.dataresource + item.setting.customScript)) {
+            item.setting.custompage = true
+          }
+
+          if (/\s/.test(item.setting.dataresource)) {
+            item.setting.dataresource = '(' + item.setting.dataresource + ') tb'
           }
           
           if (!item.setting.execute || item.setting.custompage) {
diff --git a/src/tabviews/zshare/actionList/exceloutbutton/index.jsx b/src/tabviews/zshare/actionList/exceloutbutton/index.jsx
index ac49651..36aa1b9 100644
--- a/src/tabviews/zshare/actionList/exceloutbutton/index.jsx
+++ b/src/tabviews/zshare/actionList/exceloutbutton/index.jsx
@@ -882,10 +882,6 @@
         _setting.dataresource = ''
       }
 
-      if (/\s/.test(_setting.dataresource)) {
-        _setting.dataresource = '(' + _setting.dataresource + ') tb'
-      }
-
       let _customScript = ''
       let _tailScript = ''
       btn.verify.scripts && btn.verify.scripts.forEach(script => {
@@ -922,7 +918,17 @@
       _setting.tailScript = _tailScript     // 鍚庣疆鑷畾涔夎剼鏈�
 
       _setting.laypage = pagination
-      _setting.custompage = /@pageSize@|@orderBy@|@mk_total/i.test(_setting.dataresource + _setting.customScript)
+      _setting.custompage = false
+
+      if (/order\s+by\s+sort_id\s*$/i.test(_setting.dataresource)) {
+        _setting.custompage = true
+      } else if (/@pageSize@|@orderBy@|@mk_total/i.test(_setting.dataresource + _setting.customScript)) {
+        _setting.custompage = true
+      }
+
+      if (/\s/.test(_setting.dataresource)) {
+        _setting.dataresource = '(' + _setting.dataresource + ') tb'
+      }
 
       _setting.queryType = btn.verify.queryType
       _setting.$name = btn.logLabel
diff --git a/src/tabviews/zshare/actionList/printbutton/index.jsx b/src/tabviews/zshare/actionList/printbutton/index.jsx
index 547bf77..5b331b5 100644
--- a/src/tabviews/zshare/actionList/printbutton/index.jsx
+++ b/src/tabviews/zshare/actionList/printbutton/index.jsx
@@ -1098,8 +1098,15 @@
       _dataresource = ''
     }
 
+    let custompage = false
+
+    if (/order\s+by\s+sort_id\s*$/i.test(_dataresource)) {
+      custompage = true
+    } else if (/@pageSize@|@orderBy@|@mk_total/i.test(_dataresource + _customScript + _tailScript)) {
+      custompage = true
+    }
+    
     let isDataM = sessionStorage.getItem('dataM') === 'true'
-    let custompage = /@pageSize@|@orderBy@|@mk_total/i.test(_dataresource + _customScript + _tailScript)
     let regoptions = [
       { reg: /@orderBy@/ig, value: btn.verify.setting.order },
       { reg: /@pageSize@/ig, value: '9999' },
diff --git a/src/templates/sharecomponent/actioncomponent/verifyexcelout/utils.jsx b/src/templates/sharecomponent/actioncomponent/verifyexcelout/utils.jsx
index 4949841..c64b0ef 100644
--- a/src/templates/sharecomponent/actioncomponent/verifyexcelout/utils.jsx
+++ b/src/templates/sharecomponent/actioncomponent/verifyexcelout/utils.jsx
@@ -46,11 +46,17 @@
       _dataresource = ''
     }
 
+    let custompage = false
+
+    if (/order\s+by\s+sort_id\s*$/i.test(_dataresource)) {
+      custompage = true
+    } else if (/@pageSize@|@orderBy@|@mk_total/i.test(_dataresource + _customScript)) {
+      custompage = true
+    }
+
     if (/\s/.test(_dataresource)) {
       _dataresource = '(' + _dataresource + ') tb'
     }
-
-    let custompage = /@pageSize@|@orderBy@|@mk_total/i.test(_dataresource + _customScript)
     
     // 姝e垯鏇挎崲
     regoptions.push({
diff --git a/src/templates/sharecomponent/actioncomponent/verifyprint/utils.jsx b/src/templates/sharecomponent/actioncomponent/verifyprint/utils.jsx
index 719ba0e..7409df3 100644
--- a/src/templates/sharecomponent/actioncomponent/verifyprint/utils.jsx
+++ b/src/templates/sharecomponent/actioncomponent/verifyprint/utils.jsx
@@ -30,11 +30,18 @@
     if (setting.defaultSql === 'false') {
       _dataresource = ''
     }
+
+    let custompage = false
+
+    if (/order\s+by\s+sort_id\s*$/i.test(_dataresource)) {
+      custompage = true
+    } else if (/@pageSize@|@orderBy@|@mk_total/i.test(_dataresource + _customScript)) {
+      custompage = true
+    }
+
     if (/\s/.test(_dataresource)) {
       _dataresource = '(' + _dataresource + ') tb'
     }
-
-    let custompage = /@pageSize@|@orderBy@|@mk_total/i.test(_dataresource + _customScript)
 
     // 姝e垯鏇挎崲
     let regoptions = [{
diff --git a/src/utils/utils-custom.js b/src/utils/utils-custom.js
index 3cda7e8..62635f2 100644
--- a/src/utils/utils-custom.js
+++ b/src/utils/utils-custom.js
@@ -2748,6 +2748,8 @@
   text = text.filter(Boolean)
   menu = menu.filter(Boolean)
 
+  sql = sql.map(n => n.replace(/(:|锛�)$/g, ''))
+
   sql = Array.from(new Set(sql))
   btn = Array.from(new Set(btn))
   ops = Array.from(new Set(ops))
@@ -2783,16 +2785,31 @@
 export function setLangTrans (config, btnDict, titDict, lisDict, menuDict, regs, tail) {
   let filterElement = (card) => {
     if (card.datatype === 'static' && card.eleType === 'text' && !/@.+@/g.test(card.value)) {
-      if (card.value && titDict[card.value]) {
-        card.value = titDict[card.value]
+      if (card.value) {
+        card.value = replaceTitle(card.value)
       }
     }
-    if (card.prefix && titDict[card.prefix]) {
-      card.prefix = titDict[card.prefix]
+    if (card.prefix) {
+      card.prefix = replaceTitle(card.prefix)
     }
-    if (card.postfix && titDict[card.postfix]) {
-      card.postfix = titDict[card.postfix]
+    if (card.postfix) {
+      card.postfix = replaceTitle(card.postfix)
     }
+  }
+
+  let replaceTitle = (val)聽=> {
+    if聽(/(:|锛�)$/g.test(val)) {
+      let _val = val.replace(/(:|锛�)$/g,聽'')
+      if聽(titDict[_val]) {
+        val = titDict[_val] + val.substr(-1)
+      }聽else if (titDict[val]) {
+        val = titDict[val]
+      }
+    }聽else if (titDict[val]) {
+      val = titDict[val]
+    }
+
+    return val
   }
 
   let getuuid = () => {
@@ -2904,8 +2921,8 @@
   }
 
   let filterForm = (n) => {
-    if (n.label && titDict[n.label]) {
-      n.label = titDict[n.label]
+    if (n.label) {
+      n.label = replaceTitle(n.label)
     }
     if (n.resourceType === '1') {
       n.dataSource = filterSql(n.dataSource)
@@ -2966,8 +2983,8 @@
     components.forEach(item => {
       if (item.type === 'tabs') {
         item.subtabs.forEach(tab => {
-          if (tab.label && titDict[tab.label]) {
-            tab.label = titDict[tab.label]
+          if (tab.label) {
+            tab.label = replaceTitle(tab.label)
           }
           traversal(tab.components)
         })
@@ -2975,9 +2992,7 @@
         traversal(item.components)
       } else {
         if (item.wrap && item.wrap.title) {
-          if (titDict[item.wrap.title]) {
-            item.wrap.title = titDict[item.wrap.title]
-          }
+          item.wrap.title = replaceTitle(item.wrap.title)
         }
         if (item.wrap && (item.wrap.click === 'menu' || item.wrap.click === 'menus')) {
           if (item.wrap.click === 'menu') {
@@ -3003,8 +3018,8 @@
 
         if (item.columns) {
           item.columns.forEach(cell => {
-            if (cell.label && titDict[cell.label]) {
-              cell.label = titDict[cell.label]
+            if (cell.label) {
+              cell.label = replaceTitle(cell.label)
             }
           })
         }
@@ -3123,14 +3138,14 @@
         } else if (item.type === 'table') {
           let loopCol = (cols) => {
             cols.forEach(col => {
-              if (col.label && titDict[col.label]) {
-                col.label = titDict[col.label]
+              if (col.label) {
+                col.label = replaceTitle(col.label)
               }
-              if (col.prefix && titDict[col.prefix]) {
-                col.prefix = titDict[col.prefix]
+              if (col.prefix) {
+                col.prefix = replaceTitle(col.prefix)
               }
-              if (col.postfix && titDict[col.postfix]) {
-                col.postfix = titDict[col.postfix]
+              if (col.postfix) {
+                col.postfix = replaceTitle(col.postfix)
               }
               if (col.type === 'colspan') {
                 loopCol(col.subcols)
@@ -5030,6 +5045,7 @@
     // }
 
     let _search = ''
+    
     if (item.setting.execute !== 'false') {
       _dataresource = item.setting.dataresource || ''
       _search = '@mk_search@'
@@ -5039,14 +5055,21 @@
       _search = ''
     }
 
+    let custompage = false
+    let testSql = _dataresource + _customScript + _tailScript
+
+    if (/order\s+by\s+sort_id\s*$/i.test(_dataresource)) {
+      custompage = true
+    } else if (/@pageSize@|@orderBy@|@mk_total/i.test(testSql)) {
+      custompage = true
+    }
+
     if (/\s/.test(_dataresource) && !/\)\s+tb$/.test(_dataresource)) {
       _dataresource = '(' + _dataresource + ') tb'
     }
 
     item.setting.dataresource = _dataresource
     item.setting.customScript = _customScript
-
-    let testSql = _dataresource + _customScript + _tailScript
     
     let decSql = [`@ErrorCode nvarchar(50),@retmsg nvarchar(4000)`]
     let secSql = [`@ErrorCode='S',@retmsg =''`]
@@ -5100,7 +5123,7 @@
     let DateCount = ''
     if (_dataresource) {
       /*system_query*/
-      if (/@pageSize@|@orderBy@|@mk_total/i.test(testSql) || (item.wrap && item.wrap.tree === 'true')) {
+      if (custompage || (item.wrap && item.wrap.tree === 'true')) {
         LText = `select ${arr_field} from ${_dataresource} ${_search} `
       } else if (item.setting.laypage === 'true' && item.setting.order) {
         LText = `select top @pageSize@ ${arr_field} from (select ${arr_field} ,ROW_NUMBER() over(order by @orderBy@) as rows from ${_dataresource} ${_search}) tmptable where rows > @pageSize@ * (@pageIndex@ - 1) order by tmptable.rows `

--
Gitblit v1.8.0