SVN r1044
SVN-Revision: r1044
This commit is contained in:
@@ -53,8 +53,8 @@ namespace Lskj.Business.Impl
|
||||
EXEC @return = {procedureName} {string.Join(", ", parameters)};
|
||||
SELECT @return AS 'return', @msg AS msg;";
|
||||
|
||||
Clipboard.SetText(script);
|
||||
|
||||
if(ERPInfo.Instance.UserName.Equals("管理员")) Clipboard.SetText(script);
|
||||
LogHelper.Instance.WriteLog(script);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
@@ -108,8 +108,8 @@ SELECT @return AS 'return', @msg AS msg;";
|
||||
EXEC @return = {procedureName} {string.Join(", ", parameters)}
|
||||
SELECT @return AS 'return', @msg AS msg;";
|
||||
|
||||
Clipboard.SetText(script);
|
||||
|
||||
if (ERPInfo.Instance.UserName.Equals("管理员")) Clipboard.SetText(script);
|
||||
LogHelper.Instance.WriteLog(script);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
@@ -146,8 +146,8 @@ SELECT @return AS 'return', @msg AS msg;";
|
||||
EXEC @return = p_baseApply {string.Join(", ", parameters)}
|
||||
SELECT @return AS 'return', @msg AS msg;";
|
||||
|
||||
Clipboard.SetText(script);
|
||||
|
||||
if (ERPInfo.Instance.UserName.Equals("管理员")) Clipboard.SetText(script);
|
||||
LogHelper.Instance.WriteLog(script);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
@@ -190,7 +190,8 @@ SELECT @return AS 'return', @msg AS msg;
|
||||
-- 清理临时表
|
||||
DELETE {EscapeSqlString(detailTable)}_temp WHERE sysstr = N'{EscapeSqlString(detailGuid)}';";
|
||||
|
||||
Clipboard.SetText(script);
|
||||
if (ERPInfo.Instance.UserName.Equals("管理员")) Clipboard.SetText(script);
|
||||
LogHelper.Instance.WriteLog(script);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
@@ -229,8 +230,8 @@ DELETE {EscapeSqlString(detailTable)}_temp WHERE sysstr = N'{EscapeSqlString(det
|
||||
EXEC @return = p_billApply {string.Join(", ", parameters)};
|
||||
SELECT @return AS 'return', @msg AS msg;";
|
||||
|
||||
Clipboard.SetText(executionScript);
|
||||
|
||||
if (ERPInfo.Instance.UserName.Equals("管理员")) Clipboard.SetText(executionScript);
|
||||
LogHelper.Instance.WriteLog(executionScript);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
@@ -310,7 +311,8 @@ SELECT
|
||||
'msg' = @msg;";
|
||||
|
||||
// 复制到剪贴板
|
||||
Clipboard.SetText(script);
|
||||
if (ERPInfo.Instance.UserName.Equals("管理员")) Clipboard.SetText(script);
|
||||
LogHelper.Instance.WriteLog(script);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
@@ -320,6 +322,105 @@ SELECT
|
||||
|
||||
|
||||
|
||||
public static void GenerateAuditExecutionScript(
|
||||
DynamicModel sysModel,
|
||||
string stepCode,
|
||||
string billDocumentId,
|
||||
string storedName,
|
||||
string accractFlag,
|
||||
string remindSelect,
|
||||
string remarkText = "",
|
||||
string remindOpers = "",
|
||||
string confirmOpers = "",
|
||||
bool ret = false,
|
||||
int returnd = 0,
|
||||
int selectConfirmFlag = 0,
|
||||
bool isStepOver = false,
|
||||
int comfirm = 0)
|
||||
{
|
||||
try
|
||||
{
|
||||
// 检查新审核参数是否存在
|
||||
bool newAudit = true;
|
||||
string[] newParameter = new string[] { "@nextSelectStepCode", "@nextSelectStepOper", "@selectConfirmFlag" };
|
||||
if (!BaseAuditImpl.isParamComplete(storedName, newParameter))
|
||||
newAudit = false;
|
||||
|
||||
// 检查存储过程是否包含@confirmFlag参数(模拟原方法syscolumns查询逻辑)
|
||||
bool hasConfirmFlag = CheckIfProcedureHasParameter(storedName, "@confirmFlag");
|
||||
|
||||
// 构建参数列表
|
||||
List<string> parameters = new List<string>
|
||||
{
|
||||
// 基础参数
|
||||
$"@typeCode = N'{EscapeSqlString(sysModel.ModuleCode)}'",
|
||||
$"@stepCode = {(string.IsNullOrEmpty(stepCode) ? 0 : Convert.ToInt32(stepCode))}",
|
||||
$"@billDocumentId = N'{EscapeSqlString(billDocumentId)}'",
|
||||
$"@operatorId = {sysModel.UserId}",
|
||||
$"@operatorName = N'{EscapeSqlString(sysModel.UserName)}'",
|
||||
$@"@auditAdvice = N'{EscapeSqlString(accractFlag == "F" ?
|
||||
remarkText : (isStepOver ? $"由[{sysModel.UserName}]强制退回,意见:{remarkText}" : remarkText))}'",
|
||||
$"@Direction = N'{EscapeSqlString(accractFlag)}'",
|
||||
"@msg = @msg OUTPUT"
|
||||
};
|
||||
|
||||
// 添加新审核相关参数
|
||||
if (newAudit)
|
||||
{
|
||||
parameters.Add($"@selectConfirmFlag = {selectConfirmFlag}");
|
||||
parameters.Add("@nextSelectStepCode = @nextSelectStepCode OUTPUT");
|
||||
parameters.Add("@nextSelectStepOper = @nextSelectStepOper OUTPUT");
|
||||
}
|
||||
|
||||
// 添加提醒相关参数
|
||||
if (remindSelect == "1")
|
||||
{
|
||||
parameters.Add($"@hint_opers = N'{EscapeSqlString(remindOpers)}'");
|
||||
parameters.Add($"@comfirm_opers = N'{EscapeSqlString(confirmOpers)}'");
|
||||
}
|
||||
|
||||
// 添加返回步骤参数
|
||||
if (ret)
|
||||
{
|
||||
parameters.Add($"@backStepCode = {returnd}");
|
||||
}
|
||||
|
||||
// 新增:如果存储过程包含@confirmFlag参数,则添加该参数
|
||||
if (hasConfirmFlag)
|
||||
{
|
||||
parameters.Add($"@confirmFlag = {comfirm}");
|
||||
}
|
||||
|
||||
// 构建完整执行语句
|
||||
string script = $@"DECLARE
|
||||
@msg {(ERPInfo.Instance.ChangeParameterType ? "NVARCHAR(6000)" : "VARCHAR(3000)")},
|
||||
@nextSelectStepCode VARCHAR(3000),
|
||||
@nextSelectStepOper VARCHAR(3000),
|
||||
@return INT;
|
||||
|
||||
EXEC @return = {storedName}
|
||||
{string.Join(",\n ", parameters)};
|
||||
|
||||
SELECT
|
||||
'return' = @return,
|
||||
'nextSelectStepCode' = @nextSelectStepCode,
|
||||
'nextSelectStepOper' = @nextSelectStepOper,
|
||||
'msg' = @msg;";
|
||||
|
||||
// 复制到剪贴板并日志记录
|
||||
if (ERPInfo.Instance.UserName.Equals("管理员"))
|
||||
Clipboard.SetText(script);
|
||||
LogHelper.Instance.WriteLog(script);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
//右键执行存储过程
|
||||
public static void GenerateProcedureExecutionScript(string Action, List<string> paramList,bool isFirstFlag = false,string comfirmFlag = "0")
|
||||
{
|
||||
@@ -365,7 +466,8 @@ EXEC @returnValue = {procedureName}
|
||||
SELECT 'return' = @returnValue, 'msg' = @msg;";
|
||||
|
||||
// 复制到剪贴板
|
||||
Clipboard.SetText(script);
|
||||
if (ERPInfo.Instance.UserName.Equals("管理员")) Clipboard.SetText(script);
|
||||
LogHelper.Instance.WriteLog(script);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user