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/index.jsx | 89 +++++--------------------------------------- 1 files changed, 11 insertions(+), 78 deletions(-) diff --git a/src/menu/datasource/verifycard/index.jsx b/src/menu/datasource/verifycard/index.jsx index 266395c..97016ce 100644 --- a/src/menu/datasource/verifycard/index.jsx +++ b/src/menu/datasource/verifycard/index.jsx @@ -8,7 +8,7 @@ import Api from '@/api' import Utils from '@/utils/utils.js' - +import { formatSearch, joinMainSearchkey } from '@/utils/utils-custom.js' import asyncComponent from '@/utils/asyncComponent' import ColForm from './columnform' import CustomScriptsForm from './customscript' @@ -44,7 +44,6 @@ initsql: '', // sql楠岃瘉鏃跺彉閲忓0鏄庡強璧嬪�� usefulfields: '', defaultsql: '', // 榛樿Sql - defaultSearch: '', systemScripts: [], median: {}, visible: false, @@ -210,11 +209,6 @@ }) } - let _search = this.formatSearch(search) - _search = Utils.joinMainSearchkey(_search) - - _search = _search.replace(/@\$@/ig, '') - _search = _search ? 'where ' + _search : '' let columns = config.columns ? fromJS(config.columns).toJS() : [] let subColumns = config.subColumns ? fromJS(config.subColumns).toJS() : [] @@ -227,8 +221,7 @@ subColumns: subColumns, setting: _setting, median: _setting, - searches: search, - defaultSearch: _search, + searches: formatSearch(search), searchKey: '', debugId: _setting.debugId || '' }) @@ -426,15 +419,8 @@ search = [...search, ...mainSearch] } - let _search = this.formatSearch(search) - _search = Utils.joinMainSearchkey(_search) - - _search = _search.replace(/@\$@/ig, '') - _search = _search ? 'where ' + _search : '' - this.setState({ - searches: search, - defaultSearch: _search, + searches: formatSearch(search), setting: res }, () => { this.sqlverify(() => { // 楠岃瘉鎴愬姛 @@ -513,9 +499,12 @@ } getdefaultSql = () => { - const { columns, setting, defaultSearch } = this.state + const { columns, setting, searches } = this.state let defaultsql = '' let arr_field = columns.map(col => col.field).join(',') + + let _search = joinMainSearchkey(searches) + _search = _search ? 'where ' + _search : '' if (setting.dataresource) { let _dataresource = setting.dataresource @@ -524,59 +513,10 @@ _dataresource = '(' + _dataresource + ') tb' } - 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` + 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` } this.setState({defaultsql}) - } - - /** - * @description 鑾峰彇鍏ㄩ儴鎼滅储鏉′欢 - * @param {Array} searches 鎼滅储鏉′欢鏁扮粍 - */ - formatSearch (searches) { - if (!searches) return [] - - let newsearches = [] - searches.forEach(search => { - if (!search.field) return - - let item = { - key: search.field, - match: search.match, - type: search.type, - label: search.label, - value: search.initval, - required: search.required === 'true' - } - if (item.type === 'group') { - item.key = search.datefield - item.type = 'daterange' - item.match = 'between' - item.value = [moment().format('YYYY-MM-DD'), moment().format('YYYY-MM-DD')].join(',') - - newsearches.push(item) - return - } else if (item.type === 'date') { - item.value = moment().format('YYYY-MM-DD') - } else if (item.type === 'datemonth') { - item.value = moment().format('YYYY-MM') - } else if (item.type === 'dateweek') { - 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 = '@$@' - } else { - item.value = '@$@' - } - newsearches.push(item) - }) - - return newsearches } submitDataSource = () => { @@ -611,15 +551,8 @@ search = [...search, ...mainSearch] } - let _search = this.formatSearch(search) - _search = Utils.joinMainSearchkey(_search) - - _search = _search.replace(/@\$@/ig, '') - _search = _search ? 'where ' + _search : '' - this.setState({ - searches: search, - defaultSearch: _search, + searches: formatSearch(search), setting: res }, () => { this.sqlverify(() => { resolve({setting: res, columns, subColumns, scripts, cols }) }, reject, 'submit') @@ -674,7 +607,7 @@ sqlverify = (resolve, reject, type, testScripts) => { const { config } = this.props - const { columns, setting, scripts, searches, defaultSearch, debugId } = this.state + const { columns, setting, scripts, searches, debugId } = this.state let _scripts = scripts.filter(item => item.status !== 'false') @@ -697,7 +630,7 @@ } if ((setting.interType === 'system' && setting.execute !== 'false') || _scripts.length > 0) { - let r = SettingUtils.getDebugSql(setting, _scripts, columns, searches, defaultSearch, config.type) + let r = SettingUtils.getDebugSql(setting, _scripts, columns, searches, config.type) let _debugId = md5(r.sql) -- Gitblit v1.8.0