From 0847aeed380492bafaf5b27a49ac4e4b77a819b1 Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期四, 08 七月 2021 16:39:09 +0800
Subject: [PATCH] 2021-07-08

---
 src/menu/datasource/verifycard/index.jsx |   38 ++++++++++++++++++++++++++++----------
 1 files changed, 28 insertions(+), 10 deletions(-)

diff --git a/src/menu/datasource/verifycard/index.jsx b/src/menu/datasource/verifycard/index.jsx
index 0d6dcc5..2e247f9 100644
--- a/src/menu/datasource/verifycard/index.jsx
+++ b/src/menu/datasource/verifycard/index.jsx
@@ -34,6 +34,7 @@
     initsql: '',          // sql楠岃瘉鏃跺彉閲忓0鏄庡強璧嬪��
     usefulfields: '',
     defaultsql: '',       // 榛樿Sql
+    defaultSearch: '',
     systemScripts: [],
     colColumns: [
       {
@@ -208,11 +209,18 @@
       })
     }
 
+    let _search = this.formatSearch(search)
+    _search = Utils.joinMainSearchkey(_search)
+
+    _search = _search.replace(/@\$@/ig, '')
+    _search = _search ? 'where ' + _search : ''
+
     this.setState({
       scripts,
       columns: fromJS(config.columns).toJS(),
       setting: _setting,
       searches: search,
+      defaultSearch: _search,
       varMarks: Marks
     })
 
@@ -386,8 +394,15 @@
           return
         }
 
+        let _search = this.formatSearch(search)
+        _search = Utils.joinMainSearchkey(_search)
+
+        _search = _search.replace(/@\$@/ig, '')
+        _search = _search ? 'where ' + _search : ''
+
         this.setState({
           searches: search,
+          defaultSearch: _search,
           setting: res
         }, () => {
           this.sqlverify(() => { // 楠岃瘉鎴愬姛
@@ -441,15 +456,9 @@
   }
 
   getdefaultSql = () => {
-    const { columns, searches, setting } = this.state
+    const { columns, setting, defaultSearch } = this.state
     let defaultsql = ''
     let arr_field = columns.map(col => col.field).join(',')
-
-    let _search = this.formatSearch(searches)
-    _search = Utils.joinMainSearchkey(_search)
-
-    _search = _search.replace(/@\$@/ig, '')
-    _search = _search ? 'where ' + _search : ''
 
     if (setting.dataresource) {
       let _dataresource = setting.dataresource
@@ -458,7 +467,7 @@
         _dataresource = '(' + _dataresource + ') tb'
       }
 
-      defaultsql = `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`
+      defaultsql = `select top @pageSize@ ${arr_field} from (select ${arr_field} ,ROW_NUMBER() over(order by @orderBy@) as rows from ${_dataresource} ${defaultSearch}) tmptable where rows > (@pageSize@ * (@pageIndex@ - 1)) order by tmptable.rows`
     }
 
     this.setState({defaultsql})
@@ -499,6 +508,8 @@
         item.value = moment().format('YYYY-MM-DD')
       } else if (item.type === 'daterange') {
         item.value = [moment().format('YYYY-MM-DD'), moment().format('YYYY-MM-DD')].join(',')
+      } else if (item.type === 'range') {
+
       } else if (item.type === 'multiselect' || (item.type === 'checkcard' && search.multiple === 'true')) {
         item.type = 'multi'
         item.value = '@$@'
@@ -534,8 +545,15 @@
             return
           }
 
+          let _search = this.formatSearch(search)
+          _search = Utils.joinMainSearchkey(_search)
+
+          _search = _search.replace(/@\$@/ig, '')
+          _search = _search ? 'where ' + _search : ''
+
           this.setState({
             searches: search,
+            defaultSearch: _search,
             setting: res
           }, () => {
             this.sqlverify(() => { resolve({setting: res, columns, scripts }) }, reject, false)
@@ -569,7 +587,7 @@
   }
 
   sqlverify = (resolve, reject, change = false, testScripts) => {
-    const { columns, setting, scripts, searches } = this.state
+    const { columns, setting, scripts, searches, defaultSearch } = this.state
 
     let _scripts = scripts.filter(item => item.status !== 'false')
 
@@ -587,7 +605,7 @@
     }
 
     if ((setting.interType === 'system' && setting.execute !== 'false') || _scripts.length > 0) {
-      let result = SettingUtils.getDebugSql(setting, _scripts, columns, searches)
+      let result = SettingUtils.getDebugSql(setting, _scripts, columns, searches, defaultSearch)
 
       if (result.error) {
         notification.warning({

--
Gitblit v1.8.0