From 35b44bed4aa7b3f645c20fca025813cf4f3786ea Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期日, 02 二月 2020 10:22:25 +0800 Subject: [PATCH] 2020-02-02 --- src/utils/utils.js | 58 ++++++++++++++++++++++++++++------------------------------ 1 files changed, 28 insertions(+), 30 deletions(-) diff --git a/src/utils/utils.js b/src/utils/utils.js index 4d2c968..0355853 100644 --- a/src/utils/utils.js +++ b/src/utils/utils.js @@ -166,25 +166,11 @@ value = value.replace(/%/ig, 'mpercent') value = value.replace(/(^\s|\s$)/ig, '') - // value = value.replace(/>/ig, 'greateror') - // .replace(/</ig, 'lessor') - // .replace(/!=/ig, 'noequal') - // .replace(/=/ig, 'equal') - // .replace(/,/ig, 'comma') - // .replace(/>=/ig, 'greaterorequal') - // .replace(/<=/ig, 'lessorequal') - // .replace(/@/ig, 'matk') - // .replace(/\(/ig, 'mlbrktsk') - // .replace(/\)/ig, 'mrbrktsk') - // .replace(/\*/ig, 'mastrsk') - // .replace(/'/ig, 'mqotek') - // .replace(/\s/ig, 'mspace') - // 1銆乪ncode缂栫爜锛堜腑鏂囧瓧绗﹁秴鍑篵ase64鍔犲瘑鑼冨洿锛夛紝2銆乥ase64鍔犲瘑 value = window.btoa(window.encodeURIComponent(value)) - // 闅忔満鎻掑叆瀛楃 - let index = Math.floor(Math.random() * value.length) + // 鎻掑叆瀛楃 + let index = Math.floor(value.length / 2) value = value.slice(0, index) + salt + value.slice(index) // base64鍔犲瘑 @@ -419,10 +405,20 @@ } /** - * @description 鑾峰彇涓嬫媺鎼滅储鏌ヨsql + * @description 鑾峰彇涓嬫媺鎼滅储鏌ヨ鏉′欢 * @return {String} item 鎼滅储鏉′欢淇℃伅 */ - static getSelectQuerySql (item) { + static getSelectQueryOptions (item) { + let arrfield = [item.valueField, item.valueText] + + if (item.type === 'link') { + arrfield.push(item.linkField) + } else if (item.type === 'select' && item.linkSubField && item.linkSubField.length > 0) { + arrfield.push(...item.linkSubField) + } + + arrfield = Array.from(new Set(arrfield)) + let _datasource = item.dataSource let sql = '' @@ -430,17 +426,18 @@ _datasource = '(' + _datasource + ') tb' } - if (item.type === 'link') { - sql = 'select ' + item.valueField + ',' + item.valueText + ',' + item.linkField + ' from ' + _datasource - } else { - sql = 'select ' + item.valueField + ',' + item.valueText + ' from ' + _datasource - } + arrfield = arrfield.join(',') if (item.orderBy) { - sql = sql + ' order by ' + item.orderBy + ' ' + item.orderType + sql = 'select distinct ' + arrfield + ',' + item.orderBy + ' as orderfield from ' + _datasource + ' order by orderfield ' + item.orderType + } else { + sql = 'select distinct ' + arrfield + ' from ' + _datasource } - return sql + return { + sql: sql, + field: arrfield + } } /** @@ -449,7 +446,7 @@ * @return {String} table 琛ㄥ悕 */ static getSysDefaultSql (btn, setting, formdata, param, data) { - let primaryId = param[setting.primaryKey] + let primaryId = param.ID let BID = param.BID let verify = btn.verify let _formFieldValue = {} @@ -496,17 +493,18 @@ verify.uniques.forEach(item => { let _fieldValue = [] // 琛ㄥ崟閿�煎field=value let _value = [] // 琛ㄥ崟鍊硷紝鐢ㄤ簬閿欒鎻愮ず + let _labels = item.fieldlabel.split(',') - item.field.split(',').forEach(_field => { + item.field.split(',').forEach((_field, index) => { _fieldValue.push(`${_field}='${_formFieldValue[_field]}'`) - _value.push(_formFieldValue[_field]) + _value.push(`${_labels[index] || ''}锛�${_formFieldValue[_field] || ''}`) }) _sql += `Select @tbid='', @ErrorCode='',@retmsg='' Select @tbid='X' from ${btn.sql} where ${_fieldValue.join(' and ')} and ${primaryKey} !='${_primaryId}' If @tbid!='' Begin - select @ErrorCode='${item.errorCode}',@retmsg='${item.fieldlabel || ''}锛�${_value.join(' ')} 宸插瓨鍦�' + select @ErrorCode='${item.errorCode}',@retmsg='${_value.join(', ')} 宸插瓨鍦�' goto aaa end ` @@ -615,7 +613,7 @@ _sql += `declare @UserName nvarchar(50),@FullName nvarchar(50) select @UserName=UserName,@FullName=FullName from SUsers where UID=@UserID ` - _sql += `insert into ${btn.sql} (${keys},createuserid,CreateUser,CreateStaff,BID) select ${values},@BID,@userid,@username,@fullname` + _sql += `insert into ${btn.sql} (${keys},createuserid,CreateUser,CreateStaff,BID) select ${values},@userid,@username,@fullname,@BID` } else if (btn.OpenType === 'pop' && btn.sqlType === 'update') { let _form = [] formdata.forEach(item => { -- Gitblit v1.8.0