From 81e637182c8316a491914a252a67e52ea492039c Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期五, 06 十二月 2024 11:43:33 +0800 Subject: [PATCH] 2024-12-06 --- src/utils/utils-custom.js | 280 +++++++++++++++++++++++++++++++++++++++----------------- 1 files changed, 195 insertions(+), 85 deletions(-) diff --git a/src/utils/utils-custom.js b/src/utils/utils-custom.js index f53084c..0164b7c 100644 --- a/src/utils/utils-custom.js +++ b/src/utils/utils-custom.js @@ -1733,6 +1733,7 @@ if (config.interfaces) { config.interfaces.forEach(item => { + if (item.status !== 'true') return if (item.setting && item.setting.interType === 'outer' && item.setting.sysInterface !== 'true') { inters = 'true' } @@ -2193,6 +2194,40 @@ notification.warning({ top: 92, message: label + `${lines}锛屼笉鍙嚭鐜拌繛缁殑鑻辨枃閫楀彿,,`, + duration: 5 + }) + return false + } else if (/,\./ig.test(sql)) { + let lines = [] + sql.split(/\n/).forEach((s, i) => { + if (/,\./ig.test(s)) { + lines.push(i + 1) + } + }) + + lines = lines.join('銆�') + lines = lines ? '(绗�' + lines + '琛�)' : '' + + notification.warning({ + top: 92, + message: label + `${lines}锛屼笉鍙嚭鐜拌嫳鏂囬�楀彿,.`, + duration: 5 + }) + return false + } else if (/\.,/ig.test(sql)) { + let lines = [] + sql.split(/\n/).forEach((s, i) => { + if (/\.,/ig.test(s)) { + lines.push(i + 1) + } + }) + + lines = lines.join('銆�') + lines = lines ? '(绗�' + lines + '琛�)' : '' + + notification.warning({ + top: 92, + message: label + `${lines}锛屼笉鍙嚭鐜拌嫳鏂囬�楀彿.,`, duration: 5 }) return false @@ -3049,7 +3084,7 @@ GOTO_RETURN: ROLLBACK TRAN` - let filterComponent = (components, mainSearch, label = '') => { + let filterComponent = (components, mainSearch, label = '', ispop) => { components.forEach(item => { item.$menuname = (config.MenuName || '') + label + '-' + (item.name || '') @@ -3064,10 +3099,10 @@ _mainSearch = com.search || [] }) } - filterComponent(tab.components, _mainSearch, label) + filterComponent(tab.components, _mainSearch, label, ispop) }) } else if (item.type === 'group') { - filterComponent(item.components, mainSearch, label) + filterComponent(item.components, mainSearch, label, ispop) } else { if (item.wrap && item.setting) { if (item.wrap.datatype === 'public' || item.wrap.datatype === 'static') { @@ -3100,8 +3135,16 @@ item.setting.$name = item.$menuname || '' let msg = getDataSource(item, mainSearch) + let roleId = config.uuid + if (item.wrap && item.wrap.permission === 'false') { + roleId = '' + } else if (item.setting.database === 'sso') { + roleId = '' + } else if (ispop) { + roleId = '' + } - sqls.push({uuid: item.uuid, roleId: item.wrap && item.wrap.permission === 'false' ? '' : config.uuid, type: 'datasource', ...msg}) + sqls.push({uuid: item.uuid, roleId: roleId, type: 'datasource', ...msg}) } else if (item.setting && item.setting.useMSearch === 'true') { let searches = item.search || [] if (mainSearch.length > 0) { @@ -3113,7 +3156,7 @@ item.action && item.action.forEach(cell => { if (cell.hidden === 'true') return false - resetButton(item, cell) + resetButton(item, cell, false, ispop) }) if (item.type === 'table') { @@ -3128,7 +3171,7 @@ col.elements.forEach(cell => { if (cell.eleType !== 'button' || cell.hidden === 'true') return - resetButton(item, cell) + resetButton(item, cell, false, ispop) }) } else if (item.subtype === 'editable' && col.editable === 'true') { if (col.editType === 'select' && col.resourceType === '1') { @@ -3165,7 +3208,7 @@ card.elements && card.elements.forEach(cell => { if (cell.eleType !== 'button' || cell.hidden === 'true') return - resetButton(item, cell) + resetButton(item, cell, false, ispop) }) if (!card.backElements || card.backElements.length === 0) return @@ -3173,14 +3216,14 @@ card.backElements.forEach(cell => { if (cell.eleType !== 'button' || cell.hidden === 'true') return - resetButton(item, cell, true) + resetButton(item, cell, true, ispop) }) }) } else if (item.type === 'balcony') { item.elements.forEach(cell => { if (cell.eleType !== 'button' || cell.hidden === 'true') return - resetButton(item, cell) + resetButton(item, cell, false, ispop) }) } else if (item.type === 'form') { item.subcards.forEach(group => { @@ -3193,7 +3236,7 @@ fields: group.fields } - resetButton(item, group.subButton) + resetButton(item, group.subButton, false, ispop) }) } else if (item.type === 'module' && item.subtype === 'invoice') { if (item.buyer.setting && item.buyer.setting.interType === 'system') { @@ -3224,12 +3267,16 @@ }) } - let resetButton = (item, cell, isback) => { + let resetButton = (item, cell, isback, ispop) => { cell.logLabel = item.$menuname + '-' + cell.label let roleId = cell.uuid if (item.wrap && item.wrap.permission === 'false') { roleId = '' } else if (cell.hidden === 'true' || cell.permission === 'false') { + roleId = '' + } else if (cell.database === 'sso') { + roleId = '' + } else if (ispop) { roleId = '' } @@ -3335,7 +3382,7 @@ sqls.push({uuid: cell.uuid, roleId: roleId, type: 'pay', ...msg}) } } else if (cell.OpenType === 'popview') { - if (cell.config && cell.config.components) { + if (cell.config && cell.config.components && cell.config.enabled) { let _mainSearch = [] if (appType === 'mob') { @@ -3359,7 +3406,7 @@ }) } - filterComponent(cell.config.components, _mainSearch, '-' + cell.label) + filterComponent(cell.config.components, _mainSearch, '-' + cell.label, true) } } } @@ -4063,6 +4110,33 @@ if @works_flow_countersign@ = 'Y' begin /* 宸ヤ綔娴侀粯璁ql锛堜細绛撅級 */ + set @retmsg ='' + select @retmsg='X' from s_my_works_flow_role where works_flow_id=@ID@ and works_flow_code=@works_flow_code@ and deleted=0 and userid =@userid@ and works_flow_detail_id =@works_flow_detail_id + + if @retmsg ='' + begin + select @retmsg='X' from s_my_works_flow_role where works_flow_id=@ID@ and works_flow_code=@works_flow_code@ and userid=@userid@ and works_flow_detail_id =@works_flow_detail_id + if @retmsg !='' + begin + select @ErrorCode='E', @retmsg='褰撳墠鍗曟嵁宸插鏍革紝璇峰埛鏂板悗閲嶈瘯' + goto aaa + end + + set @retmsg ='' + select @retmsg=userid from s_my_works_flow_role where works_flow_id=@id@ and works_flow_code=@works_flow_code@ and deleted=0 and works_flow_detail_id =@works_flow_detail_id + + if @retmsg !='' + begin + select @retmsg=workerCode+workerName from BD_workers where id=@retmsg + + select @retmsg='椤甸潰鏁版嵁宸叉洿鏂帮紝鎴栨病鏈夊綋鍓嶅崟鎹殑瀹℃壒鏉冮檺锛岃鑱旂郴'+@retmsg+'鎿嶄綔' + goto aaa + end + + select @retmsg='椤甸潰鏁版嵁宸叉洿鏂帮紝鎴栨病鏈夊綋鍓嶅崟鎹殑瀹℃壒鏉冮檺' + goto aaa + end + declare @works_flow_statuscharone nvarchar(50),@works_flow_statuschartwo nvarchar(50),@works_flow_statuscharthree nvarchar(50),@works_flow_statuscharfour nvarchar(50),@works_flow_statuscharfive nvarchar(50),@works_flow_key_id nvarchar(50),@works_flow_key_status nvarchar(20),@s_my_works_flow_log_param nvarchar(max),@s_my_works_flow_log_status int,@s_my_works_flow_log_statusname nvarchar(50),@s_my_works_flow_log_detail_id nvarchar(50) select @works_flow_statuscharone='',@works_flow_statuschartwo='',@works_flow_statuscharthree='',@works_flow_statuscharfour='',@works_flow_statuscharfive='',@works_flow_key_id='',@works_flow_key_status ='',@s_my_works_flow_log_param='',@s_my_works_flow_log_status=0,@s_my_works_flow_log_statusname='',@s_my_works_flow_log_detail_id='' @@ -4119,11 +4193,11 @@ begin /* 宸ヤ綔娴侀粯璁ql锛堟垨绛撅級 */ set @retmsg ='' - select @retmsg='X' from s_my_works_flow_role where works_flow_id=@ID@ and works_flow_code=@works_flow_code@ and deleted=0 and userid =@userid@ + select @retmsg='X' from s_my_works_flow_role where works_flow_id=@ID@ and works_flow_code=@works_flow_code@ and deleted=0 and userid =@userid@ and works_flow_detail_id =@works_flow_detail_id if @retmsg ='' begin - select @retmsg='X' from s_my_works_flow_role where works_flow_id=@ID@ and works_flow_code=@works_flow_code@ and userid=@userid@ + select @retmsg='X' from s_my_works_flow_role where works_flow_id=@ID@ and works_flow_code=@works_flow_code@ and userid=@userid@ and works_flow_detail_id =@works_flow_detail_id if @retmsg !='' begin @@ -4133,18 +4207,31 @@ if @dataM@ !='' begin - set @retmsg ='' - select @retmsg='X' from s_my_works_flow_role where works_flow_id=@ID@ and works_flow_code=@works_flow_code@ and deleted=0 + set @retmsg ='' + select @retmsg='X' from s_my_works_flow_role where works_flow_id=@ID@ and works_flow_code=@works_flow_code@ and deleted=0 and works_flow_detail_id =@works_flow_detail_id - if @retmsg != '' + if @retmsg != '' + begin + goto goto_mk + end + end + else + begin + set @retmsg ='' + select @retmsg=userid from s_my_works_flow_role where works_flow_id=@id@ and works_flow_code=@works_flow_code@ and deleted=0 and works_flow_detail_id =@works_flow_detail_id + + if @retmsg !='' begin - goto goto_mk + select @retmsg=workerCode+workerName from BD_workers where id=@retmsg + + select @retmsg='椤甸潰鏁版嵁宸叉洿鏂帮紝鎴栨病鏈夊綋鍓嶅崟鎹殑瀹℃壒鏉冮檺锛岃鑱旂郴'+@retmsg+'鎿嶄綔' + goto aaa end end - + select @retmsg='椤甸潰鏁版嵁宸叉洿鏂帮紝鎴栨病鏈夊綋鍓嶅崟鎹殑瀹℃壒鏉冮檺' goto aaa - end + end goto_mk: @@ -4157,7 +4244,7 @@ if @works_begin_branch@ = 'Y' begin - update s_my_works_flow_role set deleted=0,modifydate=getdate(),upid=@time_id@,modifyuserid=@userid@,modifyuser=@username,modifystaff=@fullname + update s_my_works_flow_role set deleted=0,modifydate=getdate(),upid=@time_id@,modifyuserid=@userid@,modifyuser=@username,modifystaff=@fullname,works_flow_detail_id=@works_flow_detail_id@ where works_flow_id=@ID@ and works_flow_code=@works_flow_code@ and typecharone='begin' end else @@ -4310,6 +4397,12 @@ } }) + if (new RegExp('@mk_submit_type[^0-9a-z_]', 'ig').test(_sql)) { + decSql.push(`@mk_submit_type nvarchar(50)`) + secSql.push(`@mk_submit_type=@mk_submit_type@`) + reps.push('mk_submit_type') + } + decSql = [...decSql, ..._declares] // INSERT INTO s_paas_api_log (appkey,api_name,api_count,menuname,createuserid,createuser,createstaff,cdefine1,cdefine2) @@ -4344,12 +4437,8 @@ return true }) - reps.forEach(n => { - _sql = _sql.replace(new RegExp('@' + n + '@', 'ig'), `'@${n}@'`) - }) - if (/\$@/ig.test(_sql)) { - _sql = _sql.replace(/\$@/ig, '@datam_begin@').replace(/@\$/ig, '@datam_end@') + _sql = _sql.replace(/\$@/ig, ' @datam_begin@ ').replace(/@\$/ig, ' @datam_end@ ') reps.push('datam_begin', 'datam_end') } if (btn.procMode === 'system') { @@ -4358,15 +4447,20 @@ } } else { if (/\$check@|@check\$/ig.test(_sql)) { - _sql = _sql.replace(/\$check@/ig, '@mk_check_begin@').replace(/@check\$/ig, '@mk_check_end@') + _sql = _sql.replace(/\$check@/ig, ' @mk_check_begin@ ').replace(/@check\$/ig, ' @mk_check_end@ ') reps.push('mk_check_begin', 'mk_check_end') } } + reps.forEach(n => { + if (['datam_begin', 'datam_end', 'mk_check_begin', 'mk_check_end'].includes(n)) return + + _sql = _sql.replace(new RegExp('@' + n + '@', 'ig'), `'@${n}@'`) + }) if (/@db@/ig.test(_sql)) { reps.push('db') } - _sql = _sql.replace(/\n\x20{8,10}/g, '\n').replace(/\n{3,}/g, '\n\n').replace(/^\s+|\s+$/g, '').replace(/\t+|\v+/g, '') + _sql = _sql.replace(/\n\x20{8,10}/g, '\n').replace(/\n{3,}/g, '\n\n').replace(/^\s+|\s+$/g, '').replace(/\t+|\v+/g, ' ') reps = reps.filter(n => { if (sysVars.includes(n.toLowerCase())) { @@ -4622,6 +4716,12 @@ } }) + if (new RegExp('@mk_submit_type[^0-9a-z_]', 'ig').test(_sql)) { + decSql.push(`@mk_submit_type nvarchar(50)`) + secSql.push(`@mk_submit_type=@mk_submit_type@`) + reps.push('mk_submit_type') + } + decSql = [...decSql, ..._declares] _sql = `/* ${btn.logLabel}(鍥炶皟) */ @@ -4654,19 +4754,20 @@ return true }) - reps.forEach(n => { - _sql = _sql.replace(new RegExp('@' + n + '@', 'ig'), `'@${n}@'`) - }) - if (/\$@/ig.test(_sql)) { - _sql = _sql.replace(/\$@/ig, '@datam_begin@').replace(/@\$/ig, '@datam_end@') + _sql = _sql.replace(/\$@/ig, ' @datam_begin@ ').replace(/@\$/ig, ' @datam_end@ ') reps.push('datam_begin', 'datam_end') } + reps.forEach(n => { + if (['datam_begin', 'datam_end'].includes(n)) return + + _sql = _sql.replace(new RegExp('@' + n + '@', 'ig'), `'@${n}@'`) + }) if (/@db@/ig.test(_sql)) { reps.push('db') } - _sql = _sql.replace(/\n\x20{8,10}/g, '\n').replace(/\n{3,}/g, '\n\n').replace(/^\s+|\s+$/g, '').replace(/\t+|\v+/g, '') + _sql = _sql.replace(/\n\x20{8,10}/g, '\n').replace(/\n{3,}/g, '\n\n').replace(/^\s+|\s+$/g, '').replace(/\t+|\v+/g, ' ') reps = reps.filter(n => { if (sysVars.includes(n.toLowerCase())) { @@ -4793,7 +4894,7 @@ let DateCount = '' if (_dataresource) { /*system_query*/ - if (/@pageSize@|@orderBy@|@mk_total/i.test(testSql)) { + if (/@pageSize@|@orderBy@|@mk_total/i.test(testSql) || (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 ` @@ -4928,22 +5029,22 @@ return true }) - + + if (/\$@/ig.test(sql)) { + sql = sql.replace(/\$@/ig, ' @datam_begin@ ').replace(/@\$/ig, ' @datam_end@ ') + reps.push('datam_begin', 'datam_end') + } reps.forEach(n => { - if (['orderBy', 'pageSize', 'pageIndex'].includes(n)) return + if (['orderBy', 'pageSize', 'pageIndex', 'datam_begin', 'datam_end'].includes(n)) return sql = sql.replace(new RegExp('@' + n + '@', 'ig'), `'@${n}@'`) }) - if (/\$@/ig.test(sql)) { - sql = sql.replace(/\$@/ig, '@datam_begin@').replace(/@\$/ig, '@datam_end@') - reps.push('datam_begin', 'datam_end') - } if (/@db@/ig.test(sql)) { reps.push('db') } reps.push('mk_obj_name') - sql = sql.replace(/\n\x20{6,8}/g, '\n').replace(/\n{3,}/g, '\n\n').replace(/^\s+|\s+$/g, '').replace(/\t+|\v+/g, '') + sql = sql.replace(/\n\x20{6,8}/g, '\n').replace(/\n{3,}/g, '\n\n').replace(/^\s+|\s+$/g, '').replace(/\t+|\v+/g, ' ') reps = reps.filter(n => { if (sysVars.includes(n.toLowerCase())) { @@ -5232,23 +5333,25 @@ return true }) - reps.forEach(n => { - sql = sql.replace(new RegExp('@' + n + '@', 'ig'), `'@${n}@'`) - }) - if (/\$@/ig.test(sql)) { - sql = sql.replace(/\$@/ig, '@datam_begin@').replace(/@\$/ig, '@datam_end@') + sql = sql.replace(/\$@/ig, ' @datam_begin@ ').replace(/@\$/ig, ' @datam_end@ ') reps.push('datam_begin', 'datam_end') } if (/\$check@|@check\$/ig.test(sql)) { - sql = sql.replace(/\$check@/ig, '@mk_check_begin@').replace(/@check\$/ig, '@mk_check_end@') + sql = sql.replace(/\$check@/ig, ' @mk_check_begin@ ').replace(/@check\$/ig, ' @mk_check_end@ ') reps.push('mk_check_begin', 'mk_check_end') } + reps.forEach(n => { + if (['datam_begin', 'datam_end', 'mk_check_begin', 'mk_check_end'].includes(n)) return + + sql = sql.replace(new RegExp('@' + n + '@', 'ig'), `'@${n}@'`) + }) + if (/@db@/ig.test(sql)) { reps.push('db') } - sql = sql.replace(/\n\x20{6,10}/g, '\n').replace(/\n{3,}/g, '\n\n').replace(/^\s+|\s+$/g, '').replace(/\t+|\v+/g, '') + sql = sql.replace(/\n\x20{6,10}/g, '\n').replace(/\n{3,}/g, '\n\n').replace(/^\s+|\s+$/g, '').replace(/\t+|\v+/g, ' ') reps = reps.filter(n => { if (sysVars.includes(n.toLowerCase())) { @@ -5508,19 +5611,20 @@ return true }) - reps.forEach(n => { - sql = sql.replace(new RegExp('@' + n + '@', 'ig'), `'@${n}@'`) - }) - if (/\$@/ig.test(sql)) { - sql = sql.replace(/\$@/ig, '@datam_begin@').replace(/@\$/ig, '@datam_end@') + sql = sql.replace(/\$@/ig, ' @datam_begin@ ').replace(/@\$/ig, ' @datam_end@ ') reps.push('datam_begin', 'datam_end') } + reps.forEach(n => { + if (['datam_begin', 'datam_end'].includes(n)) return + + sql = sql.replace(new RegExp('@' + n + '@', 'ig'), `'@${n}@'`) + }) if (/@db@/ig.test(sql)) { reps.push('db') } - sql = sql.replace(/\n\x20{6,10}/g, '\n').replace(/\n{3,}/g, '\n\n').replace(/^\s+|\s+$/g, '').replace(/\t+|\v+/g, '') + sql = sql.replace(/\n\x20{6,10}/g, '\n').replace(/\n{3,}/g, '\n\n').replace(/^\s+|\s+$/g, '').replace(/\t+|\v+/g, ' ') reps = reps.filter(n => { if (sysVars.includes(n.toLowerCase())) { @@ -5792,19 +5896,20 @@ return true }) - reps.forEach(n => { - _sql = _sql.replace(new RegExp('@' + n + '@', 'ig'), `'@${n}@'`) - }) - if (/\$@/ig.test(_sql)) { - _sql = _sql.replace(/\$@/ig, '@datam_begin@').replace(/@\$/ig, '@datam_end@') + _sql = _sql.replace(/\$@/ig, ' @datam_begin@ ').replace(/@\$/ig, ' @datam_end@ ') reps.push('datam_begin', 'datam_end') } + reps.forEach(n => { + if (['datam_begin', 'datam_end'].includes(n)) return + + _sql = _sql.replace(new RegExp('@' + n + '@', 'ig'), `'@${n}@'`) + }) if (/@db@/ig.test(_sql)) { reps.push('db') } - _sql = _sql.replace(/\n\x20{6,8}/g, '\n').replace(/\n{3,}/g, '\n\n').replace(/^\s+|\s+$/g, '').replace(/\t+|\v+/g, '') + _sql = _sql.replace(/\n\x20{6,8}/g, '\n').replace(/\n{3,}/g, '\n\n').replace(/^\s+|\s+$/g, '').replace(/\t+|\v+/g, ' ') reps = reps.filter(n => { if (sysVars.includes(n.toLowerCase())) { @@ -5905,21 +6010,22 @@ reps.push(...sysVars) - reps.forEach(n => { - sql = sql.replace(new RegExp('@' + n + '@', 'ig'), `'@${n}@'`) - }) - if (/\$@/ig.test(sql)) { - sql = sql.replace(/\$@/ig, '@datam_begin@').replace(/@\$/ig, '@datam_end@') + sql = sql.replace(/\$@/ig, ' @datam_begin@ ').replace(/@\$/ig, ' @datam_end@ ') reps.push('datam_begin', 'datam_end') } + reps.forEach(n => { + if (['datam_begin', 'datam_end'].includes(n)) return + + sql = sql.replace(new RegExp('@' + n + '@', 'ig'), `'@${n}@'`) + }) if (/@db@/ig.test(sql)) { reps.push('db') } // reps.push('mk_obj_name') - sql = sql.replace(/\n\x20{6,8}/g, '\n').replace(/\n{3,}/g, '\n\n').replace(/^\s+|\s+$/g, '').replace(/\t+|\v+/g, '') + sql = sql.replace(/\n\x20{6,8}/g, '\n').replace(/\n{3,}/g, '\n\n').replace(/^\s+|\s+$/g, '').replace(/\t+|\v+/g, ' ') reps = reps.filter(n => { if (sysVars.includes(n.toLowerCase())) { @@ -6030,20 +6136,20 @@ return true }) + if (/\$@/ig.test(sql)) { + sql = sql.replace(/\$@/ig, ' @datam_begin@ ').replace(/@\$/ig, ' @datam_end@ ') + reps.push('datam_begin', 'datam_end') + } reps.forEach(n => { - if (['orderBy', 'pageSize', 'pageIndex'].includes(n)) return + if (['orderBy', 'pageSize', 'pageIndex', 'datam_begin', 'datam_end'].includes(n)) return sql = sql.replace(new RegExp('@' + n + '@', 'ig'), `'@${n}@'`) }) - if (/\$@/ig.test(sql)) { - sql = sql.replace(/\$@/ig, '@datam_begin@').replace(/@\$/ig, '@datam_end@') - reps.push('datam_begin', 'datam_end') - } if (/@db@/ig.test(sql)) { reps.push('db') } - sql = sql.replace(/\n\x20{6,8}/g, '\n').replace(/\n{3,}/g, '\n\n').replace(/^\s+|\s+$/g, '').replace(/\t+|\v+/g, '') + sql = sql.replace(/\n\x20{6,8}/g, '\n').replace(/\n{3,}/g, '\n\n').replace(/^\s+|\s+$/g, '').replace(/\t+|\v+/g, ' ') reps = reps.filter(n => { if (sysVars.includes(n.toLowerCase())) { @@ -6077,13 +6183,15 @@ } }) - reps.forEach(n => { - _script = _script.replace(new RegExp('@' + n + '@', 'ig'), `'@${n}@'`) - }) if (/\$@/ig.test(_script)) { - _script = _script.replace(/\$@/ig, '@datam_begin@').replace(/@\$/ig, '@datam_end@') + _script = _script.replace(/\$@/ig, ' @datam_begin@ ').replace(/@\$/ig, ' @datam_end@ ') reps.push('datam_begin', 'datam_end') } + reps.forEach(n => { + if (['datam_begin', 'datam_end'].includes(n)) return + + _script = _script.replace(new RegExp('@' + n + '@', 'ig'), `'@${n}@'`) + }) if (/@db@/ig.test(_script)) { reps.push('db') } @@ -6150,7 +6258,7 @@ return true }) - sql = sql.replace(/\n\x20{6,8}/g, '\n').replace(/\n{3,}/g, '\n\n').replace(/^\s+|\s+$/g, '').replace(/\t+|\v+/g, '') + sql = sql.replace(/\n\x20{6,8}/g, '\n').replace(/\n{3,}/g, '\n\n').replace(/^\s+|\s+$/g, '').replace(/\t+|\v+/g, ' ') return {LText: sql, md5: md5(sql), reps} } @@ -6199,15 +6307,17 @@ } }) + if (/\$@/ig.test(testSql)) { + _prev = _prev.replace(/\$@/ig, ' @datam_begin@ ').replace(/@\$/ig, ' @datam_end@ ') + _back = _back.replace(/\$@/ig, ' @datam_begin@ ').replace(/@\$/ig, ' @datam_end@ ') + reps.push('datam_begin', 'datam_end') + } reps.forEach(n => { + if (['datam_begin', 'datam_end'].includes(n)) return + _prev = _prev.replace(new RegExp('@' + n + '@', 'ig'), `'@${n}@'`) _back = _back.replace(new RegExp('@' + n + '@', 'ig'), `'@${n}@'`) }) - if (/\$@/ig.test(testSql)) { - _prev = _prev.replace(/\$@/ig, '@datam_begin@').replace(/@\$/ig, '@datam_end@') - _back = _back.replace(/\$@/ig, '@datam_begin@').replace(/@\$/ig, '@datam_end@') - reps.push('datam_begin', 'datam_end') - } if (/@db@/ig.test(testSql)) { reps.push('db') } @@ -6246,7 +6356,7 @@ ${callback} ` - _sql = _sql.replace(/\n\x20{6,8}/g, '\n').replace(/\n{3,}/g, '\n\n').replace(/^\s+|\s+$/g, '').replace(/\t+|\v+/g, '') + _sql = _sql.replace(/\n\x20{6,8}/g, '\n').replace(/\n{3,}/g, '\n\n').replace(/^\s+|\s+$/g, '').replace(/\t+|\v+/g, ' ') reps = reps.filter(n => { if (sysVars.includes(n.toLowerCase())) { -- Gitblit v1.8.0