|
|
using System;
|
|
|
using System.Data;
|
|
|
using System.Data.SqlClient;
|
|
|
using DSWeb.Models;
|
|
|
using WebSqlHelper;
|
|
|
using System.Collections;
|
|
|
using System.Collections.Generic;
|
|
|
//using DSWeb.WorkFlow;
|
|
|
|
|
|
namespace DSWeb.EntityDA
|
|
|
{
|
|
|
public class WorkFlowDoDA
|
|
|
{
|
|
|
//workflow_do
|
|
|
private const string PARM_WORKFLOW_DO_GID = "@gid";
|
|
|
private const string PARM_WORKFLOW_DO_WORKFLOW_ID = "@workflow_id";
|
|
|
|
|
|
private const string PARM_WORKFLOW_DO_BILL_NO = "@bill_no";
|
|
|
private const string PARM_WORKFLOW_DO_STEP_ID = "@step_id";
|
|
|
private const string PARM_WORKFLOW_DO_AUDITOR = "@auditor";
|
|
|
private const string PARM_WORKFLOW_DO_AUDIT_TIME = "@audit_time";
|
|
|
private const string PARM_WORKFLOW_DO_BSNO = "@bsno";
|
|
|
private const string PARM_WORKFLOW_DO_FEE_ID = "@fee_id";
|
|
|
private const string PARM_WORKFLOW_DO_FEE_STATUS = "@fee_status";
|
|
|
private const string PARM_WORKFLOW_DO_DO_QUERY_SQL = "@do_query_sql";
|
|
|
private const string PARM_WORKFLOW_DO_STEP_NO = "@step_no";
|
|
|
private const string PARM_WORKFLOW_DO_IS_FINISH = "@is_finish";
|
|
|
private const string PARM_WORKFLOW_DO_IS_DELETED = "@is_deleted";
|
|
|
private const string PARM_WORKFLOW_DO_DELETE_STEP = "@delete_step";
|
|
|
private const string PARM_WORKFLOW_DO_DELETE_OPERATOR = "@delete_operator";
|
|
|
private const string PARM_WORKFLOW_DO_DELETE_STEP_NO = "@delete_stepno";
|
|
|
private const string PARM_WORKFLOW_DO_DELETE_APPLICANT = "@applicant";
|
|
|
|
|
|
//ch_fee_payapplication
|
|
|
private const string PARM_SETTLE_APPL_GID = "@gid";
|
|
|
private const string PARM_SETTLE_APPL_BILL_NO = "@bill_no";
|
|
|
private const string PARM_SETTLE_APPL_BILL_STATUS = "@bill_status";
|
|
|
private const string PARM_SETTLE_APPL_COMPANY_ID = "@company_id";
|
|
|
//ch_fee
|
|
|
private const string PARM_FEE_GID = "@gid";
|
|
|
private const string PARM_FEE_ORDER_AMOUNT = "@order_amount";
|
|
|
//ch_fee_do
|
|
|
private const string PARM_CH_FEE_DO_GID = "@gid";
|
|
|
|
|
|
private const string SQL_SELECT_WORKFLOW_DO_BY_GID = "SELECT GID, WORKFLOWID, BILLNO, STEPID, AUDITOR, AUDITTIME, BSNO, FEEID, FEESTATUS, DOQUERYSQL, STEPNO, ISFINISH FROM workflow_do WHERE GID = @gid ";
|
|
|
|
|
|
private const string SQL_SELECT_WORKFLOW_DO_BY_WORKFLOW_ID = "SELECT GID, WORKFLOWID,BILLNO, STEPID, AUDITOR, AUDITTIME, BSNO, FEEID, FEESTATUS, DOQUERYSQL, STEPNO, ISFINISH FROM workflow_do WHERE WORKFLOWID = @workflow_id";
|
|
|
|
|
|
private const string SQL_SELECT_WORKFLOW_DO_BY_FEEID_AND_WORKFLOWID = "SELECT GID, WORKFLOWID, BILLNO, STEPID, AUDITOR, AUDITTIME, BSNO, FEEID, FEESTATUS, DOQUERYSQL, STEPNO, ISFINISH,APPLICANT FROM workflow_do WHERE WORKFLOWID = @workflow_id AND FEEID = @fee_id";
|
|
|
|
|
|
private const string SQL_SELECT_WORKFLOW_DO_BY_BILLNO_AND_WORKFLOWID = "SELECT GID, WORKFLOWID, BILLNO, STEPID, AUDITOR, AUDITTIME, BSNO, FEEID, FEESTATUS, DOQUERYSQL, STEPNO, ISFINISH,APPLICANT FROM workflow_do WHERE ISALLFINISH = 0 AND BILLNO = @bill_no AND WORKFLOWID =@workflow_id ORDER BY STEPNO DESC ";
|
|
|
|
|
|
private const string SQL_SELECT_WORKFLOW_DO_BY_AUDITORID_AND_WORKFLOWID = "SELECT GID, WORKFLOWID, BILLNO, STEPID, AUDITOR, AUDITTIME, BSNO, FEEID, FEESTATUS, DOQUERYSQL, STEPNO, ISFINISH,APPLICANT FROM workflow_do WHERE WORKFLOWID = @workflow_id AND AUDITOR = @auditor ORDER BY STEPNO DESC ";
|
|
|
|
|
|
private const string SQL_SELECT_WORKFLOW_DO_BY_BILLNO = "SELECT GID, WORKFLOWID, BILLNO, STEPID, AUDITOR, AUDITTIME, BSNO, FEEID, FEESTATUS, DOQUERYSQL, STEPNO, ISFINISH,APPLICANT FROM workflow_do WHERE BILLNO = @bill_no ORDER BY STEPNO DESC ";
|
|
|
|
|
|
private const string SQL_INSERT_WORKFLOW_DO = "INSERT INTO workflow_do (GID, WORKFLOWID, BILLNO, STEPID, AUDITOR, AUDITTIME, BSNO, FEEID, FEESTATUS, DOQUERYSQL, STEPNO, ISFINISH,APPLICANT)"
|
|
|
+ " VALUES(@gid,@workflow_id,@bill_no,@step_id,@auditor,GETDATE(),@bsno,@fee_id,@fee_status,@do_query_sql,@step_no,@is_finish,@applicant)";
|
|
|
|
|
|
private const string SQL_UPDATE_WORKFLOW_DO_STEP = " UPDATE workflow_do SET ISFINISH = 1,AUDITTIME = GETDATE() WHERE GID = @gid ";
|
|
|
|
|
|
private const string SQL_UPDATE_CH_FEE_PAY_APP = "UPDATE ch_fee_payapplication SET BILLSTATUS = @bill_status WHERE BILLNO = @bill_no";
|
|
|
|
|
|
private const string SQL_UPDATE_WORKFLOW_DO_RECORD_REJECT_STEP = "UPDATE workflow_do SET ISDELETE = @is_deleted,DELETESTEP = @delete_step,DELETEOPERATOR = @delete_operator,DELETESTEPNO = @delete_stepno,ISFINISH = @is_finish,ISALLFINISH = 1 WHERE WORKFLOWID = @workflow_id AND BILLNO = @bill_no AND ISALLFINISH = 0 ";
|
|
|
|
|
|
private const string SQL_SELECT_WORKFLOW_DO_STEP_NO = " SELECT AUDITOR+'#'+CAST(STEPNO as varchar) FROM workflow_do WHERE GID = @gid ";
|
|
|
|
|
|
private const string SQL_UPDATE_WORKFLOW_DO_SAME_STEP = "UPDATE workflow_do SET ISFINISH = 1 WHERE WORKFLOWID = @workflow_id AND ISFINISH = 0 AND STEPNO = @step_no AND BILLNO = @bill_no";
|
|
|
|
|
|
private string SQL_UPDATE_PAY_APPLICATION_STATUS = "UPDATE ch_fee_payapplication SET BILLSTATUS = @bill_status WHERE BILLNO = @bill_no AND COMPANYID = @company_id ";
|
|
|
|
|
|
private string SQL_UPDATE_CH_FEE_FOR_REJECT = "UPDATE ch_fee SET ORDERAMOUNT = ORDERAMOUNT - @order_amount WHERE GID = @gid";
|
|
|
|
|
|
private string SQL_UPDATE_CH_FEE_DO_FOR_DELETE = "UPDATE ch_fee_do SET ISDELETED = 1 WHERE GID = @gid";
|
|
|
|
|
|
private string SQL_SELECT_WORKFLOW_DO_BY_BILLNO_FOR_MSG = "SELECT GID, WORKFLOWID, BILLNO, STEPID, AUDITOR, AUDITTIME, BSNO, FEEID, FEESTATUS, DOQUERYSQL, STEPNO, ISFINISH,APPLICANT FROM workflow_do WHERE WORKFLOWID = @workflow_id AND BILLNO = @bill_no AND ISNULL(ISALLFINISH,0) <> 1 AND ISNULL(ISDELETE,0) <> 1 ";
|
|
|
|
|
|
private string SQL_SELECT_WORKFLOW_DO_FEEAUDIT_PASS_FOR_MSG = "SELECT GID, WORKFLOWID, BILLNO, STEPID, AUDITOR, AUDITTIME, BSNO, FEEID, FEESTATUS, DOQUERYSQL, STEPNO, ISFINISH,APPLICANT FROM workflow_do WHERE WORKFLOWID = @workflow_id AND BILLNO = @bill_no AND ISNULL(ISDELETE,0) <> 1 ";
|
|
|
|
|
|
private string SQL_SELECT_WORKFLOW_DO_FEEAUDIT_REJECT_FOR_MSG = "SELECT TOP 1 GID, WORKFLOWID, BILLNO, STEPID, AUDITOR, AUDITTIME, BSNO, FEEID, FEESTATUS, DOQUERYSQL, STEPNO, ISFINISH,APPLICANT FROM workflow_do WHERE WORKFLOWID = @workflow_id AND BILLNO = @bill_no ORDER BY AUDITTIME DESC ";
|
|
|
|
|
|
private string SQL_SELECT_WORKFLOW_DO_Exist_WorkflowID = "select count(GID) from workflow_do where workflowid=@workflowid ";
|
|
|
|
|
|
private string SQL_SELECT_WORKFLOW_DO_Exist_WorkflowStepID = "select count(GID) from workflow_do where stepid=@step_id ";
|
|
|
|
|
|
#region 检查是否为工作流(workflow.gid)定义了工作步骤(workflow_step)
|
|
|
/// <summary>
|
|
|
/// 检查工作流(workflow.gid)是否开始了审批流程(workflow_do)
|
|
|
/// </summary>
|
|
|
/// <param name="tempWorkFlowID">工作流GID</param>
|
|
|
/// <returns></returns>
|
|
|
public int GetExistWorkFlowStepID(string tempWorkFlowStepID)
|
|
|
{
|
|
|
int iResult = 0;
|
|
|
int iExistState = 0;
|
|
|
SqlParameter runningParm = new SqlParameter(PARM_WORKFLOW_DO_STEP_ID, SqlDbType.VarChar, 36);
|
|
|
runningParm.Value = tempWorkFlowStepID;
|
|
|
|
|
|
using (SqlConnection sqlConnection = new SqlConnection(SqlHelper.ConnectionStringLocalTransaction))
|
|
|
{
|
|
|
try
|
|
|
{
|
|
|
iExistState = (int)SqlHelper.ExecuteScalar(sqlConnection, CommandType.Text, SQL_SELECT_WORKFLOW_DO_Exist_WorkflowStepID, runningParm);
|
|
|
|
|
|
if (iExistState > 0)
|
|
|
{
|
|
|
iResult = 1;//如果存在工作步骤,返回1
|
|
|
}
|
|
|
}
|
|
|
catch
|
|
|
{
|
|
|
sqlConnection.Close();
|
|
|
}
|
|
|
}
|
|
|
return iResult;
|
|
|
}
|
|
|
#endregion
|
|
|
|
|
|
#region 检查是否为工作流(workflow.gid)定义了工作步骤(workflow_step)
|
|
|
/// <summary>
|
|
|
/// 检查工作流(workflow.gid)是否开始了审批流程(workflow_do)
|
|
|
/// </summary>
|
|
|
/// <param name="tempWorkFlowID">工作流GID</param>
|
|
|
/// <returns></returns>
|
|
|
public int GetExistWorkFlowID(string tempWorkFlowID)
|
|
|
{
|
|
|
int iResult = 0;
|
|
|
int iExistState = 0;
|
|
|
SqlParameter runningParm = new SqlParameter(PARM_WORKFLOW_DO_WORKFLOW_ID, SqlDbType.VarChar, 36);
|
|
|
runningParm.Value = tempWorkFlowID;
|
|
|
|
|
|
using (SqlConnection sqlConnection = new SqlConnection(SqlHelper.ConnectionStringLocalTransaction))
|
|
|
{
|
|
|
try
|
|
|
{
|
|
|
iExistState = (int)SqlHelper.ExecuteScalar(sqlConnection, CommandType.Text, SQL_SELECT_WORKFLOW_DO_Exist_WorkflowID, runningParm);
|
|
|
|
|
|
if (iExistState > 0)
|
|
|
{
|
|
|
iResult = 1;//如果存在工作步骤,返回1
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
iResult = 0;
|
|
|
}
|
|
|
}
|
|
|
catch
|
|
|
{
|
|
|
sqlConnection.Close();
|
|
|
}
|
|
|
}
|
|
|
return iResult;
|
|
|
}
|
|
|
#endregion
|
|
|
|
|
|
#region 获取审核驳回的工作流信息
|
|
|
/// <summary>
|
|
|
/// 获取审核驳回的工作流信息
|
|
|
/// </summary>
|
|
|
/// <param name="tempWorkFlowGID">工作流GID</param>
|
|
|
/// <param name="tempBillNO">业务编号</param>
|
|
|
/// <returns>返回实体类工作流记录</returns>
|
|
|
public IList<WorkFlowDoEntity> GetWorkFlowDoAuditRejectForMessage(string tempWorkFlowGID, string tempBillNO)
|
|
|
{
|
|
|
//初始化返回变量
|
|
|
IList<WorkFlowDoEntity> workFlowDoEntities = new List<WorkFlowDoEntity>();
|
|
|
//初始化参数并赋值
|
|
|
SqlParameter[] parms = new SqlParameter[] {
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_WORKFLOW_ID, SqlDbType.VarChar, 36),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_BILL_NO, SqlDbType.VarChar, 36)
|
|
|
};
|
|
|
|
|
|
parms[0].Value = tempWorkFlowGID;
|
|
|
parms[1].Value = tempBillNO;
|
|
|
|
|
|
using (SqlDataReader sqlRead = SqlHelper.ExecuteReader(SqlHelper.ConnectionStringLocalTransaction, CommandType.Text, SQL_SELECT_WORKFLOW_DO_FEEAUDIT_REJECT_FOR_MSG, parms))
|
|
|
{
|
|
|
try
|
|
|
{
|
|
|
//读取字段值
|
|
|
while (sqlRead.Read())
|
|
|
{
|
|
|
WorkFlowDoEntity workFlowDoEntity = new WorkFlowDoEntity();
|
|
|
if (!sqlRead.IsDBNull(0))
|
|
|
{
|
|
|
workFlowDoEntity.GID = sqlRead.GetString(0);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(1))
|
|
|
{
|
|
|
workFlowDoEntity.WorkFlowID = sqlRead.GetString(1);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(2))
|
|
|
{
|
|
|
workFlowDoEntity.BillNO = sqlRead.GetString(2);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(3))
|
|
|
{
|
|
|
workFlowDoEntity.StepID = sqlRead.GetString(3);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(4))
|
|
|
{
|
|
|
workFlowDoEntity.Auditor = sqlRead.GetString(4);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(5))
|
|
|
{
|
|
|
workFlowDoEntity.AuditTime = sqlRead.GetDateTime(5);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(6))
|
|
|
{
|
|
|
workFlowDoEntity.BSNO = sqlRead.GetString(6);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(7))
|
|
|
{
|
|
|
workFlowDoEntity.FeeID = sqlRead.GetString(7);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(8))
|
|
|
{
|
|
|
workFlowDoEntity.FeeStatus = sqlRead.GetInt32(8);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(9))
|
|
|
{
|
|
|
workFlowDoEntity.DoQuerySql = sqlRead.GetString(9);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(10))
|
|
|
{
|
|
|
workFlowDoEntity.StepNO = sqlRead.GetInt32(10);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(11))
|
|
|
{
|
|
|
workFlowDoEntity.IsFinish = sqlRead.GetBoolean(11);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(12))
|
|
|
{
|
|
|
workFlowDoEntity.Applicant = sqlRead.GetString(12);
|
|
|
}
|
|
|
|
|
|
workFlowDoEntities.Add(workFlowDoEntity);
|
|
|
}
|
|
|
}
|
|
|
catch (Exception exceError)
|
|
|
{
|
|
|
//抛出异常
|
|
|
throw exceError;
|
|
|
}
|
|
|
}
|
|
|
return workFlowDoEntities;
|
|
|
}
|
|
|
#endregion
|
|
|
|
|
|
#region 获取审核通过和待审核的工作流信息
|
|
|
/// <summary>
|
|
|
/// 获取审核通过和待审核的工作流信息
|
|
|
/// </summary>
|
|
|
/// <param name="tempWorkFlowGID">工作流GID</param>
|
|
|
/// <param name="tempBillNO">业务编号</param>
|
|
|
/// <returns>返回实体类工作流记录</returns>
|
|
|
public IList<WorkFlowDoEntity> GetWorkFlowDoAuditPassForMessage(string tempWorkFlowGID, string tempBillNO)
|
|
|
{
|
|
|
//初始化返回变量
|
|
|
IList<WorkFlowDoEntity> workFlowDoEntities = new List<WorkFlowDoEntity>();
|
|
|
//初始化参数并赋值
|
|
|
SqlParameter[] parms = new SqlParameter[] {
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_WORKFLOW_ID, SqlDbType.VarChar, 36),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_BILL_NO, SqlDbType.VarChar, 36)
|
|
|
};
|
|
|
|
|
|
parms[0].Value = tempWorkFlowGID;
|
|
|
parms[1].Value = tempBillNO;
|
|
|
|
|
|
using (SqlDataReader sqlRead = SqlHelper.ExecuteReader(SqlHelper.ConnectionStringLocalTransaction, CommandType.Text, SQL_SELECT_WORKFLOW_DO_FEEAUDIT_PASS_FOR_MSG, parms))
|
|
|
{
|
|
|
try
|
|
|
{
|
|
|
//读取字段值
|
|
|
while (sqlRead.Read())
|
|
|
{
|
|
|
WorkFlowDoEntity workFlowDoEntity = new WorkFlowDoEntity();
|
|
|
if (!sqlRead.IsDBNull(0))
|
|
|
{
|
|
|
workFlowDoEntity.GID = sqlRead.GetString(0);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(1))
|
|
|
{
|
|
|
workFlowDoEntity.WorkFlowID = sqlRead.GetString(1);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(2))
|
|
|
{
|
|
|
workFlowDoEntity.BillNO = sqlRead.GetString(2);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(3))
|
|
|
{
|
|
|
workFlowDoEntity.StepID = sqlRead.GetString(3);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(4))
|
|
|
{
|
|
|
workFlowDoEntity.Auditor = sqlRead.GetString(4);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(5))
|
|
|
{
|
|
|
workFlowDoEntity.AuditTime = sqlRead.GetDateTime(5);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(6))
|
|
|
{
|
|
|
workFlowDoEntity.BSNO = sqlRead.GetString(6);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(7))
|
|
|
{
|
|
|
workFlowDoEntity.FeeID = sqlRead.GetString(7);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(8))
|
|
|
{
|
|
|
workFlowDoEntity.FeeStatus = sqlRead.GetInt32(8);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(9))
|
|
|
{
|
|
|
workFlowDoEntity.DoQuerySql = sqlRead.GetString(9);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(10))
|
|
|
{
|
|
|
workFlowDoEntity.StepNO = sqlRead.GetInt32(10);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(11))
|
|
|
{
|
|
|
workFlowDoEntity.IsFinish = sqlRead.GetBoolean(11);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(12))
|
|
|
{
|
|
|
workFlowDoEntity.Applicant = sqlRead.GetString(12);
|
|
|
}
|
|
|
|
|
|
workFlowDoEntities.Add(workFlowDoEntity);
|
|
|
}
|
|
|
}
|
|
|
catch (Exception exceError)
|
|
|
{
|
|
|
//抛出异常
|
|
|
throw exceError;
|
|
|
}
|
|
|
}
|
|
|
return workFlowDoEntities;
|
|
|
}
|
|
|
#endregion
|
|
|
|
|
|
#region 通过工作流GID和申请编号BILLNO获取工作流运行表WorkFlowDo信息发送消息
|
|
|
/// <summary>
|
|
|
/// 通过工作流GID和申请编号BILLNO获取工作流运行表WorkFlowDo信息发送消息
|
|
|
/// </summary>
|
|
|
/// <param name="tempWorkFlowGID"></param>
|
|
|
/// <param name="tempFeeGID"></param>
|
|
|
/// <returns></returns>
|
|
|
public IList<WorkFlowDoEntity> GetWorkFlowDoForMessage(string tempWorkFlowGID, string tempBillNO)
|
|
|
{
|
|
|
//初始化返回变量
|
|
|
IList<WorkFlowDoEntity> workFlowDoEntities = new List<WorkFlowDoEntity>();
|
|
|
//初始化参数并赋值
|
|
|
SqlParameter[] parms = new SqlParameter[] {
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_WORKFLOW_ID, SqlDbType.VarChar, 36),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_BILL_NO, SqlDbType.VarChar, 36)
|
|
|
};
|
|
|
|
|
|
parms[0].Value = tempWorkFlowGID;
|
|
|
parms[1].Value = tempBillNO;
|
|
|
|
|
|
using (SqlDataReader sqlRead = SqlHelper.ExecuteReader(SqlHelper.ConnectionStringLocalTransaction, CommandType.Text, SQL_SELECT_WORKFLOW_DO_BY_BILLNO_FOR_MSG, parms))
|
|
|
{
|
|
|
try
|
|
|
{
|
|
|
//读取字段值
|
|
|
while (sqlRead.Read())
|
|
|
{
|
|
|
WorkFlowDoEntity workFlowDoEntity = new WorkFlowDoEntity();
|
|
|
if (!sqlRead.IsDBNull(0))
|
|
|
{
|
|
|
workFlowDoEntity.GID = sqlRead.GetString(0);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(1))
|
|
|
{
|
|
|
workFlowDoEntity.WorkFlowID = sqlRead.GetString(1);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(2))
|
|
|
{
|
|
|
workFlowDoEntity.BillNO = sqlRead.GetString(2);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(3))
|
|
|
{
|
|
|
workFlowDoEntity.StepID = sqlRead.GetString(3);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(4))
|
|
|
{
|
|
|
workFlowDoEntity.Auditor = sqlRead.GetString(4);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(5))
|
|
|
{
|
|
|
workFlowDoEntity.AuditTime = sqlRead.GetDateTime(5);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(6))
|
|
|
{
|
|
|
workFlowDoEntity.BSNO = sqlRead.GetString(6);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(7))
|
|
|
{
|
|
|
workFlowDoEntity.FeeID = sqlRead.GetString(7);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(8))
|
|
|
{
|
|
|
workFlowDoEntity.FeeStatus = sqlRead.GetInt32(8);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(9))
|
|
|
{
|
|
|
workFlowDoEntity.DoQuerySql = sqlRead.GetString(9);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(10))
|
|
|
{
|
|
|
workFlowDoEntity.StepNO = sqlRead.GetInt32(10);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(11))
|
|
|
{
|
|
|
workFlowDoEntity.IsFinish = sqlRead.GetBoolean(11);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(12))
|
|
|
{
|
|
|
workFlowDoEntity.Applicant = sqlRead.GetString(12);
|
|
|
}
|
|
|
|
|
|
workFlowDoEntities.Add(workFlowDoEntity);
|
|
|
}
|
|
|
}
|
|
|
catch (Exception exceError)
|
|
|
{
|
|
|
//抛出异常
|
|
|
throw exceError;
|
|
|
}
|
|
|
}
|
|
|
return workFlowDoEntities;
|
|
|
}
|
|
|
#endregion
|
|
|
|
|
|
#region 通过工作流GID和费用GID获取工作流运行表WorkFlowDo信息
|
|
|
/// <summary>
|
|
|
/// 通过工作流GID和费用GID获取工作流运行表WorkFlowDo信息
|
|
|
/// </summary>
|
|
|
/// <param name="tempWorkFlowGID"></param>
|
|
|
/// <param name="tempFeeGID"></param>
|
|
|
/// <returns></returns>
|
|
|
public WorkFlowDoEntity GetSigleWorkFlowDo(string tempWorkFlowGID,string tempFeeGID)
|
|
|
{
|
|
|
//初始化返回变量
|
|
|
WorkFlowDoEntity workFlowDoEntity = null;
|
|
|
//初始化参数并赋值
|
|
|
SqlParameter[] parms = new SqlParameter[] {
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_WORKFLOW_ID, SqlDbType.VarChar, 36),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_FEE_ID, SqlDbType.VarChar, 36)
|
|
|
};
|
|
|
|
|
|
parms[0].Value = tempWorkFlowGID;
|
|
|
parms[1].Value = tempFeeGID;
|
|
|
|
|
|
using (SqlDataReader sqlRead = SqlHelper.ExecuteReader(SqlHelper.ConnectionStringLocalTransaction, CommandType.Text, SQL_SELECT_WORKFLOW_DO_BY_FEEID_AND_WORKFLOWID, parms))
|
|
|
{
|
|
|
try
|
|
|
{
|
|
|
workFlowDoEntity = new WorkFlowDoEntity();
|
|
|
//读取字段值
|
|
|
while (sqlRead.Read())
|
|
|
{
|
|
|
if (!sqlRead.IsDBNull(0))
|
|
|
{
|
|
|
workFlowDoEntity.GID = sqlRead.GetString(0);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(1))
|
|
|
{
|
|
|
workFlowDoEntity.WorkFlowID = sqlRead.GetString(1);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(2))
|
|
|
{
|
|
|
workFlowDoEntity.BillNO = sqlRead.GetString(2);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(3))
|
|
|
{
|
|
|
workFlowDoEntity.StepID = sqlRead.GetString(3);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(4))
|
|
|
{
|
|
|
workFlowDoEntity.Auditor = sqlRead.GetString(4);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(5))
|
|
|
{
|
|
|
workFlowDoEntity.AuditTime = sqlRead.GetDateTime(5);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(6))
|
|
|
{
|
|
|
workFlowDoEntity.BSNO = sqlRead.GetString(6);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(7))
|
|
|
{
|
|
|
workFlowDoEntity.FeeID = sqlRead.GetString(7);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(8))
|
|
|
{
|
|
|
workFlowDoEntity.FeeStatus = sqlRead.GetInt32(8);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(9))
|
|
|
{
|
|
|
workFlowDoEntity.DoQuerySql = sqlRead.GetString(9);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(10))
|
|
|
{
|
|
|
workFlowDoEntity.StepNO = sqlRead.GetInt32(10);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(11))
|
|
|
{
|
|
|
workFlowDoEntity.IsFinish = sqlRead.GetBoolean(11);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(12))
|
|
|
{
|
|
|
workFlowDoEntity.Applicant = sqlRead.GetString(12);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
catch (Exception exceError)
|
|
|
{
|
|
|
//抛出异常
|
|
|
throw exceError;
|
|
|
}
|
|
|
}
|
|
|
return workFlowDoEntity;
|
|
|
}
|
|
|
#endregion
|
|
|
|
|
|
#region 通过工作流GID和申请编号BILLNO获取工作流运行表WorkFlowDo信息
|
|
|
/// <summary>
|
|
|
/// 通过工作流GID和申请编号BILLNO获取工作流运行表WorkFlowDo信息
|
|
|
/// </summary>
|
|
|
/// <param name="tempWorkFlowGID"></param>
|
|
|
/// <param name="tempFeeGID"></param>
|
|
|
/// <returns></returns>
|
|
|
public WorkFlowDoEntity GetSigleWorkFlowDoByBillNO(string tempWorkFlowGID, string tempBillNO)
|
|
|
{
|
|
|
//初始化返回变量
|
|
|
WorkFlowDoEntity workFlowDoEntity = null;
|
|
|
//初始化参数并赋值
|
|
|
SqlParameter[] parms = new SqlParameter[] {
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_BILL_NO, SqlDbType.VarChar, 36),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_WORKFLOW_ID, SqlDbType.VarChar, 36)
|
|
|
};
|
|
|
|
|
|
parms[0].Value = tempBillNO;
|
|
|
parms[1].Value = tempWorkFlowGID;
|
|
|
// aparms[1].Value = tempBillNO;
|
|
|
workFlowDoEntity = new WorkFlowDoEntity();
|
|
|
|
|
|
using (SqlDataReader sqlRead = SqlHelper.ExecuteReader(SqlHelper.ConnectionStringLocalTransaction, CommandType.Text, SQL_SELECT_WORKFLOW_DO_BY_BILLNO_AND_WORKFLOWID, parms))
|
|
|
{
|
|
|
try
|
|
|
{
|
|
|
//读取字段值
|
|
|
while (sqlRead.Read())
|
|
|
{
|
|
|
if (!sqlRead.IsDBNull(0))
|
|
|
{
|
|
|
workFlowDoEntity.GID = sqlRead.GetString(0);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(1))
|
|
|
{
|
|
|
workFlowDoEntity.WorkFlowID = sqlRead.GetString(1);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(2))
|
|
|
{
|
|
|
workFlowDoEntity.BillNO = sqlRead.GetString(2);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(3))
|
|
|
{
|
|
|
workFlowDoEntity.StepID = sqlRead.GetString(3);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(4))
|
|
|
{
|
|
|
workFlowDoEntity.Auditor = sqlRead.GetString(4);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(5))
|
|
|
{
|
|
|
workFlowDoEntity.AuditTime = sqlRead.GetDateTime(5);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(6))
|
|
|
{
|
|
|
workFlowDoEntity.BSNO = sqlRead.GetString(6);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(7))
|
|
|
{
|
|
|
workFlowDoEntity.FeeID = sqlRead.GetString(7);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(8))
|
|
|
{
|
|
|
workFlowDoEntity.FeeStatus = sqlRead.GetInt32(8);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(9))
|
|
|
{
|
|
|
workFlowDoEntity.DoQuerySql = sqlRead.GetString(9);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(10))
|
|
|
{
|
|
|
workFlowDoEntity.StepNO = sqlRead.GetInt32(10);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(11))
|
|
|
{
|
|
|
workFlowDoEntity.IsFinish = sqlRead.GetBoolean(11);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(12))
|
|
|
{
|
|
|
workFlowDoEntity.Applicant = sqlRead.GetString(12);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
catch (Exception exceError)
|
|
|
{
|
|
|
//抛出异常
|
|
|
throw exceError;
|
|
|
}
|
|
|
}
|
|
|
return workFlowDoEntity;
|
|
|
}
|
|
|
#endregion
|
|
|
|
|
|
#region 通过工作流GID和审核人GID获取工作流运行表WorkFlowDo信息
|
|
|
/// <summary>
|
|
|
/// 通过工作流GID和申请编号BILLNO获取工作流运行表WorkFlowDo信息
|
|
|
/// </summary>
|
|
|
/// <param name="tempWorkFlowGID"></param>
|
|
|
/// <param name="tempFeeGID"></param>
|
|
|
/// <returns></returns>
|
|
|
public WorkFlowDoEntity GetSigleWorkFlowDoByAuditor(string tempWorkFlowGID, string tempUserID)
|
|
|
{
|
|
|
//初始化返回变量
|
|
|
WorkFlowDoEntity workFlowDoEntity = null;
|
|
|
//初始化参数并赋值
|
|
|
SqlParameter[] parms = new SqlParameter[] {
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_WORKFLOW_ID, SqlDbType.VarChar, 36),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_AUDITOR, SqlDbType.VarChar, 36)
|
|
|
};
|
|
|
|
|
|
parms[0].Value = tempWorkFlowGID;
|
|
|
parms[1].Value = tempUserID;
|
|
|
|
|
|
using (SqlDataReader sqlRead = SqlHelper.ExecuteReader(SqlHelper.ConnectionStringLocalTransaction, CommandType.Text, SQL_SELECT_WORKFLOW_DO_BY_AUDITORID_AND_WORKFLOWID, parms))
|
|
|
{
|
|
|
try
|
|
|
{
|
|
|
workFlowDoEntity = new WorkFlowDoEntity();
|
|
|
//读取字段值
|
|
|
while (sqlRead.Read())
|
|
|
{
|
|
|
if (!sqlRead.IsDBNull(0))
|
|
|
{
|
|
|
workFlowDoEntity.GID = sqlRead.GetString(0);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(1))
|
|
|
{
|
|
|
workFlowDoEntity.WorkFlowID = sqlRead.GetString(1);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(2))
|
|
|
{
|
|
|
workFlowDoEntity.BillNO = sqlRead.GetString(2);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(3))
|
|
|
{
|
|
|
workFlowDoEntity.StepID = sqlRead.GetString(3);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(4))
|
|
|
{
|
|
|
workFlowDoEntity.Auditor = sqlRead.GetString(4);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(5))
|
|
|
{
|
|
|
workFlowDoEntity.AuditTime = sqlRead.GetDateTime(5);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(6))
|
|
|
{
|
|
|
workFlowDoEntity.BSNO = sqlRead.GetString(6);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(7))
|
|
|
{
|
|
|
workFlowDoEntity.FeeID = sqlRead.GetString(7);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(8))
|
|
|
{
|
|
|
workFlowDoEntity.FeeStatus = sqlRead.GetInt32(8);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(9))
|
|
|
{
|
|
|
workFlowDoEntity.DoQuerySql = sqlRead.GetString(9);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(10))
|
|
|
{
|
|
|
workFlowDoEntity.StepNO = sqlRead.GetInt32(10);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(11))
|
|
|
{
|
|
|
workFlowDoEntity.IsFinish = sqlRead.GetBoolean(11);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(12))
|
|
|
{
|
|
|
workFlowDoEntity.Applicant = sqlRead.GetString(12);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
catch (Exception exceError)
|
|
|
{
|
|
|
//抛出异常
|
|
|
throw exceError;
|
|
|
}
|
|
|
}
|
|
|
return workFlowDoEntity;
|
|
|
}
|
|
|
#endregion
|
|
|
|
|
|
#region 通过工作流GID和申请编号BILLNO获取工作流运行表WorkFlowDo信息
|
|
|
/// <summary>
|
|
|
/// 通过工作流GID和申请编号BILLNO获取工作流运行表WorkFlowDo信息
|
|
|
/// </summary>
|
|
|
/// <param name="tempWorkFlowGID"></param>
|
|
|
/// <param name="tempFeeGID"></param>
|
|
|
/// <returns></returns>
|
|
|
public IList<WorkFlowDoEntity> GetAllWorkFlowDoByBillNO(string tempWorkFlowGID, string tempBillNO)
|
|
|
{
|
|
|
//初始化返回变量
|
|
|
IList<WorkFlowDoEntity> workFlowDoEntities = new List<WorkFlowDoEntity>();
|
|
|
//初始化参数并赋值
|
|
|
SqlParameter[] parms = new SqlParameter[] {
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_WORKFLOW_ID, SqlDbType.VarChar, 36),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_BILL_NO, SqlDbType.VarChar, 36)
|
|
|
};
|
|
|
|
|
|
parms[0].Value = tempWorkFlowGID;
|
|
|
parms[1].Value = tempBillNO;
|
|
|
|
|
|
using (SqlDataReader sqlRead = SqlHelper.ExecuteReader(SqlHelper.ConnectionStringLocalTransaction, CommandType.Text, SQL_SELECT_WORKFLOW_DO_BY_BILLNO_AND_WORKFLOWID, parms))
|
|
|
{
|
|
|
try
|
|
|
{
|
|
|
|
|
|
//读取字段值
|
|
|
while (sqlRead.Read())
|
|
|
{
|
|
|
WorkFlowDoEntity workFlowDoEntity = new WorkFlowDoEntity();
|
|
|
if (!sqlRead.IsDBNull(0))
|
|
|
{
|
|
|
workFlowDoEntity.GID = sqlRead.GetString(0);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(1))
|
|
|
{
|
|
|
workFlowDoEntity.WorkFlowID = sqlRead.GetString(1);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(2))
|
|
|
{
|
|
|
workFlowDoEntity.BillNO = sqlRead.GetString(2);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(3))
|
|
|
{
|
|
|
workFlowDoEntity.StepID = sqlRead.GetString(3);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(4))
|
|
|
{
|
|
|
workFlowDoEntity.Auditor = sqlRead.GetString(4);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(5))
|
|
|
{
|
|
|
workFlowDoEntity.AuditTime = sqlRead.GetDateTime(5);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(6))
|
|
|
{
|
|
|
workFlowDoEntity.BSNO = sqlRead.GetString(6);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(7))
|
|
|
{
|
|
|
workFlowDoEntity.FeeID = sqlRead.GetString(7);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(8))
|
|
|
{
|
|
|
workFlowDoEntity.FeeStatus = sqlRead.GetInt32(8);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(9))
|
|
|
{
|
|
|
workFlowDoEntity.DoQuerySql = sqlRead.GetString(9);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(10))
|
|
|
{
|
|
|
workFlowDoEntity.StepNO = sqlRead.GetInt32(10);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(11))
|
|
|
{
|
|
|
workFlowDoEntity.IsFinish = sqlRead.GetBoolean(11);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(12))
|
|
|
{
|
|
|
workFlowDoEntity.Applicant = sqlRead.GetString(12);
|
|
|
}
|
|
|
workFlowDoEntities.Add(workFlowDoEntity);
|
|
|
}
|
|
|
}
|
|
|
catch (Exception exceError)
|
|
|
{
|
|
|
//抛出异常
|
|
|
throw exceError;
|
|
|
}
|
|
|
}
|
|
|
return workFlowDoEntities;
|
|
|
}
|
|
|
#endregion
|
|
|
|
|
|
#region 通过申请编号BILLNO获取工作流运行表WorkFlowDo信息
|
|
|
/// <summary>
|
|
|
/// 通过申请编号BILLNO获取工作流运行表WorkFlowDo信息
|
|
|
/// </summary>
|
|
|
/// <param name="tempWorkFlowGID"></param>
|
|
|
/// <param name="tempFeeGID"></param>
|
|
|
/// <returns></returns>
|
|
|
public IList<WorkFlowDoEntity> GetWorkFlowDoByBillNO(string tempBillNO)
|
|
|
{
|
|
|
//初始化返回变量
|
|
|
IList<WorkFlowDoEntity> workFlowDoEntities = new List<WorkFlowDoEntity>();
|
|
|
//初始化参数并赋值
|
|
|
SqlParameter parm = new SqlParameter(PARM_WORKFLOW_DO_BILL_NO, SqlDbType.VarChar, 36);
|
|
|
parm.Value = tempBillNO;
|
|
|
|
|
|
using (SqlDataReader sqlRead = SqlHelper.ExecuteReader(SqlHelper.ConnectionStringLocalTransaction, CommandType.Text, SQL_SELECT_WORKFLOW_DO_BY_BILLNO, parm))
|
|
|
{
|
|
|
try
|
|
|
{
|
|
|
//读取字段值
|
|
|
while (sqlRead.Read())
|
|
|
{
|
|
|
WorkFlowDoEntity workFlowDoEntity = new WorkFlowDoEntity();
|
|
|
if (!sqlRead.IsDBNull(0))
|
|
|
{
|
|
|
workFlowDoEntity.GID = sqlRead.GetString(0);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(1))
|
|
|
{
|
|
|
workFlowDoEntity.WorkFlowID = sqlRead.GetString(1);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(2))
|
|
|
{
|
|
|
workFlowDoEntity.BillNO = sqlRead.GetString(2);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(3))
|
|
|
{
|
|
|
workFlowDoEntity.StepID = sqlRead.GetString(3);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(4))
|
|
|
{
|
|
|
workFlowDoEntity.Auditor = sqlRead.GetString(4);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(5))
|
|
|
{
|
|
|
workFlowDoEntity.AuditTime = sqlRead.GetDateTime(5);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(6))
|
|
|
{
|
|
|
workFlowDoEntity.BSNO = sqlRead.GetString(6);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(7))
|
|
|
{
|
|
|
workFlowDoEntity.FeeID = sqlRead.GetString(7);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(8))
|
|
|
{
|
|
|
workFlowDoEntity.FeeStatus = sqlRead.GetInt32(8);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(9))
|
|
|
{
|
|
|
workFlowDoEntity.DoQuerySql = sqlRead.GetString(9);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(10))
|
|
|
{
|
|
|
workFlowDoEntity.StepNO = sqlRead.GetInt32(10);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(11))
|
|
|
{
|
|
|
workFlowDoEntity.IsFinish = sqlRead.GetBoolean(11);
|
|
|
}
|
|
|
if (!sqlRead.IsDBNull(12))
|
|
|
{
|
|
|
workFlowDoEntity.Applicant = sqlRead.GetString(12);
|
|
|
}
|
|
|
workFlowDoEntities.Add(workFlowDoEntity);
|
|
|
}
|
|
|
}
|
|
|
catch (Exception exceError)
|
|
|
{
|
|
|
//抛出异常
|
|
|
throw exceError;
|
|
|
}
|
|
|
}
|
|
|
return workFlowDoEntities;
|
|
|
}
|
|
|
#endregion
|
|
|
|
|
|
#region 插入WorkFlowDo信息
|
|
|
/// <summary>
|
|
|
/// 插入WorkFlowDo信息
|
|
|
/// </summary>
|
|
|
/// <param name="tempWorkFlowDoEntities">WorkFlowDo实体类数组</param>
|
|
|
/// <returns>值1表示插入正常 值为-1-2表示插入异常失败</returns>
|
|
|
public int InsertWorkFlowDo(IList<WorkFlowDoEntity> tempWorkFlowDoEntities)
|
|
|
{
|
|
|
int iResult = 0;
|
|
|
|
|
|
using (SqlTransaction sqlTran = SqlHelper.BeginTransaction(SqlHelper.ConnectionStringLocalTransaction))
|
|
|
{
|
|
|
try
|
|
|
{
|
|
|
SqlParameter[] parms = new SqlParameter[] {
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_GID,SqlDbType.VarChar,36),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_WORKFLOW_ID,SqlDbType.VarChar,36),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_BILL_NO,SqlDbType.VarChar,36),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_STEP_ID,SqlDbType.VarChar,36),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_AUDITOR,SqlDbType.VarChar,36),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_BSNO,SqlDbType.VarChar,100),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_FEE_ID,SqlDbType.VarChar,36),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_FEE_STATUS,SqlDbType.Int),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_DO_QUERY_SQL,SqlDbType.VarChar,200),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_STEP_NO,SqlDbType.Int),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_IS_FINISH,SqlDbType.Bit),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_DELETE_APPLICANT,SqlDbType.VarChar,36)
|
|
|
};
|
|
|
|
|
|
foreach (WorkFlowDoEntity workFlowDoEntity in tempWorkFlowDoEntities)
|
|
|
{
|
|
|
parms[0].Value = workFlowDoEntity.GID;
|
|
|
parms[1].Value = workFlowDoEntity.WorkFlowID;
|
|
|
parms[2].Value = workFlowDoEntity.BillNO;
|
|
|
parms[3].Value = workFlowDoEntity.StepID;
|
|
|
parms[4].Value = workFlowDoEntity.Auditor;
|
|
|
parms[5].Value = workFlowDoEntity.BSNO;
|
|
|
parms[6].Value = workFlowDoEntity.FeeID;
|
|
|
parms[7].Value = workFlowDoEntity.FeeStatus;
|
|
|
parms[8].Value = workFlowDoEntity.DoQuerySql;
|
|
|
parms[9].Value = workFlowDoEntity.StepNO;
|
|
|
parms[10].Value = workFlowDoEntity.IsFinish;
|
|
|
parms[11].Value = workFlowDoEntity.Applicant;
|
|
|
|
|
|
SqlHelper.ExecuteNonQuery(sqlTran, CommandType.Text, SQL_INSERT_WORKFLOW_DO, parms);
|
|
|
}
|
|
|
//事务提交
|
|
|
sqlTran.Commit();
|
|
|
|
|
|
iResult = 1;//状态为1表示插入成功
|
|
|
}
|
|
|
catch (Exception execError)
|
|
|
{
|
|
|
iResult = -1;//有异常,插入失败
|
|
|
sqlTran.Rollback();
|
|
|
iResult = -2;//插入异常,事务已回滚成功
|
|
|
throw execError;
|
|
|
}
|
|
|
finally
|
|
|
{
|
|
|
SqlHelper.CloseConnection();
|
|
|
}
|
|
|
}
|
|
|
return iResult;
|
|
|
}
|
|
|
#endregion
|
|
|
|
|
|
#region 更新操作审核完毕
|
|
|
/// <summary>
|
|
|
/// 更新操作审核完毕
|
|
|
/// </summary>
|
|
|
/// <param name="tempWorkFlowDoEntity">工作流DO表实体类</param>
|
|
|
/// <param name="tempIsLastStep">是否是最后一步操作</param>
|
|
|
/// <returns>值1表示更新成功 值为-2表示更新异常事务回滚</returns>
|
|
|
public int UpdateWorkFlowDoStep(IList<WorkFlowDoEntity> tempWorkFlowDoEntities, IList<WorkFlowDoEntity> tempNextWorkFlowDoEntities, bool tempIsLastStep, IList<WorkFlowStepEntity> tempWorkFlowStepEntities)
|
|
|
{
|
|
|
//审核人审核完毕后,先更新当前审核状态ISFINISH=True,然后将下一步需要其他审核人的步骤写入到workflow_do表
|
|
|
int iResult = 0;
|
|
|
|
|
|
#region 参数
|
|
|
SqlParameter[] updateParms = new SqlParameter[] {
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_IS_FINISH,SqlDbType.Bit),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_GID,SqlDbType.VarChar,36)
|
|
|
};
|
|
|
|
|
|
SqlParameter[] parms = new SqlParameter[] {
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_GID,SqlDbType.VarChar,36),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_WORKFLOW_ID,SqlDbType.VarChar,36),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_BILL_NO,SqlDbType.VarChar,36),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_STEP_ID,SqlDbType.VarChar,36),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_AUDITOR,SqlDbType.VarChar,36),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_BSNO,SqlDbType.VarChar,100),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_FEE_ID,SqlDbType.VarChar,36),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_FEE_STATUS,SqlDbType.Int),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_DO_QUERY_SQL,SqlDbType.VarChar,200),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_STEP_NO,SqlDbType.Int),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_IS_FINISH,SqlDbType.Bit),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_DELETE_APPLICANT,SqlDbType.VarChar,36)
|
|
|
};
|
|
|
|
|
|
SqlParameter[] updateAppParms = new SqlParameter[] {
|
|
|
new SqlParameter(PARM_SETTLE_APPL_BILL_STATUS,SqlDbType.Int),
|
|
|
new SqlParameter(PARM_SETTLE_APPL_BILL_NO,SqlDbType.VarChar,20)
|
|
|
};
|
|
|
#endregion
|
|
|
using (SqlTransaction sqlTran = SqlHelper.BeginTransaction(SqlHelper.ConnectionStringLocalTransaction))
|
|
|
{
|
|
|
try
|
|
|
{
|
|
|
SqlParameter stepNoParm = new SqlParameter(PARM_SETTLE_APPL_GID, SqlDbType.VarChar, 36);
|
|
|
stepNoParm.Value = tempWorkFlowDoEntities[0].GID;
|
|
|
|
|
|
string stepVal = (string)SqlHelper.ExecuteScalar(sqlTran, CommandType.Text, SQL_SELECT_WORKFLOW_DO_STEP_NO, stepNoParm) as string;
|
|
|
|
|
|
if (stepVal == null)
|
|
|
{
|
|
|
throw new Exception();
|
|
|
}
|
|
|
string[] strSplit = stepVal.Split(new char[] { '#' });
|
|
|
string strCurrentAuditor = strSplit[0].ToString();
|
|
|
int iCurrentStepNo = int.Parse(strSplit[1].ToString());
|
|
|
|
|
|
foreach (WorkFlowStepEntity workFlowStepEntity in tempWorkFlowStepEntities)
|
|
|
{
|
|
|
if (workFlowStepEntity.StepNO == iCurrentStepNo && workFlowStepEntity.Auditor != strCurrentAuditor)
|
|
|
{
|
|
|
SqlParameter[] updateSameParms = new SqlParameter[] {
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_STEP_NO,SqlDbType.Int),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_BILL_NO,SqlDbType.VarChar,36),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_WORKFLOW_ID,SqlDbType.VarChar,36)
|
|
|
};
|
|
|
|
|
|
updateSameParms[0].Value = iCurrentStepNo;
|
|
|
updateSameParms[1].Value = tempWorkFlowDoEntities[0].BillNO;
|
|
|
updateSameParms[2].Value = tempWorkFlowDoEntities[0].WorkFlowID;
|
|
|
|
|
|
SqlHelper.ExecuteNonQuery(sqlTran, CommandType.Text, SQL_UPDATE_WORKFLOW_DO_SAME_STEP, updateSameParms);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
foreach (WorkFlowDoEntity workFlowDoEntity in tempWorkFlowDoEntities)
|
|
|
{
|
|
|
|
|
|
if (workFlowDoEntity.IsFinish == true)
|
|
|
{
|
|
|
updateParms[0].Value = 1;
|
|
|
updateParms[1].Value = workFlowDoEntity.GID;
|
|
|
|
|
|
if (tempIsLastStep)
|
|
|
{
|
|
|
updateAppParms[0].Value = 0;
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
updateAppParms[0].Value = 3;
|
|
|
}
|
|
|
updateAppParms[1].Value = workFlowDoEntity.BillNO;
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
//如果是工作流步骤的最后一步,则不自动向workflow_do表插入下一步骤信息
|
|
|
if (!tempIsLastStep)
|
|
|
{
|
|
|
updateAppParms[0].Value = 3;
|
|
|
updateAppParms[1].Value = workFlowDoEntity.BillNO;
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
updateAppParms[0].Value = 0;
|
|
|
updateAppParms[1].Value = workFlowDoEntity.BillNO;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
SqlHelper.ExecuteNonQuery(sqlTran, CommandType.Text, SQL_UPDATE_WORKFLOW_DO_STEP, updateParms);
|
|
|
|
|
|
SqlHelper.ExecuteNonQuery(sqlTran, CommandType.Text, SQL_UPDATE_CH_FEE_PAY_APP, updateAppParms);
|
|
|
//如果是工作流步骤的最后一步,则不自动向workflow_do表插入下一步骤信息
|
|
|
if (!tempIsLastStep)
|
|
|
{
|
|
|
foreach (WorkFlowDoEntity workFlowDoEntity in tempNextWorkFlowDoEntities)
|
|
|
{
|
|
|
parms[0].Value = workFlowDoEntity.GID;
|
|
|
parms[1].Value = workFlowDoEntity.WorkFlowID;
|
|
|
parms[2].Value = workFlowDoEntity.BillNO;
|
|
|
parms[3].Value = workFlowDoEntity.StepID;
|
|
|
parms[4].Value = workFlowDoEntity.Auditor;
|
|
|
parms[5].Value = workFlowDoEntity.BSNO;
|
|
|
parms[6].Value = workFlowDoEntity.FeeID;
|
|
|
parms[7].Value = workFlowDoEntity.FeeStatus;
|
|
|
parms[8].Value = workFlowDoEntity.DoQuerySql;
|
|
|
parms[9].Value = workFlowDoEntity.StepNO;
|
|
|
parms[10].Value = workFlowDoEntity.IsFinish;
|
|
|
parms[11].Value = workFlowDoEntity.Applicant;
|
|
|
|
|
|
SqlHelper.ExecuteNonQuery(sqlTran, CommandType.Text, SQL_INSERT_WORKFLOW_DO, parms);
|
|
|
}
|
|
|
|
|
|
}
|
|
|
sqlTran.Commit();
|
|
|
|
|
|
|
|
|
iResult = 1;//状态为1表示插入成功
|
|
|
}
|
|
|
catch (Exception execError)
|
|
|
{
|
|
|
iResult = -1;//有异常,插入失败
|
|
|
sqlTran.Rollback();
|
|
|
iResult = -2;//插入异常,事务已回滚成功
|
|
|
throw execError;
|
|
|
}
|
|
|
finally
|
|
|
{
|
|
|
SqlHelper.CloseConnection();
|
|
|
}
|
|
|
}
|
|
|
|
|
|
return iResult;
|
|
|
}
|
|
|
#endregion
|
|
|
|
|
|
#region 审核步骤驳回操作
|
|
|
/// <summary>
|
|
|
/// 审核步骤驳回操作
|
|
|
/// </summary>
|
|
|
/// <param name="tempWorkFlowDoEntity">WorkFlowDo 实体类</param>
|
|
|
/// <returns>值1表示操作完成 值小于1表示操作失败</returns>
|
|
|
//public int ExcuteRejectWorkFlowDo(WorkFlowDoEntity tempWorkFlowDoEntity,WorkFlowType workFlowType,IList<FeeDoEntity> feeDoEntities,string tempBillNO,string tempCompanyID)
|
|
|
//{
|
|
|
// int iResult = 0;
|
|
|
|
|
|
// using (SqlTransaction sqlTran = SqlHelper.BeginTransaction(SqlHelper.ConnectionStringLocalTransaction))
|
|
|
// {
|
|
|
// try
|
|
|
// {
|
|
|
|
|
|
// SqlParameter[] parms = new SqlParameter[] {
|
|
|
// new SqlParameter(PARM_WORKFLOW_DO_IS_DELETED,SqlDbType.Bit),
|
|
|
// new SqlParameter(PARM_WORKFLOW_DO_DELETE_STEP,SqlDbType.VarChar,36),
|
|
|
// new SqlParameter(PARM_WORKFLOW_DO_DELETE_OPERATOR,SqlDbType.VarChar,36),
|
|
|
// new SqlParameter(PARM_WORKFLOW_DO_WORKFLOW_ID,SqlDbType.VarChar,36),
|
|
|
// new SqlParameter(PARM_WORKFLOW_DO_BILL_NO,SqlDbType.VarChar,36),
|
|
|
// new SqlParameter(PARM_WORKFLOW_DO_DELETE_STEP_NO,SqlDbType.Int),
|
|
|
// new SqlParameter(PARM_WORKFLOW_DO_IS_FINISH,SqlDbType.Bit)
|
|
|
// };
|
|
|
|
|
|
// parms[0].Value = tempWorkFlowDoEntity.IsDelete;
|
|
|
// parms[1].Value = tempWorkFlowDoEntity.DeleteStep;
|
|
|
// parms[2].Value = tempWorkFlowDoEntity.DeleteOperator;
|
|
|
// parms[3].Value = tempWorkFlowDoEntity.WorkFlowID;
|
|
|
// parms[4].Value = tempWorkFlowDoEntity.BillNO;
|
|
|
// parms[5].Value = tempWorkFlowDoEntity.DeleteStepNO;
|
|
|
// parms[6].Value = tempWorkFlowDoEntity.IsFinish;
|
|
|
|
|
|
// SqlHelper.ExecuteNonQuery(sqlTran, CommandType.Text, SQL_UPDATE_WORKFLOW_DO_RECORD_REJECT_STEP, parms);
|
|
|
|
|
|
// switch (workFlowType)
|
|
|
// {
|
|
|
// case WorkFlowType.PAYSETTLEAUDIT:
|
|
|
// foreach(FeeDoEntity feeDoEntity in feeDoEntities)
|
|
|
// {
|
|
|
// SqlParameter[] updateAppParms = new SqlParameter[] {
|
|
|
// new SqlParameter(PARM_SETTLE_APPL_BILL_STATUS,SqlDbType.Int),
|
|
|
// new SqlParameter(PARM_SETTLE_APPL_BILL_NO,SqlDbType.VarChar,20),
|
|
|
// new SqlParameter(PARM_SETTLE_APPL_COMPANY_ID,SqlDbType.VarChar,36)
|
|
|
// };
|
|
|
// updateAppParms[0].Value = 6;//付费申请费用驳回
|
|
|
// updateAppParms[1].Value = tempBillNO;
|
|
|
// updateAppParms[2].Value = tempCompanyID;
|
|
|
|
|
|
// SqlHelper.ExecuteNonQuery(sqlTran, CommandType.Text, SQL_UPDATE_PAY_APPLICATION_STATUS, updateAppParms);
|
|
|
|
|
|
// SqlParameter[] updateFeeDoParms = new SqlParameter[] {
|
|
|
// new SqlParameter(PARM_CH_FEE_DO_GID,SqlDbType.VarChar,36)
|
|
|
// };
|
|
|
// updateFeeDoParms[0].Value = feeDoEntity.GID;
|
|
|
|
|
|
// SqlHelper.ExecuteNonQuery(sqlTran, CommandType.Text, SQL_UPDATE_CH_FEE_DO_FOR_DELETE, updateFeeDoParms);
|
|
|
|
|
|
// SqlParameter[] updateFeeParms = new SqlParameter[] {
|
|
|
// new SqlParameter(PARM_FEE_GID,SqlDbType.VarChar,36),
|
|
|
// new SqlParameter(PARM_FEE_ORDER_AMOUNT,SqlDbType.Decimal,20)
|
|
|
// };
|
|
|
|
|
|
// updateFeeParms[0].Value = feeDoEntity.FeeID;
|
|
|
// updateFeeParms[1].Value = feeDoEntity.Amount;
|
|
|
|
|
|
// SqlHelper.ExecuteNonQuery(sqlTran, CommandType.Text, SQL_UPDATE_CH_FEE_FOR_REJECT, updateFeeParms);
|
|
|
// }
|
|
|
// break;
|
|
|
// case WorkFlowType.FEEAUDIT:
|
|
|
// break;
|
|
|
// case WorkFlowType.FEEMODIFYAUDIT:
|
|
|
// break;
|
|
|
// }
|
|
|
// sqlTran.Commit();
|
|
|
|
|
|
// iResult = 1;//状态为1表示插入成功
|
|
|
// }
|
|
|
// catch (Exception execError)
|
|
|
// {
|
|
|
// iResult = -1;//有异常,插入失败
|
|
|
// sqlTran.Rollback();
|
|
|
// iResult = -2;//插入异常,事务已回滚成功
|
|
|
// throw execError;
|
|
|
// }
|
|
|
// finally
|
|
|
// {
|
|
|
// SqlHelper.CloseConnection();
|
|
|
// }
|
|
|
// }
|
|
|
// return iResult;
|
|
|
//}
|
|
|
#endregion
|
|
|
|
|
|
#region 费用提交审核_事务
|
|
|
public int FeeAudit(WorkFlowEntity workFlowEntity, string strGid, string strUserID)
|
|
|
{
|
|
|
int iResult = 0;
|
|
|
FeeDA feeDA = new FeeDA();
|
|
|
|
|
|
using (SqlTransaction sqlTran = SqlHelper.BeginTransaction(SqlHelper.ConnectionStringLocalTransaction))
|
|
|
{
|
|
|
try
|
|
|
{
|
|
|
#region 费用提交审核_工作流
|
|
|
string strDeptID = " SELECT B.GID FROM user_baseinfo as A INNER JOIN sys_dept as B ON A.DEPTNAME = B.DEPTNAME INNER JOIN user_company as C ON A.USERID = C.USERID WHERE A.USERID = '" + strUserID + "' ";
|
|
|
object statusObj = SqlHelper.ExecuteScalar(sqlTran, CommandType.Text, strDeptID, null);
|
|
|
if (statusObj == null)
|
|
|
{
|
|
|
strDeptID = "";
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
strDeptID = statusObj.ToString().Trim();
|
|
|
}
|
|
|
//
|
|
|
//根据Gid更新ch_fee.feestatus费用状态信息:为"提交审核"
|
|
|
iResult = -3;
|
|
|
string SQL_UPDATE_FEE_STATUS_BY_GID = "UPDATE ch_fee SET FEESTATUS=2 WHERE GID='" + strGid + "'";
|
|
|
SqlHelper.ExecuteNonQuery(sqlTran, CommandType.Text, SQL_UPDATE_FEE_STATUS_BY_GID, null);
|
|
|
//
|
|
|
//查看当前提交的应收应付费用审核已经进入工作流,通过工作流GID和申请编号BILLNO获取工作流运行表WorkFlowDo信息
|
|
|
WorkFlowDoDA workFlowDoDA = new WorkFlowDoDA();
|
|
|
string strSQL = "SELECT GID, WORKFLOWID, BILLNO, STEPID, AUDITOR, AUDITTIME, BSNO, FEEID, FEESTATUS, DOQUERYSQL, STEPNO, ISFINISH,APPLICANT FROM workflow_do WHERE ISALLFINISH = 0 AND BILLNO='" + strGid.Trim() + "' AND WORKFLOWID='" + workFlowEntity.GID.ToString().Trim() + "' ORDER BY STEPNO DESC ";
|
|
|
statusObj = SqlHelper.ExecuteScalar(sqlTran, CommandType.Text, strSQL, null);
|
|
|
if (statusObj == null)
|
|
|
{
|
|
|
IList<WorkFlowDoEntity> workFlowDoEntities = new List<WorkFlowDoEntity>();
|
|
|
foreach (WorkFlowStepEntity step in workFlowEntity.WorkFlowSteps)
|
|
|
{
|
|
|
//遍历所有工作流下步骤,获取第一步骤GID信息
|
|
|
if (step.StepNO == 1)
|
|
|
{
|
|
|
if (step.IsDepartment)
|
|
|
{
|
|
|
string strDepartmentID = step.DepartmentID == null ? "" : step.DepartmentID;
|
|
|
if (strDepartmentID.Trim() != null)
|
|
|
{
|
|
|
SysDeptDA sysDeptDA = new SysDeptDA();
|
|
|
if (strDeptID.Trim().Equals(strDepartmentID) && strDepartmentID != "")
|
|
|
{
|
|
|
WorkFlowDoEntity initWorkFlowDoEntity = new WorkFlowDoEntity();
|
|
|
initWorkFlowDoEntity.GID = Guid.NewGuid().ToString();
|
|
|
initWorkFlowDoEntity.WorkFlowID = workFlowEntity.GID;
|
|
|
initWorkFlowDoEntity.StepID = step.GID;
|
|
|
initWorkFlowDoEntity.StepNO = step.StepNO;
|
|
|
initWorkFlowDoEntity.Auditor = step.Auditor == null ? step.DefaultAuditor : step.Auditor;
|
|
|
initWorkFlowDoEntity.FeeID = "";
|
|
|
initWorkFlowDoEntity.BSNO = "";
|
|
|
initWorkFlowDoEntity.FeeStatus = 0;
|
|
|
initWorkFlowDoEntity.DoQuerySql = "";
|
|
|
initWorkFlowDoEntity.BillNO = strGid;
|
|
|
initWorkFlowDoEntity.IsFinish = false;
|
|
|
initWorkFlowDoEntity.Applicant = strUserID;
|
|
|
workFlowDoEntities.Add(initWorkFlowDoEntity);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
WorkFlowDoEntity initWorkFlowDoEntity = new WorkFlowDoEntity();
|
|
|
initWorkFlowDoEntity.GID = Guid.NewGuid().ToString();
|
|
|
initWorkFlowDoEntity.WorkFlowID = workFlowEntity.GID;
|
|
|
initWorkFlowDoEntity.StepID = step.GID;
|
|
|
initWorkFlowDoEntity.StepNO = step.StepNO;
|
|
|
initWorkFlowDoEntity.Auditor = step.Auditor == null ? step.DefaultAuditor : step.Auditor;
|
|
|
initWorkFlowDoEntity.FeeID = "";
|
|
|
initWorkFlowDoEntity.BSNO = "";
|
|
|
initWorkFlowDoEntity.FeeStatus = 0;
|
|
|
initWorkFlowDoEntity.DoQuerySql = "";
|
|
|
initWorkFlowDoEntity.BillNO = strGid;
|
|
|
initWorkFlowDoEntity.IsFinish = false;
|
|
|
initWorkFlowDoEntity.Applicant = strUserID;
|
|
|
workFlowDoEntities.Add(initWorkFlowDoEntity);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
//插入WorkFlowDo信息
|
|
|
//iWorkFlowStatus = workFlowDoDA.InsertWorkFlowDo(workFlowDoEntities);
|
|
|
SqlParameter[] parms = new SqlParameter[] {
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_GID,SqlDbType.VarChar,36),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_WORKFLOW_ID,SqlDbType.VarChar,36),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_BILL_NO,SqlDbType.VarChar,36),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_STEP_ID,SqlDbType.VarChar,36),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_AUDITOR,SqlDbType.VarChar,36),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_BSNO,SqlDbType.VarChar,100),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_FEE_ID,SqlDbType.VarChar,36),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_FEE_STATUS,SqlDbType.Int),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_DO_QUERY_SQL,SqlDbType.VarChar,200),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_STEP_NO,SqlDbType.Int),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_IS_FINISH,SqlDbType.Bit),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_DELETE_APPLICANT,SqlDbType.VarChar,36)
|
|
|
};
|
|
|
foreach (WorkFlowDoEntity workFlowDoEntity in workFlowDoEntities)
|
|
|
{
|
|
|
parms[0].Value = workFlowDoEntity.GID;
|
|
|
parms[1].Value = workFlowDoEntity.WorkFlowID;
|
|
|
parms[2].Value = workFlowDoEntity.BillNO;
|
|
|
parms[3].Value = workFlowDoEntity.StepID;
|
|
|
parms[4].Value = workFlowDoEntity.Auditor;
|
|
|
parms[5].Value = workFlowDoEntity.BSNO;
|
|
|
parms[6].Value = workFlowDoEntity.FeeID;
|
|
|
parms[7].Value = workFlowDoEntity.FeeStatus;
|
|
|
parms[8].Value = workFlowDoEntity.DoQuerySql;
|
|
|
parms[9].Value = workFlowDoEntity.StepNO;
|
|
|
parms[10].Value = workFlowDoEntity.IsFinish;
|
|
|
parms[11].Value = workFlowDoEntity.Applicant;
|
|
|
|
|
|
//string SQL_INSERT_WORKFLOW_DO = "INSERT INTO workflow_do (GID, WORKFLOWID, BILLNO, STEPID, AUDITOR, AUDITTIME, BSNO, FEEID, FEESTATUS, DOQUERYSQL, STEPNO, ISFINISH,APPLICANT) VALUES(@gid,@workflow_id,@bill_no,@step_id,@auditor,GETDATE(),@bsno,@fee_id,@fee_status,@do_query_sql,@step_no,@is_finish,@applicant)";
|
|
|
iResult = -4;
|
|
|
SqlHelper.ExecuteNonQuery(sqlTran, CommandType.Text, SQL_INSERT_WORKFLOW_DO, parms);
|
|
|
}
|
|
|
//
|
|
|
iResult = -5;//更新费用状态失败
|
|
|
string SQL_UPDATE_FEE_AUDITSTATUS = "UPDATE ch_fee SET AUDITSTATUS=1 WHERE GID='" + strGid + "'";
|
|
|
SqlHelper.ExecuteNonQuery(sqlTran, CommandType.Text, SQL_UPDATE_FEE_AUDITSTATUS, null);
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
IList<WorkFlowDoEntity> workFlowDoEntities = new List<WorkFlowDoEntity>();
|
|
|
foreach (WorkFlowStepEntity step in workFlowEntity.WorkFlowSteps)
|
|
|
{
|
|
|
//遍历所有工作流下步骤,获取第一步骤GID信息
|
|
|
if (step.StepNO == 1)
|
|
|
{
|
|
|
if (step.IsDepartment)
|
|
|
{
|
|
|
string strDepartmentID = step.DepartmentID == null ? "" : step.DepartmentID;
|
|
|
if (strDepartmentID.Trim() != null)
|
|
|
{
|
|
|
if (strDeptID.Trim().Equals(strDepartmentID) && strDepartmentID != "")
|
|
|
{
|
|
|
WorkFlowDoEntity initWorkFlowDoEntity = new WorkFlowDoEntity();
|
|
|
initWorkFlowDoEntity.GID = Guid.NewGuid().ToString();
|
|
|
initWorkFlowDoEntity.WorkFlowID = workFlowEntity.GID;
|
|
|
initWorkFlowDoEntity.StepID = step.GID;
|
|
|
initWorkFlowDoEntity.StepNO = step.StepNO;
|
|
|
initWorkFlowDoEntity.Auditor = step.Auditor == null ? step.DefaultAuditor : step.Auditor;
|
|
|
initWorkFlowDoEntity.FeeID = "";
|
|
|
initWorkFlowDoEntity.BSNO = "";
|
|
|
initWorkFlowDoEntity.FeeStatus = 0;
|
|
|
initWorkFlowDoEntity.DoQuerySql = "";
|
|
|
initWorkFlowDoEntity.BillNO = strGid;
|
|
|
initWorkFlowDoEntity.IsFinish = false;
|
|
|
initWorkFlowDoEntity.Applicant = strUserID;
|
|
|
workFlowDoEntities.Add(initWorkFlowDoEntity);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
WorkFlowDoEntity initWorkFlowDoEntity = new WorkFlowDoEntity();
|
|
|
initWorkFlowDoEntity.GID = Guid.NewGuid().ToString();
|
|
|
initWorkFlowDoEntity.WorkFlowID = workFlowEntity.GID;
|
|
|
initWorkFlowDoEntity.StepID = step.GID;
|
|
|
initWorkFlowDoEntity.StepNO = step.StepNO;
|
|
|
initWorkFlowDoEntity.Auditor = step.Auditor == null ? step.DefaultAuditor : step.Auditor;
|
|
|
initWorkFlowDoEntity.FeeID = "";
|
|
|
initWorkFlowDoEntity.BSNO = "";
|
|
|
initWorkFlowDoEntity.FeeStatus = 0;
|
|
|
initWorkFlowDoEntity.DoQuerySql = "";
|
|
|
initWorkFlowDoEntity.BillNO = strGid;
|
|
|
initWorkFlowDoEntity.IsFinish = false;
|
|
|
initWorkFlowDoEntity.Applicant = strUserID;
|
|
|
workFlowDoEntities.Add(initWorkFlowDoEntity);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
|
|
|
//iWorkFlowStatus = workFlowDoDA.InsertWorkFlowDo(workFlowDoEntities);
|
|
|
SqlParameter[] parms = new SqlParameter[] {
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_GID,SqlDbType.VarChar,36),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_WORKFLOW_ID,SqlDbType.VarChar,36),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_BILL_NO,SqlDbType.VarChar,36),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_STEP_ID,SqlDbType.VarChar,36),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_AUDITOR,SqlDbType.VarChar,36),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_BSNO,SqlDbType.VarChar,100),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_FEE_ID,SqlDbType.VarChar,36),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_FEE_STATUS,SqlDbType.Int),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_DO_QUERY_SQL,SqlDbType.VarChar,200),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_STEP_NO,SqlDbType.Int),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_IS_FINISH,SqlDbType.Bit),
|
|
|
new SqlParameter(PARM_WORKFLOW_DO_DELETE_APPLICANT,SqlDbType.VarChar,36)
|
|
|
};
|
|
|
foreach (WorkFlowDoEntity workFlowDoEntity in workFlowDoEntities)
|
|
|
{
|
|
|
parms[0].Value = workFlowDoEntity.GID;
|
|
|
parms[1].Value = workFlowDoEntity.WorkFlowID;
|
|
|
parms[2].Value = workFlowDoEntity.BillNO;
|
|
|
parms[3].Value = workFlowDoEntity.StepID;
|
|
|
parms[4].Value = workFlowDoEntity.Auditor;
|
|
|
parms[5].Value = workFlowDoEntity.BSNO;
|
|
|
parms[6].Value = workFlowDoEntity.FeeID;
|
|
|
parms[7].Value = workFlowDoEntity.FeeStatus;
|
|
|
parms[8].Value = workFlowDoEntity.DoQuerySql;
|
|
|
parms[9].Value = workFlowDoEntity.StepNO;
|
|
|
parms[10].Value = workFlowDoEntity.IsFinish;
|
|
|
parms[11].Value = workFlowDoEntity.Applicant;
|
|
|
|
|
|
//string SQL_INSERT_WORKFLOW_DO = "INSERT INTO workflow_do (GID, WORKFLOWID, BILLNO, STEPID, AUDITOR, AUDITTIME, BSNO, FEEID, FEESTATUS, DOQUERYSQL, STEPNO, ISFINISH,APPLICANT) VALUES(@gid,@workflow_id,@bill_no,@step_id,@auditor,GETDATE(),@bsno,@fee_id,@fee_status,@do_query_sql,@step_no,@is_finish,@applicant)";
|
|
|
iResult = -6;
|
|
|
SqlHelper.ExecuteNonQuery(sqlTran, CommandType.Text, SQL_INSERT_WORKFLOW_DO, parms);
|
|
|
}
|
|
|
|
|
|
//int iTempStatus = feeDA.UpdateFeeAuditStatus(strGid, 1);
|
|
|
iResult = -7;//更新费用状态失败
|
|
|
string SQL_UPDATE_FEE_AUDITSTATUS = "UPDATE ch_fee SET AUDITSTATUS=1 WHERE GID='" + strGid + "'";
|
|
|
SqlHelper.ExecuteNonQuery(sqlTran, CommandType.Text, SQL_UPDATE_FEE_AUDITSTATUS, null);
|
|
|
}
|
|
|
#endregion
|
|
|
sqlTran.Commit();
|
|
|
iResult = 1;//状态为1表示插入成功
|
|
|
}
|
|
|
catch (Exception execError)
|
|
|
{
|
|
|
iResult = -1;//有异常,插入失败
|
|
|
sqlTran.Rollback();
|
|
|
iResult = -2;//插入异常,事务已回滚成功
|
|
|
throw execError;
|
|
|
}
|
|
|
finally
|
|
|
{
|
|
|
SqlHelper.CloseConnection();
|
|
|
}
|
|
|
}
|
|
|
return iResult;
|
|
|
}
|
|
|
#endregion
|
|
|
}
|
|
|
}
|