From 0d6459d3bcd158d358752d2a6721a80e1192e110 Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期二, 24 十一月 2020 19:10:11 +0800 Subject: [PATCH] 2020-11-24 --- src/utils/utils.js | 67 ++++++++++++++++++++------------- 1 files changed, 40 insertions(+), 27 deletions(-) diff --git a/src/utils/utils.js b/src/utils/utils.js index 952b283..76f7af3 100644 --- a/src/utils/utils.js +++ b/src/utils/utils.js @@ -163,6 +163,10 @@ }) // 鏇挎崲%绗︼紙鏁版嵁搴撲腑瑙f瀽鍚巗ql鎶ラ敊锛� value = value.replace(/%/ig, ' mpercent ') + // 澶栬仈鏁版嵁搴撴浛鎹� + if (window.GLOB.externalDatabase !== null) { + value = value.replace(/@db@/ig, `[${window.GLOB.externalDatabase}]..`) + } // encode缂栫爜锛堜腑鏂囧瓧绗﹁秴鍑篵ase64鍔犲瘑鑼冨洿锛� value = window.btoa(window.encodeURIComponent(value)) // 鎻掑叆瀛楃 @@ -230,6 +234,10 @@ // 1銆佹浛鎹�%绗︼紙鏁版嵁搴撲腑瑙f瀽鍚巗ql鎶ラ敊锛� value = value.replace(/%/ig, ' mpercent ') + // 澶栬仈鏁版嵁搴撴浛鎹� + if (window.GLOB.externalDatabase !== null) { + value = value.replace(/@db@/ig, `[${window.GLOB.externalDatabase}]..`) + } let encodesql = (val) => { if (!val) return '' @@ -634,9 +642,7 @@ } else { baseurl = window.GLOB.location + window.GLOB.service } - // if (!/Content\/images\/upload\//.test(url)) { - // baseurl = baseurl + 'Content/images/upload/' - // } + let realurl = url.match(/^http/) || url.match(/^\/\//) ? url : baseurl + url return realurl } @@ -668,8 +674,11 @@ if (item.type === 'link') { arrfield.push(item.linkField) - } else if (item.type === 'select' && item.linkSubField && item.linkSubField.length > 0) { + } else if ((item.type === 'select' || item.type === 'radio') && item.linkSubField && item.linkSubField.length > 0) { arrfield.push(...item.linkSubField) + } else if (item.type === 'checkcard') { + arrfield = item.fields.map(f => f.field) + arrfield.push(item.valueField) } arrfield = Array.from(new Set(arrfield)) @@ -684,9 +693,9 @@ arrfield = arrfield.join(',') if (item.orderBy) { - sql = `select ${arrfield} from (select distinct ${arrfield},${item.orderBy} as orderfield from ${_datasource} ) a order by orderfield ${item.orderType}` + sql = `select ${item.type === 'checkcard' ? 'top 20' : ''} ${arrfield} from (select distinct ${arrfield},${item.orderBy} as orderfield from ${_datasource} ) a order by orderfield ${item.orderType}` } else { - sql = 'select distinct ' + arrfield + ' from ' + _datasource + sql = `select ${item.type === 'checkcard' ? 'top 20' : ''} ${arrfield} from (select distinct ${arrfield} from ${_datasource}) a` } return { @@ -956,7 +965,7 @@ ${_sqlBottom} ` fsql = fsql.replace(/\n\s{8}/ig, '\n') - console.log(fsql) + console.info(fsql) } } else { // s_sDataDictb_excelIn 浜戠瀵嗛挜楠岃瘉鍙傛暟 _sql = ` @@ -1026,20 +1035,17 @@ }) // 闇�瑕佸0鏄庣殑鍙橀噺闆� - // let _vars = ['tbid', 'ErrorCode', 'retmsg', 'BillCode', 'BVoucher', 'FIBVoucherDate', 'FiYear', 'UserName', 'FullName', 'ID', 'BID', 'LoginUID', 'SessionUid', 'UserID', 'Appkey'] let _vars = ['tbid', 'errorcode', 'retmsg', 'billcode', 'bvoucher', 'fibvoucherdate', 'fiyear', 'username', 'fullname', 'modulardetailcode'] // 涓婚敭瀛楁 let primaryKey = setting.primaryKey || 'id' - // 绯荤粺鍙橀噺澹版槑涓庤缃垵濮嬪�� - let _sql = `/* 绯荤粺鐢熸垚 */ - Declare @tbid nvarchar(50),@ErrorCode nvarchar(50),@retmsg nvarchar(4000),@BillCode nvarchar(50),@BVoucher nvarchar(50),@FIBVoucherDate nvarchar(50), @FiYear nvarchar(50), @UserName nvarchar(50),@FullName nvarchar(50),@ModularDetailCode nvarchar(50) - ` + // sql璇彞 + let _sql = '' - // let _initvars = ['ID', 'BID', 'LoginUID', 'SessionUid', 'UserID', 'Appkey'] // 宸茶祴鍊煎瓧娈甸泦 let _initvars = [] // 宸茶祴鍊煎瓧娈甸泦 - let _initfields = [] + let _initFormfields = [] + let _initColfields = [] let _declarefields = [] // 鑾峰彇瀛楁閿�煎 @@ -1064,9 +1070,9 @@ val = 0 } } - _initfields.push(`@${_key}=${val}`) + _initFormfields.push(`@${_key}=${val}`) } else { - _initfields.push(`@${_key}='${form.value}'`) + _initFormfields.push(`@${_key}='${form.value}'`) } } @@ -1109,9 +1115,9 @@ _val = 0 } } - _initfields.push(`@${_key}=${_val}`) + _initColfields.push(`@${_key}=${_val}`) } else { - _initfields.push(`@${_key}='${_val}'`) + _initColfields.push(`@${_key}='${_val}'`) } } @@ -1140,17 +1146,24 @@ // 鍙橀噺澹版槑 _declarefields = _declarefields.join(',') if (_declarefields) { - _sql = `/* 绯荤粺鐢熸垚 */ - Declare @tbid nvarchar(50),@ErrorCode nvarchar(50),@retmsg nvarchar(4000),@BillCode nvarchar(50),@BVoucher nvarchar(50),@FIBVoucherDate nvarchar(50), @FiYear nvarchar(50), @UserName nvarchar(50),@FullName nvarchar(50),@ModularDetailCode nvarchar(50),${_declarefields} - ` + _declarefields = ',' + _declarefields } + _sql = `/* 绯荤粺鐢熸垚 */ + Declare @tbid nvarchar(50),@ErrorCode nvarchar(50),@retmsg nvarchar(4000),@BillCode nvarchar(50),@BVoucher nvarchar(50),@FIBVoucherDate nvarchar(50), @FiYear nvarchar(50), @UserName nvarchar(50),@FullName nvarchar(50),@ModularDetailCode nvarchar(50)${_declarefields} + ` - // 鍙橀噺璧嬪�� - _initfields = _initfields.join(',') - if (_initfields) { + // 琛ㄥ崟鍙橀噺璧嬪�� + if (_initFormfields.length > 0) { _sql += ` - - select ${_initfields} + /* 琛ㄥ崟鍙橀噺璧嬪�� */ + select ${_initFormfields.join(',')} + ` + } + // 鏄剧ず鍒楀彉閲忚祴鍊� + if (_initColfields.length > 0) { + _sql += ` + /* 鏄剧ず鍒楀彉閲忚祴鍊� */ + select ${_initColfields.join(',')} ` } @@ -1603,7 +1616,7 @@ if ((window.GLOB.systemType !== 'production' && options.sysType !== 'cloud') || window.debugger === true) { _sql = _sql.replace(/\n\s{8}/ig, '\n') - console.log(_sql) + console.info(_sql) } return _sql -- Gitblit v1.8.0