SVN r980
SVN-Revision: r980
This commit is contained in:
@@ -163,7 +163,139 @@ namespace Lskj.Business.Impl
|
|||||||
return msg.Value + "";
|
return msg.Value + "";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 说明:返回审批结果(Return 值用于逻辑判断;@msg 用于提示展示)
|
||||||
|
/// 创建人:龚宇超
|
||||||
|
/// 创建日期:2017-12-11
|
||||||
|
/// 修改日期:2025-09-10(新增重载:返回 SP Return 值;@msg 通过 out)
|
||||||
|
/// </summary>
|
||||||
|
public static string Audit(
|
||||||
|
out string nextSelectStepCode,
|
||||||
|
out string nextSelectStepOper,
|
||||||
|
out string msgText, // 新增:@msg 输出
|
||||||
|
DynamicModel sysModel,
|
||||||
|
string stepCode,
|
||||||
|
string billDocumentId,
|
||||||
|
string message, // 兼容保留
|
||||||
|
string storedName,
|
||||||
|
string accractFlag,
|
||||||
|
string remindSelect,
|
||||||
|
string remarkText = "",
|
||||||
|
string remindOpers = "",
|
||||||
|
string confirmOpers = "",
|
||||||
|
bool ret = false,
|
||||||
|
int returnd = 0,
|
||||||
|
int selectConfirmFlag = 0,
|
||||||
|
bool IsStepOver = false)
|
||||||
|
{
|
||||||
|
bool newAudit = true;
|
||||||
|
int i = 8;
|
||||||
|
string[] newParameter = new string[] { "@nextSelectStepCode", "@nextSelectStepOper", "@selectConfirmFlag" };
|
||||||
|
if (!isParamComplete(storedName, newParameter)) newAudit = false;
|
||||||
|
|
||||||
|
// 输出参数
|
||||||
|
SqlParameter pMsg = ERPInfo.Instance.ChangeParameterType
|
||||||
|
? new SqlParameter("@msg", SqlDbType.NVarChar, 6000)
|
||||||
|
: new SqlParameter("@msg", SqlDbType.VarChar, 3000);
|
||||||
|
pMsg.Direction = ParameterDirection.Output;
|
||||||
|
|
||||||
|
SqlParameter pNextSelectStepCode = new SqlParameter("@nextSelectStepCode", SqlDbType.VarChar, 3000);
|
||||||
|
pNextSelectStepCode.Direction = ParameterDirection.Output;
|
||||||
|
|
||||||
|
SqlParameter pNextSelectStepOper = new SqlParameter("@nextSelectStepOper", SqlDbType.VarChar, 3000);
|
||||||
|
pNextSelectStepOper.Direction = ParameterDirection.Output;
|
||||||
|
|
||||||
|
// Return 值参数
|
||||||
|
SqlParameter pReturn = new SqlParameter("@RETURN_VALUE", SqlDbType.Int)
|
||||||
|
{
|
||||||
|
Direction = ParameterDirection.ReturnValue
|
||||||
|
};
|
||||||
|
|
||||||
|
// 入参
|
||||||
|
List<SqlParameter> list = new List<SqlParameter>
|
||||||
|
{
|
||||||
|
new SqlParameter("@typeCode", SqlDbType.VarChar, 10),
|
||||||
|
new SqlParameter("@stepCode", SqlDbType.Int, 4),
|
||||||
|
new SqlParameter("@billDocumentId", SqlDbType.VarChar, 200),
|
||||||
|
new SqlParameter("@operatorId", SqlDbType.Int, 4),
|
||||||
|
ERPInfo.Instance.ChangeParameterType
|
||||||
|
? new SqlParameter("@operatorName", SqlDbType.NVarChar, 40)
|
||||||
|
: new SqlParameter("@operatorName", SqlDbType.VarChar, 20),
|
||||||
|
new SqlParameter("@auditAdvice", SqlDbType.VarChar, 500),
|
||||||
|
new SqlParameter("@Direction", SqlDbType.Char, 1),
|
||||||
|
pMsg
|
||||||
|
};
|
||||||
|
|
||||||
|
if (newAudit)
|
||||||
|
{
|
||||||
|
list.Add(new SqlParameter("@selectConfirmFlag", SqlDbType.Int, 4));
|
||||||
|
list.Add(pNextSelectStepCode);
|
||||||
|
list.Add(pNextSelectStepOper);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (remindSelect == "1")
|
||||||
|
{
|
||||||
|
list.Add(new SqlParameter("@hint_opers", SqlDbType.VarChar, 8000));
|
||||||
|
list.Add(new SqlParameter("@comfirm_opers", SqlDbType.VarChar, 8000));
|
||||||
|
}
|
||||||
|
|
||||||
|
if (ret)
|
||||||
|
{
|
||||||
|
list.Add(new SqlParameter("@backStepCode", SqlDbType.Int, 4));
|
||||||
|
}
|
||||||
|
|
||||||
|
// 追加 Return 参数
|
||||||
|
list.Add(pReturn);
|
||||||
|
|
||||||
|
SqlParameter[] param = list.ToArray();
|
||||||
|
|
||||||
|
// 赋值
|
||||||
|
param[0].Value = sysModel.ModuleCode;
|
||||||
|
param[1].Value = string.IsNullOrEmpty(stepCode) ? 0 : Convert.ToInt32(stepCode);
|
||||||
|
param[2].Value = billDocumentId;
|
||||||
|
param[3].Value = sysModel.UserId;
|
||||||
|
param[4].Value = sysModel.UserName;
|
||||||
|
param[5].Value = (accractFlag == "F")
|
||||||
|
? remarkText
|
||||||
|
: (IsStepOver ? $"由[{sysModel.UserName}]强制退回,意见:{remarkText}" : remarkText);
|
||||||
|
param[6].Value = accractFlag;
|
||||||
|
param[7].Value = ""; // @msg 初始
|
||||||
|
|
||||||
|
if (newAudit)
|
||||||
|
{
|
||||||
|
param[8].Value = selectConfirmFlag;
|
||||||
|
param[9].Value = ""; // @nextSelectStepCode 初始
|
||||||
|
param[10].Value = ""; // @nextSelectStepOper 初始
|
||||||
|
i += 3;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (remindSelect == "1")
|
||||||
|
{
|
||||||
|
param[i].Value = remindOpers;
|
||||||
|
param[i + 1].Value = confirmOpers;
|
||||||
|
i += 2;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (ret)
|
||||||
|
{
|
||||||
|
param[i].Value = returnd;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 执行
|
||||||
|
SqlHelper.ExecuteDataSet(CommandType.StoredProcedure, storedName, "bill", param);
|
||||||
|
|
||||||
|
// 输出赋值
|
||||||
|
nextSelectStepCode = pNextSelectStepCode.Value + "";
|
||||||
|
nextSelectStepOper = pNextSelectStepOper.Value + "";
|
||||||
|
msgText = pMsg.Value + "";
|
||||||
|
|
||||||
|
// 返回存储过程 Return 值(以字符串返回,便于 "1".Equals(...) 判断)
|
||||||
|
string retCode = (pReturn.Value == null || pReturn.Value == DBNull.Value)
|
||||||
|
? "0"
|
||||||
|
: Convert.ToInt32(pReturn.Value).ToString();
|
||||||
|
|
||||||
|
return retCode;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -1000,4 +1132,23 @@ namespace Lskj.Business.Impl
|
|||||||
/// <para>创建人:</para>
|
/// <para>创建人:</para>
|
||||||
/// <para>创建日期:2023-05-12</para>
|
/// <para>创建日期:2023-05-12</para>
|
||||||
/// <para>修改人:</para>
|
/// <para>修改人:</para>
|
||||||
/// <para
|
/// <para>修改日期:</para>
|
||||||
|
/// <para>修改备注:</para>
|
||||||
|
/// <para>版本:1.0</para>
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="typeCode">模块编号.</param>
|
||||||
|
/// <returns>DataRow.</returns>
|
||||||
|
public static DataRow GetAgencyAuthority(string typeCode)
|
||||||
|
{
|
||||||
|
DataTable dtTable = new DataTable();
|
||||||
|
if (SqlHelper.ExecuteDataTable("select object_id('p_systemPrivilegeAgentTab')").Rows.Count > 0 && int.Parse(SqlHelper.ExecuteScalar("select count(*) from sysobjects where id = object_id('p_systemPrivilegeAgentTab')") + "") > 0)
|
||||||
|
{
|
||||||
|
string sqlValue = string.Format("select sourceuser from p_systemPrivilegeAgentTab where modid='{0}' and targetuser='{1}' and starttime<=getdate() and endtime>=getdate() and ban=1", typeCode, ERPInfo.Instance.UserName);
|
||||||
|
dtTable = SqlHelper.ExecuteDataTable(sqlValue);
|
||||||
|
}
|
||||||
|
return dtTable.Rows.Count > 0 ? dtTable.Rows[0] : null;
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user