using System; using System.Collections.Generic; namespace RoadFlow.Data.Interface { public interface IWorkFlowTask { /// /// 新增 /// int Add(RoadFlow.Data.Model.WorkFlowTask model); /// /// 更新 /// int Update(RoadFlow.Data.Model.WorkFlowTask model); /// /// 查询所有记录 /// List GetAll(); /// /// 查询单条记录 /// Model.WorkFlowTask Get(Guid id); /// /// 删除 /// int Delete(Guid id); /// /// 删除一个实例 /// int Delete(Guid flowID, Guid groupID); /// /// 查询记录条数 /// long GetCount(); /// /// 查询待办任务 /// /// /// /// /// /// /// /// /// 0待办 1已完成 /// List GetTasks(string userID, out string pager, string query = "", string title = "", string flowid = "", string sender = "", string date1 = "", string date2 = "", int type = 0); /// /// 查询待办任务(APP接口) /// /// /// /// /// /// /// /// /// 0待办 1已完成 /// List AppGetTasks(string userID, int PageIndex, int PageSize, string title = "", string flowid = "", string sender = "", string date1 = "", string date2 = "", int type = 0); /// /// 得到流程实例列表 /// /// /// /// /// /// /// /// /// /// /// 是否完成 0:全部 1:未完成 2:已完成 /// List GetInstances(Guid[] flowID, Guid[] senderID, Guid[] receiveID, out string pager, string query = "", string title = "", string flowid = "", string date1 = "", string date2 = "", int status = 0); /// /// 更新打开时间 /// /// /// /// 是否将状态更新为1 void UpdateOpenTime(Guid id, DateTime openTime, bool isStatus = false); /// /// 得到一个流程实例的发起者 /// /// /// /// string GetFirstSnderID(Guid flowID, string groupID); /// /// 得到一个流程实例一个步骤的处理者 /// /// /// /// List GetStepSnderID(Guid flowID, Guid stepID, Guid groupID); /// /// 得到一个流程实例前一步骤的处理者 /// /// /// /// List GetPrevSnderID(Guid flowID, Guid stepID, Guid groupID); /// /// 完成一个任务 /// /// /// /// /// int Completed(Guid taskID, string comment = "", bool isSign = false, int status = 2, string note = ""); /// /// 得到一个流程实例一个步骤的任务 /// /// /// /// List GetTaskList(Guid flowID, Guid stepID, Guid groupID); /// /// 得到一个实例的任务 /// /// /// /// List GetTaskList(Guid flowID, Guid groupID); /// /// 得到和一个任务同级的任务 /// /// 任务ID /// 是否区分步骤ID,多步骤会签区分的是上一步骤ID /// List GetTaskList(Guid taskID, bool isStepID = true); /// /// 得到一个任务的前一任务 /// /// /// /// List GetPrevTaskList(Guid taskID); /// /// 得到一个任务的后续任务 /// /// /// /// List GetNextTaskList(Guid taskID); /// /// 得到一个流程实例一个步骤一个人员的任务 /// /// /// /// /// /// List GetUserTaskList(Guid flowID, Guid stepID, Guid groupID, Guid userID); /// /// 更新一个任务后后续任务状态 /// /// /// /// /// int UpdateNextTaskStatus(Guid taskID, int status); /// /// 查询一个流程是否有任务数据 /// /// /// bool HasTasks(Guid flowID); /// /// 查询一个用户在一个步骤是否有未完成任务 /// /// /// bool HasNoCompletedTasks(Guid flowID, Guid stepID, Guid groupID, string userID); /// /// 激活临时任务 /// /// /// /// /// 要求完成时间 /// int UpdateTempTasks(Guid flowID, Guid stepID, Guid groupID, DateTime? completedTime, DateTime receiveTime); /// /// 删除临时任务 /// /// /// /// /// /// int DeleteTempTasks(Guid flowID, Guid stepID, Guid groupID, Guid prevStepID); /// /// 得到一个任务的状态 /// /// /// int GetTaskStatus(Guid taskID); /// /// 根据SubFlowID得到一个任务 /// /// /// List GetBySubFlowGroupID(Guid subflowGroupID); } }