From 9a1416e0b5cdb40f49b3c2061b04b35551d77e99 Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期二, 19 九月 2023 18:14:21 +0800
Subject: [PATCH] 2023-09-19

---
 src/menu/datasource/verifycard/utils.jsx |   79 ++++++---------------------------------
 1 files changed, 12 insertions(+), 67 deletions(-)

diff --git a/src/menu/datasource/verifycard/utils.jsx b/src/menu/datasource/verifycard/utils.jsx
index ad11e06..cea7779 100644
--- a/src/menu/datasource/verifycard/utils.jsx
+++ b/src/menu/datasource/verifycard/utils.jsx
@@ -1,4 +1,6 @@
 
+import { getSearchRegs, joinMainSearchkey } from '@/utils/utils-custom.js'
+
 export default class SettingUtils {
   /**
    * @description 鐢熸垚椤甸潰鏌ヨ璇彞
@@ -7,7 +9,7 @@
    * @return {Object}  setting       椤甸潰璁剧疆
    * @return {Array}   columns       鏄剧ず瀛楁
    */
-  static getDebugSql (setting, scripts, columns, searches = [], defSearch, type) {
+  static getDebugSql (setting, scripts, columns, searches = [], type) {
     let sql = ''
     let error = ''
     let _dataresource = ''
@@ -95,85 +97,28 @@
     }
 
     // 姝e垯鏇挎崲
-    let _regoptions = []
-    let _fields = []
     let custompage = /@pageSize@|@orderBy@/i.test(_dataresource + _customScript)
+    let _regoptions = getSearchRegs(searches)
 
-    searches.forEach(item => {
-      if (!item.field) return
-      if (item.datefield) {
-        _regoptions.push({
-          reg: new RegExp('@' + item.datefield + '@', 'ig')
-        })
-        _regoptions.push({
-          reg: new RegExp('@' + item.datefield + '1@', 'ig')
-        })
-      }
-      if (['dateweek', 'datemonth', 'range'].includes(item.type)) {
-        _regoptions.push({
-          reg: new RegExp('@' + item.field + '@', 'ig')
-        })
-        _regoptions.push({
-          reg: new RegExp('@' + item.field + '1@', 'ig')
-        })
-      } else if (item.type === 'daterange') {
-        let _skey = item.field
-        let _ekey = item.field + '1'
-
-        if (/,/.test(item.field)) {
-          _skey = item.field.split(',')[0]
-          _ekey = item.field.split(',')[1]
-        }
-
-        _regoptions.push({
-          reg: new RegExp('@' + _skey + '@', 'ig')
-        })
-        _regoptions.push({
-          reg: new RegExp('@' + _ekey + '@', 'ig')
-        })
-      } else if (item.type === 'date') {
-        if (_fields.includes(item.field)) {
-          _regoptions.push({
-            reg: new RegExp('@' + item.field + '1@', 'ig')
-          })
-        } else {
-          _fields.push(item.field)
-          _regoptions.push({
-            reg: new RegExp('@' + item.field + '@', 'ig')
-          })
-        }
-      } else if (item.type === 'text' || item.type === 'select') {
-        item.field.split(',').forEach(field => {
-          _regoptions.push({
-            reg: new RegExp('@' + field + '@', 'ig')
-          })
-        })
-      } else {
-        _regoptions.push({
-          reg: new RegExp('@' + item.field + '@', 'ig')
-        })
-      }
-    })
+    let _search = joinMainSearchkey(searches)
+    _search = _search ? 'where ' + _search : ''
 
     _regoptions.push({
       reg: new RegExp('@orderBy@', 'ig'),
-    }, {
-      reg: new RegExp('@UserName@', 'ig'),
-    }, {
-      reg: new RegExp('@FullName@', 'ig'),
+      value: setting.order || ''
     }, {
       reg: new RegExp('@pageSize@', 'ig'),
+      value: 9999
     }, {
       reg: new RegExp('@pageIndex@', 'ig'),
+      value: 1
     })
 
     _regoptions.forEach(item => {
-      _dataresource = _dataresource.replace(item.reg, '0')
-      _customScript = _customScript.replace(item.reg, '0')
-      _tailScript = _tailScript.replace(item.reg, '0')
+      _dataresource = _dataresource.replace(item.reg, item.value || '0')
+      _customScript = _customScript.replace(item.reg, item.value || '0')
+      _tailScript = _tailScript.replace(item.reg, item.value || '0')
     })
-
-    let _search = defSearch
 
     if (setting.queryType === 'statistics') {
       _search = ''

--
Gitblit v1.8.0