From 137fb8ea6af2789b3238b22bac31d80bced41dfe Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期三, 28 七月 2021 11:39:39 +0800 Subject: [PATCH] 2021-07-28 --- src/utils/utils.js | 406 ++++++++++++++++++++++++++++++++++++--------------------- 1 files changed, 253 insertions(+), 153 deletions(-) diff --git a/src/utils/utils.js b/src/utils/utils.js index d0a9b07..93d0120 100644 --- a/src/utils/utils.js +++ b/src/utils/utils.js @@ -236,54 +236,55 @@ } /** - * @description 鍒濆鍖栨悳绱㈡潯浠� + * @description 鍒濆鍖栨悳绱㈡潯浠跺垵濮嬪�� * @param {Array} searches 鎼滅储鏉′欢 - * @return {String} searches 鏍煎紡鍖栧悗缁撴灉 */ - static initMainSearch (searches) { - if (!searches || searches.length === 0) return [] + static initSearchVal (searches) { + if (!searches) return [] - let newsearches = [] - searches.forEach(search => { - let item = { - key: search.field, - match: search.match, - type: search.type, - label: search.label, - value: search.initval, - required: search.required === 'true' - } + let roleId = sessionStorage.getItem('role_id') || '' - if (item.type === 'group') { - let copy = JSON.parse(JSON.stringify(item)) - copy.key = search.datefield + return searches.map(item => { + item.hidden = item.Hide === 'true' + item.required = !item.hidden && item.required === 'true' + item.advanced = item.advanced === 'true' - item.value = search.initval && search.initval[0] ? search.initval[0] : '' - item.match = '=' - item.forbid = true - - copy.type = 'daterange' - copy.match = 'between' - copy.value = '' - - if (search.initval && search.initval.length > 0) { - let _type = search.initval[0] - let _val = search.initval[1] - + if (item.type === 'date') { // 鏃堕棿鎼滅储 + item.initval = item.initval ? moment().subtract(item.initval, 'days').format('YYYY-MM-DD') : '' + } else if (item.type === 'datemonth') { + item.initval = item.initval ? moment().subtract(item.initval, 'month').format('YYYY-MM') : '' + } else if (item.type === 'dateweek') { + item.initval = item.initval ? moment().subtract(item.initval * 7, 'days').format('YYYY-MM-DD') : '' + } else if (item.type === 'daterange') { + if (item.initval) { + try { + let _initval = JSON.parse(item.initval) + let _vals = [moment().subtract(_initval[0], 'days').format('YYYY-MM-DD'), moment().subtract(_initval[1], 'days').format('YYYY-MM-DD')] + item.initval = _vals.join(',') + } catch { + item.initval = '' + } + } + } else if (item.type === 'group') { + if (item.initval && item.initval[0]) { + let _type = item.initval[0] + let _val = item.initval[1] + let _dateRange = '' + if (_type === 'day') { - copy.value = [moment().subtract(_val, 'days').format('YYYY-MM-DD'), + _dateRange = [moment().subtract(_val, 'days').format('YYYY-MM-DD'), moment().subtract(_val, 'days').format('YYYY-MM-DD')] } else if (_type === 'week') { - copy.value = [moment().subtract(_val * 7, 'days').startOf('week').format('YYYY-MM-DD'), + _dateRange = [moment().subtract(_val * 7, 'days').startOf('week').format('YYYY-MM-DD'), moment().subtract(_val * 7, 'days').endOf('week').format('YYYY-MM-DD')] } else if (_type === 'month') { - copy.value = [moment().subtract(_val, 'month').startOf('month').format('YYYY-MM-DD'), + _dateRange = [moment().subtract(_val, 'month').startOf('month').format('YYYY-MM-DD'), moment().subtract(_val, 'month').endOf('month').format('YYYY-MM-DD')] } else if (_type === 'quarter') { let _differ = parseInt(moment().format('MM')) % 3 let _pdiffer = 0 let _ndiffer = 0 - + // 宸�艰绠� switch(_differ) { case 0: @@ -300,82 +301,108 @@ break default: } - - copy.value = [moment().subtract(_pdiffer + _val * 3, 'month').startOf('month').format('YYYY-MM-DD'), + _dateRange = [moment().subtract(_pdiffer + _val * 3, 'month').startOf('month').format('YYYY-MM-DD'), moment().subtract(_ndiffer + _val * 3, 'month').endOf('month').format('YYYY-MM-DD')] } else if (_type === 'year') { let _year = parseInt(moment().format('YYYY')) - _val - copy.value = [_year + '-01-01', _year + '-12-31'] + _dateRange = [_year + '-01-01', _year + '-12-31'] } else if (_type === 'customized') { try { _val = JSON.parse(_val) } catch { _val = [0, 0] } - copy.value = [moment().subtract(_val[0], 'days').format('YYYY-MM-DD'), + _dateRange = [moment().subtract(_val[0], 'days').format('YYYY-MM-DD'), moment().subtract(_val[1], 'days').format('YYYY-MM-DD')] } - } - if (search.transfer === 'true') { - newsearches.push(item) + item.initval = _dateRange.join(',') + item.initType = _type + } else { + item.initval = '' + item.initType = '' } - newsearches.push(copy) - return - } else if (item.type === 'date') { - item.value = item.value ? moment().subtract(item.value, 'days').format('YYYY-MM-DD') : '' - } else if (item.type === 'datemonth') { - item.value = item.value ? moment().subtract(item.value, 'month').format('YYYY-MM') : '' - } else if (item.type === 'dateweek') { - item.value = item.value ? [moment().subtract(item.value * 7, 'days').startOf('week').format('YYYY-MM-DD'), - moment().subtract(item.value * 7, 'days').endOf('week').format('YYYY-MM-DD')] : '' - } else if (item.type === 'daterange') { - let _val = item.value - if (_val) { - try { - _val = JSON.parse(_val) - } catch { - _val = '' - } - } - item.value = _val ? [moment().subtract(_val[0], 'days').format('YYYY-MM-DD'), - moment().subtract(_val[1], 'days').format('YYYY-MM-DD')] : '' - } else if (item.type === 'multiselect') { - item.value = item.value ? item.value.split(',').filter(Boolean) : [] } - newsearches.push(item) + + item.oriInitval = item.initval + + if (item.blacklist && item.blacklist.length > 0 && !item.hidden) { + if (item.blacklist.filter(v => roleId.indexOf(v) > -1).length > 0) { + item.hidden = true + item.required = false + } + } + + return item }) - - return newsearches } /** * @description 鍒濆鍖栨悳绱㈡潯浠� * @param {Array} searches 鎼滅储鏉′欢 - * @return {String} searches 鏍煎紡鍖栧悗缁撴灉 + */ + static initMainSearch (searches) { + if (!searches) return [] + + let values = [] + searches.forEach(cell => { + let item = { + key: cell.field, + match: cell.match, + type: cell.type, + label: cell.label, + value: cell.initval, + required: cell.required + } + + if (cell.type === 'multiselect' || (cell.type === 'checkcard' && cell.multiple === 'true')) { + item.type = 'multi' + } else if (item.type === 'group') { + item.key = cell.datefield + item.type = 'daterange' + item.match = 'between' + + values.push({ + type: 'group', + key: cell.field, + value: cell.initType, + label: cell.label, + match: '=', + forbid: true, + required: cell.required + }) + } + + values.push(item) + }) + + return values + } + + /** + * @description 鍒濆鍖栬嚜瀹氫箟鍑芥暟鎼滅储鏉′欢 + * @param {Array} searches 鎼滅储鏉′欢 */ static formatCustomMainSearch (searches) { - if (!searches || searches.length === 0) return {} + if (!searches) return {} let newsearches = {} searches.forEach(item => { if (item.type === 'date') { - let timetail = '' - let _val = item.value + let _val = item.value || '' - if (item.match === '<' || item.match === '<=') { - timetail = ' 00:00:00.000' - if (_val) { - _val = moment(_val, 'YYYY-MM-DD').add(1, 'days').format('YYYY-MM-DD') + if (_val) { + if (item.match === '<' || item.match === '<=') { + _val = moment(_val, 'YYYY-MM-DD').add(1, 'days').format('YYYY-MM-DD') + ' 00:00:00.000' + } else if (item.match === '>' || item.match === '>=') { + _val = _val + ' 00:00:00.000' } - } else if (item.match === '>' || item.match === '>=') { - timetail = ' 00:00:00.000' } if (newsearches[item.key]) { - newsearches[item.key + '1'] = _val ? _val + timetail : '' + newsearches[item.key + '1'] = _val } else { - newsearches[item.key] = _val ? _val + timetail : '' + newsearches[item.key] = _val } } else if (item.type === 'datemonth') { // 鏈�-杩囨护鏉′欢锛屼粠鏈堝紑濮嬭嚦缁撴潫 @@ -390,35 +417,32 @@ newsearches[item.key] = _startval newsearches[item.key + '1'] = _endval } else if (item.type === 'dateweek') { + let _startval = '' let _endval = '' if (item.value) { - _endval = moment(item.value[1], 'YYYY-MM-DD').add(1, 'days').format('YYYY-MM-DD') + _startval = moment(item.value, 'YYYY-MM-DD' ).startOf('week').format('YYYY-MM-DD') + ' 00:00:00.000' + _endval = moment(item.value, 'YYYY-MM-DD').endOf('week').add(1, 'days').format('YYYY-MM-DD') + ' 00:00:00.000' } - newsearches[item.key] = item.value ? item.value[0] + ' 00:00:00.000' : '' - newsearches[item.key + '1'] = item.value ? _endval + ' 00:00:00.000' : '' + newsearches[item.key] = _startval + newsearches[item.key + '1'] = _endval } else if (item.type === 'daterange') { + let _startval = '' let _endval = '' if (item.value) { - _endval = moment(item.value[1], 'YYYY-MM-DD').add(1, 'days').format('YYYY-MM-DD') + let val = item.value.split(',') + _startval = val[0] + ' 00:00:00.000' + _endval = moment(val[1], 'YYYY-MM-DD').add(1, 'days').format('YYYY-MM-DD') + ' 00:00:00.000' } - newsearches[item.key] = item.value ? item.value[0] + ' 00:00:00.000' : '' - newsearches[item.key + '1'] = item.value ? _endval + ' 00:00:00.000' : '' + newsearches[item.key] = _startval + newsearches[item.key + '1'] = _endval } else if (item.type === 'text' || item.type === 'select') { item.key.split(',').forEach(field => { // 缁煎悎鎼滅储锛屾墍瀛楁鎷兼帴 newsearches[field] = item.value }) - } else if (item.type === 'multiselect') { - newsearches[item.key] = item.value.join(',') } else { newsearches[item.key] = item.value - } - }) - - Object.keys(newsearches).forEach(key => { - if (!newsearches[key]) { - delete newsearches[key] } }) @@ -435,7 +459,7 @@ let searchText = '' searches.forEach(item => { - if (item.forbid || !item.value || (item.type === 'multiselect' && item.value.length === 0)) return + if (item.forbid || !item.value) return searchText += (searchText !== '' ? ' AND ' : '') if (item.type === 'text' || item.type === 'select') { // 缁煎悎鎼滅储锛屾枃鏈垨涓嬫媺锛屾墍鏈夊瓧娈垫嫾鎺� @@ -445,9 +469,8 @@ }) searchText += '(' + fields.join(' OR ') + ')' - } else if (item.type === 'multiselect') { - - searchText += `'${item.value}' ` + item.match + ' \'%\'+' + item.key + '+\'%\'' + } else if (item.type === 'multi') { + searchText += `'${item.value}' ${item.match} '%'+${item.key}+'%'` } else if (item.type === 'date') { let _val = item.value let timetail = ' 00:00:00.000' @@ -467,15 +490,20 @@ searchText += '(' + item.key + ' >= \'' + _startval + '\' AND ' + item.key + ' < \'' + _endval + '\')' } else if (item.type === 'dateweek') { // 鍛�-杩囨护鏉′欢 - let _startval = item.value[0] + ' 00:00:00.000' - let _endval = moment(item.value[1], 'YYYY-MM-DD').add(1, 'days').format('YYYY-MM-DD') + ' 00:00:00.000' + let _startval = moment(item.value, 'YYYY-MM-DD' ).startOf('week').format('YYYY-MM-DD') + ' 00:00:00.000' + let _endval = moment(item.value, 'YYYY-MM-DD').endOf('week').add(1, 'days').format('YYYY-MM-DD') + ' 00:00:00.000' searchText += '(' + item.key + ' >= \'' + _startval + '\' AND ' + item.key + ' < \'' + _endval + '\')' } else if (item.type === 'daterange') { - let _startval = item.value[0] + ' 00:00:00.000' - let _endval = moment(item.value[1], 'YYYY-MM-DD').add(1, 'days').format('YYYY-MM-DD') + ' 00:00:00.000' + let val = item.value.split(',') + let _startval = val[0] + ' 00:00:00.000' + let _endval = moment(val[1], 'YYYY-MM-DD').add(1, 'days').format('YYYY-MM-DD') + ' 00:00:00.000' searchText += '(' + item.key + ' >= \'' + _startval + '\' AND ' + item.key + ' < \'' + _endval + '\')' + } else if (item.type === 'range') { + let val = item.value.split(',') + + searchText += '(' + item.key + ' >= \'' + val[0] + '\' AND ' + item.key + ' < \'' + val[1] + '\')' } else { searchText += '(' + item.key + ' ' + item.match + ' \'' + item.value + '\')' } @@ -529,8 +557,8 @@ options.push(item) options.push(copy) } else if (item.type === 'dateweek') { - let _startval = item.value && item.value[0] ? moment(item.value[0], 'YYYY-MM-DD').format('YYYY-MM-DD') + ' 00:00:00.000' : '1970-01-01 00:00:00.000' - let _endval = item.value && item.value[1] ? moment(item.value[1], 'YYYY-MM-DD').add(1, 'days').format('YYYY-MM-DD') + ' 00:00:00.000' : '2050-01-01 00:00:00.000' + let _startval = item.value ? moment(item.value, 'YYYY-MM-DD').startOf('week').format('YYYY-MM-DD') + ' 00:00:00.000' : '1970-01-01 00:00:00.000' + let _endval = item.value ? moment(item.value, 'YYYY-MM-DD').endOf('week').add(1, 'days').format('YYYY-MM-DD') + ' 00:00:00.000' : '2050-01-01 00:00:00.000' let copy = JSON.parse(JSON.stringify(item)) copy.key = copy.key + '1' @@ -541,8 +569,14 @@ options.push(item) options.push(copy) } else if (item.type === 'daterange') { - let _startval = item.value && item.value[0] ? item.value[0] + ' 00:00:00.000' : '1970-01-01 00:00:00.000' - let _endval = item.value && item.value[1] ? moment(item.value[1], 'YYYY-MM-DD').add(1, 'days').format('YYYY-MM-DD') + ' 00:00:00.000' : '2050-01-01 00:00:00.000' + let _startval = '1970-01-01 00:00:00.000' + let _endval = '2050-01-01 00:00:00.000' + + if (item.value) { + let val = item.value.split(',') + _startval = val[0] + ' 00:00:00.000' + _endval = moment(val[1], 'YYYY-MM-DD').add(1, 'days').format('YYYY-MM-DD') + ' 00:00:00.000' + } let copy = JSON.parse(JSON.stringify(item)) copy.key = copy.key + '1' @@ -552,10 +586,6 @@ options.push(item) options.push(copy) - } else if (item.type === 'multiselect') { - item.value = item.value ? item.value.join(',') : item.value - - options.push(item) } else if (item.type === 'text' || item.type === 'select') { item.key.split(',').forEach(field => { // 缁煎悎鎼滅储锛屾墍瀛楁鎷兼帴 let cell = JSON.parse(JSON.stringify(item)) @@ -595,6 +625,10 @@ if (search.type === 'group') { options.push({ + key: search.field, + value: '0' + }) + options.push({ key: search.datefield, value: '0' }) @@ -602,9 +636,7 @@ key: search.datefield + '1', value: '0' }) - if (search.transfer === 'true') { - options.push(item) - } + options.push(item) } else if (['datemonth', 'dateweek', 'daterange'].includes(search.type)) { options.push(item) options.push({ @@ -624,33 +656,6 @@ }) return options - } - - /** - * @description 鎷兼帴鎼滅储鏉′欢datamanage - * @param {Array} searches 鎼滅储鏉′欢 - * @return {String} searchText 鎷兼帴缁撴灉 - */ - static jointsearchkey (searches) { - if (!searches || searches.length === 0) return '' - let searchText = '' - searches.forEach(item => { - if (!item.value) return - searchText += (searchText !== '' ? ' AND ' : '') - if (item.type === 'text') { - let options = item.key.split(',').map(op => { - // equal鏃朵笉娣诲姞% - let str = item.op === 'equal' ? '' : '%' - return op + ' ' + item.op + ' \'' + str + item.value + str + '\'' - }) - searchText += '(' + options.join(' OR ') + ')' - } else if (item.type === 'date') { - searchText += '(' + item.key + ' ' + item.op + ' \'' + item.value + '\')' - } else { - searchText += '(' + item.key + ' ' + item.op + ' \'' + item.value + '\')' - } - }) - return searchText } /** @@ -702,7 +707,10 @@ arrfield.push(...item.linkSubField) } else if (item.type === 'checkcard') { arrfield = item.fields.map(f => f.field) - arrfield.push(item.valueField) + arrfield.push(item.cardValField) + if (item.urlField) { + arrfield.push(item.urlField) + } } arrfield = Array.from(new Set(arrfield)) @@ -758,14 +766,21 @@ let userName = sessionStorage.getItem('User_Name') || '' let fullName = sessionStorage.getItem('Full_Name') || '' let city = sessionStorage.getItem('city') || '' + let _sheet = item.sheet if (sessionStorage.getItem('isEditState') === 'true') { userName = sessionStorage.getItem('CloudUserName') || '' fullName = sessionStorage.getItem('CloudFullName') || '' } - let database = item.sheet.match(/(.*)\.(.*)\./ig) || '' - let sheet = item.sheet.replace(/(.*)\.(.*)\./ig, '') + if (window.GLOB.externalDatabase !== null) { + _sheet = _sheet.replace(/@db@/ig, window.GLOB.externalDatabase) + } + + let database = _sheet.match(/(.*)\.(.*)\./ig) + let sheet = _sheet.replace(/(.*)\.(.*)\./ig, '') + + database = database ? (database[0] || '') : '' let getuuid = () => { let uuid = [] @@ -811,6 +826,11 @@ // 鎺у埗鍙版墦鍗版暟鎹� let conLtext = [] + let cols = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'] + for (let i = 0; i < 26; i++) { + cols.push('A' + cols[i]) + } + let _Ltext = data.map((item, lindex) => { let vals = [] let convals = [] @@ -818,14 +838,15 @@ if (col.import === 'false') return let val = item[col.Column] !== undefined ? item[col.Column] : '' - let _position = (_topline + lindex + 1) + dict['main.excel.line'] + ' ' + (cindex + 1) + dict['main.excel.column'] + ' ' + let _colindex = cols[cindex] || (cindex + 1) + let _position = (_topline + lindex + 1) + dict['main.excel.line'] + ' ' + _colindex + dict['main.excel.column'] + ' ' if (/^Nvarchar/ig.test(col.type)) { if (typeof(val) === 'number') { val = val.toString() } - val = val.replace(/(^\s*$)|\t*|\v*/ig, '') + val = val.replace(/(^\s*$)|\t*|\v*|'*/ig, '') if (!val && col.required === 'true') { // 蹇呭~鏍¢獙 errors.push(_position + dict['main.excel.content.emptyerror']) @@ -1057,13 +1078,14 @@ * @return {Object} tab 鏍囩淇℃伅 * @return {Boolean} retmsg 鏄惁闇�瑕佹暟鎹繑鍥� */ -export function getSysDefaultSql (btn, setting, formdata, param, data, columns, tab, retmsg = false) { +export function getSysDefaultSql (btn, setting, formdata, param, data, columns, tab, retmsg = false, moduleParams, getOptions) { let primaryId = param.ID let BID = param.BID let verify = btn.verify || {} let datavars = {} // 澹版槑鐨勫彉閲忥紝琛ㄥ崟鍙婃樉绀哄垪 let _actionType = null let _callbacksql = '' + let foreignKey = tab && tab.foreignKey ? tab.foreignKey.toLowerCase() : '' if (verify.default !== 'false') { // 鍒ゆ柇鏄惁浣跨敤榛樿sql _actionType = btn.sqlType @@ -1156,7 +1178,7 @@ } // 娣诲姞鏁版嵁涓瓧娈碉紝琛ㄥ崟鍊间紭鍏�(鎸夐挳涓嶉�夎鎴栧琛屾嫾鎺ユ椂璺宠繃) - if (data && btn.Ot !== 'notRequired' && btn.Ot !== 'requiredOnce') { + if (data && !btn.$forbid && btn.Ot !== 'notRequired' && btn.Ot !== 'requiredOnce') { datavars = {...data, ...datavars} const setField = (col) => { @@ -1290,14 +1312,53 @@ // 澶辨晥楠岃瘉锛屾坊鍔犳暟鎹椂涓嶇敤 if (btn.sqlType !== 'insert' && btn.Ot !== 'notRequired' && verify.invalid === 'true' && setting.dataresource) { let datasource = setting.dataresource + let customScript = setting.customScript || '' + let search = moduleParams ? moduleParams.search : null + let orderBy = moduleParams ? moduleParams.orderBy : setting.order + if (/\s/.test(datasource) && !/tb$/.test(datasource)) { // 鎷兼帴鍒悕 datasource = '(' + datasource + ') tb' } - if (setting.customScript) { + if (getOptions && (setting.queryType === 'statistics' || customScript)) { + let allSearch = getOptions(search) + + let regoptions = allSearch.map(item => { + return { + reg: new RegExp('@' + item.key + '@', 'ig'), + value: `'${item.value}'` + } + }) + regoptions.push({ + reg: new RegExp('@login_city@', 'ig'), + value: `'${city}'` + }, { + reg: new RegExp('@userName@', 'ig'), + value: `'${userName}'` + }, { + reg: new RegExp('@fullName@', 'ig'), + value: `'${fullName}'` + }, { + reg: new RegExp('@orderBy@', 'ig'), + value: orderBy + }, { + reg: new RegExp('@pageSize@', 'ig'), + value: 999999 + }, { + reg: new RegExp('@pageIndex@', 'ig'), + value: 1 + }) + + regoptions.forEach(item => { + datasource = datasource.replace(item.reg, item.value) + customScript = customScript.replace(item.reg, item.value) + }) + } + + if (customScript) { _sql += ` /* 鏁版嵁婧愯嚜瀹氫箟鑴氭湰锛岃娉ㄦ剰鍙橀噺瀹氫箟鏄惁閲嶅 */ - ${setting.customScript} + ${customScript} ` } @@ -1435,9 +1496,9 @@ if (_key === 'bid' && !datavars.bid) { // 琛ㄥ崟涓病鏈塨id鍒欎娇鐢ㄧ郴缁焍id鍙橀噺 _fval = '@BID@' } - if (_key === 'bid' && tab && tab.foreignKey) { - arr.push(tab.foreignKey.toLowerCase()) - _fieldValue.push(`${tab.foreignKey}=${_fval}`) + if (_key === 'bid' && foreignKey) { + arr.push(foreignKey) + _fieldValue.push(`${foreignKey}=${_fval}`) } else { arr.push(_key) _fieldValue.push(`${_key}=${_fval}`) @@ -1558,14 +1619,14 @@ values.push('@fullname') } if (!keys.includes('bid')) { - if (tab && tab.foreignKey && !keys.includes(tab.foreignKey.toLowerCase())) { - keys.push(tab.foreignKey.toLowerCase()) + if (foreignKey && !keys.includes(foreignKey)) { + keys.push(foreignKey) } else { keys.push('bid') } values.push('@BID@') - } else if (tab && tab.foreignKey && !keys.includes(tab.foreignKey.toLowerCase())) { - keys.push(tab.foreignKey.toLowerCase()) + } else if (foreignKey && !keys.includes(foreignKey)) { + keys.push(foreignKey) values.push('@BID@') } @@ -1714,6 +1775,45 @@ } /** + * @description 鐢熸垚鏇挎崲鍑芥暟鍒楄〃 + */ +export function setGLOBFuncs () { + window.GLOB.funcs = [] + if (!window.GLOB.WebSql && !window.GLOB.IndexDB) { + return + } + + if (window.GLOB.WebSql) { + window.GLOB.WebSql.transaction(tx => { + tx.executeSql("SELECT * FROM FUNCS", [], (tx, results) => { + let rows = results.rows + if (!rows || rows.length === 0) return + for (let i = 0; i < rows.length; i++) { + window.GLOB.funcs.push({ + func_code: rows[i].func_code, + key_sql: window.decodeURIComponent(window.atob(rows[i].key_sql)) + }) + } + }) + }) + } else { + let objectStore = window.GLOB.IndexDB.transaction('funcs').objectStore('funcs') + + objectStore.openCursor().onsuccess = (event) => { + let cursor = event.target.result + + if (cursor) { + window.GLOB.funcs.push({ + func_code: cursor.value.func_code, + key_sql: window.decodeURIComponent(window.atob(cursor.value.key_sql)) + }) + cursor.continue() + } + } + } +} + +/** * @description 鍒涘缓瀛樺偍杩囩▼绫� */ export class FuncUtils { -- Gitblit v1.8.0