From 47fb26c2fbebd4f1d4db11be3480fad3f2b409da Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期二, 08 十月 2024 17:42:09 +0800 Subject: [PATCH] 2024-10-08 --- src/utils/utils-custom.js | 60 +++++++++++++++++++++++++++++++++++++++++++++--------------- 1 files changed, 45 insertions(+), 15 deletions(-) diff --git a/src/utils/utils-custom.js b/src/utils/utils-custom.js index 0ab2b6b..a219755 100644 --- a/src/utils/utils-custom.js +++ b/src/utils/utils-custom.js @@ -3083,7 +3083,7 @@ if (['select', 'link', 'multiselect', 'checkcard', 'radio'].includes(cell.type) && cell.resourceType === '1' && cell.dataSource) { let msg = getFormSql(cell, '鎼滅储') - sqls.push({uuid: cell.uuid, type: 'sForm', ...msg}) + sqls.push({uuid: md5(item.uuid + cell.uuid), type: 'sForm', ...msg}) } }) } @@ -3455,7 +3455,7 @@ type: item.type, isconst: item.constant === 'true' } - + if (_item.type === 'datemonth') { _item.type = 'text' } else if (_item.type === 'number' || _item.type === 'rate') { @@ -3832,11 +3832,7 @@ let _key = item.key.toLowerCase() keys.push(_key) - if (item.type === 'number' || item.type === 'rate') { - values.push('@mk_' + _key + '_mk@') - } else { - values.push(`'@mk_${_key}_mk@'`) - } + values.push('@' + _key) }) if (!keys.includes(primaryKey.toLowerCase())) { @@ -3880,11 +3876,7 @@ let _key = item.key.toLowerCase() _arr.push(_key) - if (item.type === 'number' || item.type === 'rate') { - _form.push(`${_key}=@mk_${_key}_mk@`) - } else { - _form.push(`${_key}='@mk_${_key}_mk@'`) - } + _form.push(_key + '=@' + _key) }) if (_actionType === 'audit') { @@ -4806,8 +4798,14 @@ // INSERT INTO s_paas_api_log (appkey,api_name,api_count,menuname,createuserid,createuser,createstaff,cdefine1,cdefine2) // SELECT @appkey@,'sPC_Get_TableData',1,@menuname@,@UserID@,@username@,@fullname@,@SessionUid@,@LoginUID@ let sql = '' + let e_sql = `select ${_columns.map(col => col.field).join(',')} from (select ${_columns.map(col => /date/ig.test(col.datatype) ? `'1949-10-01' as ${col.field}` : `'0' as ${col.field}`).join(',')}) a where ${item.setting.primaryKey || 'ID'} != '0'` + if (DateCount) { + e_sql += ` + select 0 as total + ` + } - if (item.setting.transact === 'true') { + if (item.setting.transact === 'true' && !/BEGIN\s+TRY\s+begin\s+TRAN/.test(_customScript)) { sql = `/* ${item.setting.$name} */ BEGIN TRY begin TRAN @@ -4818,7 +4816,29 @@ _tailScript = `${_tailScript} select @ErrorCode as ErrorCode,@retmsg as retmsg - ${callback} + + COMMIT TRAN + set NOCOUNT ON + RETURN + END TRY + BEGIN CATCH + ROLLBACK TRAN + DECLARE @ErrorMessage NVARCHAR(4000); + DECLARE @ErrorSeverity INT; + DECLARE @ErrorState INT; + + set @ErrorCode=cast(ERROR_NUMBER() as nvarchar(50)) + set @retmsg=ERROR_MESSAGE(); + select @ErrorMessage=ERROR_MESSAGE(), @ErrorSeverity=ERROR_SEVERITY(), @ErrorState=ERROR_STATE(); + + RAISERROR(@ErrorMessage, @ErrorSeverity, @ErrorState); + END CATCH + + aaa: + ${e_sql} + select @ErrorCode as ErrorCode,@retmsg as retmsg + GOTO_RETURN: + ROLLBACK TRAN ` } else { sql = `/* ${item.setting.$name} */ @@ -4826,8 +4846,18 @@ arr_field='${arr_field}',tabid='${tabid}',parid='${parid}',sub_name='${sub_name}',sub_field='${sub_field}' ` + let tail = 'aaa:' + if (/\sgoto\s+aaa([^0-9a-z_]|$)/ig.test(_customScript) && !/BEGIN\s+TRY\s+begin\s+TRAN/.test(_customScript)) { + tail = `if 1=2 + begin + aaa: + ${e_sql} + end` + } + _tailScript = `${_tailScript} - select @ErrorCode as ErrorCode,@retmsg as retmsg + ${tail} + select @ErrorCode as ErrorCode,@retmsg as retmsg ` } -- Gitblit v1.8.0