/// <summary> /// 获取下一步活动列表树 /// </summary> /// <param name="taskID"></param> /// <returns></returns> public IList <NodeView> GetNextActivityTree(long taskID, IDictionary <string, string> condition = null) { var task = (new TaskManager()).GetTaskView(taskID); var processModel = new ProcessModel(task.ProcessGUID); var nextSteps = processModel.GetNextActivityTree(task.ActivityGUID, condition); return(nextSteps); }
/// <summary> /// 获取当前办理任务的下一步 /// </summary> /// <param name="runner"></param> /// <param name="condition"></param> /// <param name="session"></param> /// <returns></returns> internal IList <NodeView> GetNextActivityTree(WfAppRunner runner, IDictionary <string, string> condition, ISession session) { var processModel = new ProcessModel(runner.ProcessGUID); var taskList = GetTaskOfMine(runner, session).ToList(); if (taskList == null || taskList.Count == 0) { throw new WorkflowException("没有当前你正在办理的任务,流程无法读取下一步节点!"); } else if (taskList.Count > 1) { throw new WorkflowException(string.Format("当前应用ID的办理任务数目要唯一,不是正确的任务数目!错误数目:{0}", taskList.Count)); } var task = taskList[0]; var nextSteps = processModel.GetNextActivityTree(task.ActivityGUID, condition); return(nextSteps); }