📄 flowprocess.cs
字号:
info.PassActionName = rdr.GetString("PassActionName");
info.PassActionStatus = rdr.GetInt32("PassActionStatus");
info.RejectActionName = rdr.GetString("RejectActionName");
info.RejectActionStatus = rdr.GetInt32("RejectActionStatus");
return info;
}
public FlowProcessInfo GetFlowProcessById(int flowId, int processId)
{
FlowProcessInfo flowProcessInfo = new FlowProcessInfo();
Parameters cmdParams = new Parameters();
cmdParams.AddInParameter("@FlowId", DbType.Int32, flowId);
cmdParams.AddInParameter("@ProcessId", DbType.Int32, processId);
string strCommand = "SELECT * FROM PE_FlowProcess WHERE FlowID =@FlowId AND ProcessID =@ProcessId";
using (NullableDataReader reader = DBHelper.ExecuteReader(CommandType.Text, strCommand, cmdParams))
{
if (reader.Read())
{
FlowProcessFromrdr(flowProcessInfo, reader);
return flowProcessInfo;
}
return new FlowProcessInfo(true);
}
}
public FlowProcessInfo GetFlowProcessByRoles(int flowId, int roleId)
{
Parameters cmdParams = new Parameters();
cmdParams.AddInParameter("@FlowId", DbType.Int32, flowId);
cmdParams.AddInParameter("@RoleId", DbType.Int32, roleId);
string strCommand = "SELECT * FROM PE_FlowProcess WHERE FlowID =@FlowId AND ProcessID = (SELECT ProcessID FROM PE_Process_Roles WHERE FlowID=@FlowID AND RoleId =@RoleId)";
using (NullableDataReader reader = DBHelper.ExecuteReader(CommandType.Text, strCommand, cmdParams))
{
if (reader.Read())
{
FlowProcessInfo flowProcessInfo = new FlowProcessInfo();
FlowProcessFromrdr(flowProcessInfo, reader);
return flowProcessInfo;
}
return new FlowProcessInfo(true);
}
}
public FlowProcessInfo GetFlowProcessByRoles(int flowId, string roleIdArr)
{
Parameters cmdParams = new Parameters();
cmdParams.AddInParameter("@FlowId", DbType.Int32, flowId);
string strCommand = "SELECT TOP 1 * FROM PE_FlowProcess WHERE FlowID =@FlowId AND ProcessID IN (SELECT ProcessID FROM PE_Process_Roles WHERE FlowID=@FlowID AND RoleId IN (" + roleIdArr + ")) ORDER BY PassActionStatus DESC";
using (NullableDataReader reader = DBHelper.ExecuteReader(CommandType.Text, strCommand, cmdParams))
{
if (reader.Read())
{
FlowProcessInfo flowProcessInfo = new FlowProcessInfo();
FlowProcessFromrdr(flowProcessInfo, reader);
return flowProcessInfo;
}
return new FlowProcessInfo(true);
}
}
public IList<FlowProcessInfo> GetFlowProcessList(int flowId)
{
IList<FlowProcessInfo> list = new List<FlowProcessInfo>();
Parameters cmdParams = new Parameters();
cmdParams.AddInParameter("@FlowID", DbType.Int32, flowId);
string strCommand = "SELECT ProcessId,FlowId,ProcessName,Description,PassActionName,PassActionStatus,RejectActionName,RejectActionStatus FROM PE_FlowProcess";
if (flowId > 0)
{
strCommand = strCommand + " WHERE FlowID=@FlowID";
}
strCommand = strCommand + " Order by ProcessID desc";
using (NullableDataReader reader = DBHelper.ExecuteReader(CommandType.Text, strCommand, cmdParams))
{
while (reader.Read())
{
list.Add(FlowProcessInfoFromrdataReader(reader));
}
}
return list;
}
public string GetGroupIdByProcessIdAndFlowId(int flowId, int processId)
{
string strSql = "SELECT RoleId FROM PE_Process_Roles WHERE FlowId=@FlowId AND ProcessId=@ProcessId";
Parameters cmdParams = new Parameters();
cmdParams.AddInParameter("@FlowId", DbType.Int32, flowId);
cmdParams.AddInParameter("@ProcessId", DbType.Int32, processId);
StringBuilder sb = new StringBuilder();
using (NullableDataReader reader = DBHelper.ExecuteReaderSql(strSql, cmdParams))
{
while (reader.Read())
{
StringHelper.AppendString(sb, reader.GetInt32("RoleId").ToString());
}
}
return sb.ToString();
}
private static int GetMaxProcessId()
{
string strSql = "SELECT MAX(ProcessID) FROM PE_FlowProcess";
return DataConverter.CLng(DBHelper.ExecuteScalarSql(strSql));
}
private static void GetParameters(FlowProcessInfo flowProcessInfo, Parameters parms)
{
parms.AddInParameter("@ProcessId", DbType.Int32, flowProcessInfo.ProcessId);
parms.AddInParameter("@FlowId", DbType.Int32, flowProcessInfo.FlowId);
parms.AddInParameter("@ProcessName", DbType.String, flowProcessInfo.ProcessName);
parms.AddInParameter("@Description", DbType.String, flowProcessInfo.Description);
parms.AddInParameter("@PassActionName", DbType.String, flowProcessInfo.PassActionName);
parms.AddInParameter("@PassActionStatus", DbType.Int32, flowProcessInfo.PassActionStatus);
parms.AddInParameter("@RejectActionName", DbType.String, flowProcessInfo.RejectActionName);
parms.AddInParameter("@RejectActionStatus", DbType.Int32, flowProcessInfo.RejectActionStatus);
}
public IList<RoleInfo> GetProcessRoleList(int flowId, int processId)
{
IList<RoleInfo> list = new List<RoleInfo>();
Parameters cmdParams = new Parameters();
cmdParams.AddInParameter("@FlowID", DbType.Int32, flowId);
cmdParams.AddInParameter("@ProcessID", DbType.Int32, processId);
string strCommand = "SELECT FlowID,ProcessID,RoleId FROM PE_Process_Roles";
if (processId > 0)
{
strCommand = strCommand + " WHERE ProcessID=@ProcessID And FlowID = @FlowID";
}
strCommand = strCommand + " Order by ProcessID desc";
using (NullableDataReader reader = DBHelper.ExecuteReader(CommandType.Text, strCommand, cmdParams))
{
while (reader.Read())
{
RoleInfo item = new RoleInfo();
item.RoleId = reader.GetInt32("RoleId");
list.Add(item);
}
}
return list;
}
public IList<StatusInfo> GetProcessStatusCodeList(int flowId, int processId)
{
IList<StatusInfo> list = new List<StatusInfo>();
Parameters cmdParams = new Parameters();
cmdParams.AddInParameter("@FlowID", DbType.Int32, flowId);
cmdParams.AddInParameter("@ProcessID", DbType.Int32, processId);
string strCommand = "SELECT FlowID,ProcessID,StatusCode FROM PE_ProcessStatusCode";
if (processId > 0)
{
strCommand = strCommand + " WHERE ProcessID=@ProcessID And FlowID = @FlowID";
}
strCommand = strCommand + " Order by ProcessID desc";
using (NullableDataReader reader = DBHelper.ExecuteReader(CommandType.Text, strCommand, cmdParams))
{
while (reader.Read())
{
StatusInfo item = new StatusInfo();
item.StatusCode = reader.GetInt32("StatusCode");
list.Add(item);
}
}
return list;
}
public string GetStatusCodeToProcessStatusCode(int flowId, string rolesId)
{
StringBuilder builder = new StringBuilder();
Parameters cmdParams = new Parameters();
cmdParams.AddInParameter("@FlowID", DbType.Int32, flowId);
string strCommand = "SELECT StatusCode FROM PE_ProcessStatusCode WHERE FlowID=@FlowID AND ProcessID IN (SELECT ProcessID FROM PE_Process_Roles WHERE FlowID=@FlowID AND RoleID IN(" + rolesId + "))";
using (NullableDataReader reader = DBHelper.ExecuteReader(CommandType.Text, strCommand, cmdParams))
{
while (reader.Read())
{
if (builder.Length > 0)
{
builder.Append(",");
}
builder.Append(reader.GetInt32("StatusCode"));
}
}
return builder.ToString();
}
public bool Update(FlowProcessInfo flowProcessInfo)
{
Parameters parms = new Parameters();
GetParameters(flowProcessInfo, parms);
string strSql = "UPDATE PE_FlowProcess SET ProcessID=@ProcessId,FlowID=@FlowId,ProcessName=@ProcessName,Description=@Description,PassActionName=@PassActionName,PassActionStatus=@PassActionStatus,RejectActionName=@RejectActionName,RejectActionStatus=@RejectActionStatus WHERE ProcessID=@ProcessId AND FlowID=@FlowID";
return DBHelper.ExecuteSql(strSql, parms);
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -