/// <summary> /// 将工作流实例设置为错误状态 /// </summary> /// <param name="InstanceID"></param> /// <param name="ErrorMessage">错误状态信息</param> public static string SetInstanceError(string InstanceID, string ErrorMessage) { try { //设置审批状态为无效 string UpdateInstanceApprovalStatusResult = CApprovalManager.UpdateInstanceApprovalStatus(InstanceID, EApprovalStatus.Invalid); if (UpdateInstanceApprovalStatusResult != WFGlobal.success) { return(UpdateInstanceApprovalStatusResult); } //设置实例状态为错误 string UpdateInstanceStatusResult = UpdateInstanceStatus(InstanceID, EInstanceStatus.Error); if (UpdateInstanceStatusResult != WFGlobal.success) { return(UpdateInstanceStatusResult); } //记录出错信息 return(UpdateInstanceMessage(InstanceID, ErrorMessage)); } catch (Exception ex) { WFGlobal.ErrInfo = CLog.PutDownErrInfo("设置工作流实例的错误状态操作异常,工作流实例ID:" + InstanceID + ",异常信息:" + ex.Message.ToString()); return(WFGlobal.ErrInfo); } }
/// <summary> /// 将工作流实例的状态设置为Complete /// </summary> /// <param name="InstanceID"></param> public static string SetInstanceComplete(string InstanceID) { try { string UpdateInstanceApprovalStatusResult = CApprovalManager.UpdateInstanceApprovalStatus(InstanceID, EApprovalStatus.Complete); if (UpdateInstanceApprovalStatusResult != WFGlobal.success) { return(UpdateInstanceApprovalStatusResult); } return(UpdateInstanceStatus(InstanceID, EInstanceStatus.Complete)); } catch (Exception ex) { WFGlobal.ErrInfo = CLog.PutDownErrInfo("设置实例为结束状态的操作异常,实例ID:" + InstanceID + ",异常信息:" + ex.Message.ToString()); return(WFGlobal.ErrInfo); } }
/// <summary> /// 将工作流流转到开始节点 /// </summary> /// <param name="InstanceID"></param> /// <param name="CurrentNodeID">当前节点ID</param> public static string ReturnToStart(string InstanceID, string CurrentNodeID, string StartNodeID) { try { //将当前所有节点的审批状态设置为完成状态 string UpdateInstanceApprovalStatusResult = CApprovalManager.UpdateInstanceApprovalStatus(InstanceID, EApprovalStatus.Complete); if (UpdateInstanceApprovalStatusResult != WFGlobal.success) { return(UpdateInstanceApprovalStatusResult); } //流程流转到开始节点 return(CNodeManager.NodeTransfer(InstanceID, CurrentNodeID, StartNodeID)); } catch (Exception ex) { WFGlobal.ErrInfo = CLog.PutDownErrInfo("返回到开始节点操作异常。实例ID:" + InstanceID + ",当前节点ID:" + CurrentNodeID + ",异常信息:" + ex.Message.ToString()); return(WFGlobal.ErrInfo); } }