From 5e10a7ee4a5ef882d6b0d92b19b1a888ffcc6f7f Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期二, 14 四月 2020 11:55:03 +0800 Subject: [PATCH] 2020-04-14 --- src/utils/utils.js | 42 +++++++++++++++++++++++++++++++----------- 1 files changed, 31 insertions(+), 11 deletions(-) diff --git a/src/utils/utils.js b/src/utils/utils.js index 506e85e..b59e5a2 100644 --- a/src/utils/utils.js +++ b/src/utils/utils.js @@ -164,8 +164,8 @@ }) // 1銆佹浛鎹�%绗︼紙鏁版嵁搴撲腑瑙f瀽鍚巗ql鎶ラ敊锛夛紝2銆佸幓闄ゆ敹灏惧浣欑┖鏍� - value = value.replace(/%/ig, 'mpercent') - value = value.replace(/(^\s|\s$)/ig, '') + value = value.replace(/%/ig, ' mpercent ') + // value = value.replace(/(^\s|\s$)/ig, '') // 1銆乪ncode缂栫爜锛堜腑鏂囧瓧绗﹁秴鍑篵ase64鍔犲瘑鑼冨洿锛夛紝2銆乥ase64鍔犲瘑 value = window.btoa(window.encodeURIComponent(value)) @@ -505,7 +505,7 @@ }) } } else if (/^int/ig.test(col.type)) { - if (!val) { + if (!val && val !== 0) { let _error = _position + dict['main.excel.content.emptyerror'] errors.push(_error) } else { @@ -523,7 +523,7 @@ } } } else if (/^Decimal/ig.test(col.type)) { - if (!val) { + if (!val && val !== 0) { let _error = _position + dict['main.excel.content.emptyerror'] errors.push(_error) } else { @@ -667,7 +667,7 @@ * @return {String} type 鎵ц绫诲瀷 * @return {String} table 琛ㄥ悕 */ - static getSysDefaultSql (btn, setting, formdata, param, data, logcolumns) { + static getSysDefaultSql (btn, setting, formdata, param, data, logcolumns, tab) { let primaryId = param.ID let BID = param.BID let verify = btn.verify || {} @@ -985,8 +985,9 @@ _actionType = btn.sqlType } - // 娣诲姞銆佷慨鏀广�侀�昏緫鍒犻櫎銆佺墿鐞嗗垹闄� - if (_actionType === 'insert') { + let _insertsql = '' + let _updatesql = '' + if (_actionType === 'insert' || _actionType === 'insertOrUpdate') { // 娣诲姞璇彞 let keys = [] let values = [] @@ -1020,14 +1021,18 @@ values.push('@fullname') } if (!keys.includes('bid')) { - keys.push('bid') + if (tab && tab.foreignKey && !keys.includes(tab.foreignKey.toLowerCase())) { + keys.push(tab.foreignKey) + } else { + keys.push('bid') + } values.push('@BID@') } keys = keys.join(',') values = values.join(',') - _sql += `insert into ${btn.sql} (${keys}) select ${values};` - } else if (_actionType === 'update') { + _insertsql = `insert into ${btn.sql} (${keys}) select ${values};` + } else if (_actionType === 'insert' || _actionType === 'insertOrUpdate') { // 淇敼璇彞 let _form = [] let _arr = [] @@ -1062,7 +1067,14 @@ } _form = _form.join(',') - _sql += `update ${btn.sql} set ${_form} where ${primaryKey}=@${primaryKeyName};` + _updatesql = `update ${btn.sql} set ${_form} where ${primaryKey}=@${primaryKeyName};` + } + + // 娣诲姞銆佷慨鏀广�侀�昏緫鍒犻櫎銆佺墿鐞嗗垹闄� + if (_actionType === 'insert') { + _sql += _insertsql + } else if (_actionType === 'update') { + _sql += _updatesql } else if (_actionType === 'LogicDelete') { // 閫昏緫鍒犻櫎 _sql += `update ${btn.sql} set deleted=1,modifydate=getdate(),modifyuserid=@userid@ where ${primaryKey}=@${primaryKeyName};` @@ -1078,6 +1090,14 @@ }) } _sql += `insert into snote (remark,createuserid,CreateUser,CreateStaff) select '鍒犻櫎琛�:${btn.sql} 鏁版嵁: ${_msg}${primaryKey}='+@${primaryKeyName},@userid@,@username,@fullname delete ${btn.sql} where ${primaryKey}=@${primaryKeyName};` + } else if (_actionType === 'insertOrUpdate') { + _sql += `select @tbid='' + select @tbid='X' from ${btn.sql} where ${primaryKey}=@ID@ + if @tbid='' + ${_insertsql} + else + ${_updatesql} + ` } // 鎷兼帴鑷畾涔夎剼鏈� -- Gitblit v1.8.0