/// <summary> /// 构造函数 /// </summary> public FlowRuntime(FlowInstance instance) { dynamic schemeContentJson = Newtonsoft.Json.JsonConvert.DeserializeObject(instance.SchemeContent);//获取工作流模板内容的json对象; InitLines(schemeContentJson); InitNodes(schemeContentJson); currentNodeId = (string.IsNullOrEmpty(instance.ActivityId) ? startNodeId : instance.ActivityId); currentNodeType = GetNodeType(currentNodeId); FormData = instance.FormData; title = schemeContentJson.title; initNum = schemeContentJson.initNum; previousId = instance.PreviousId; flowInstanceId = instance.Id; //会签开始节点和流程结束节点没有下一步 if (currentNodeType == 0 || currentNodeType == 4) { nextNodeId = "-1"; nextNodeType = -1; } else { nextNodeId = GetNextNodeId();//下一个节点 nextNodeType = GetNodeType(nextNodeId); } }
public abstract Task Handle(FlowInstance instance, FlowForm flowForm);