using System.Linq.Expressions; using JNPF.Common.Models.WorkFlow; using JNPF.Systems.Entitys.System; using JNPF.VisualDev.Entitys; using JNPF.WorkFlow.Entitys.Dto.FlowBefore; using JNPF.WorkFlow.Entitys.Dto.FlowLaunch; using JNPF.WorkFlow.Entitys.Dto.FlowMonitor; using JNPF.WorkFlow.Entitys.Entity; using JNPF.WorkFlow.Entitys.Model; using SqlSugar; namespace JNPF.WorkFlow.Interfaces.Repository; public interface IFlowTaskRepository { #region 流程列表 /// /// 列表(流程监控). /// /// 请求参数. /// Task GetMonitorList(FlowMonitorListQuery input); /// /// 列表(我发起的). /// /// 请求参数. /// Task GetLaunchList(FlowLaunchListQuery input); /// /// 列表(待我审批). /// /// 请求参数. /// Task GetWaitList(FlowBeforeListQuery input); /// /// 列表(批量审批). /// /// 请求参数. /// Task GetBatchWaitList(FlowBeforeListQuery input); /// /// 列表(我已审批). /// /// 请求参数 /// Task GetTrialList(FlowBeforeListQuery input); /// /// 列表(抄送我的). /// /// 请求参数. /// Task GetCirculateList(FlowBeforeListQuery input); /// /// 批量流程列表. /// /// Task BatchFlowSelector(); /// /// 根据分类获取审批意见. /// /// /// /// /// Task> GetRecordListByCategory(string taskId, string category, string type = "0"); #endregion #region 其他模块流程列表 /// /// 门户列表(待我审批). /// /// Task> GetWaitList(); /// /// 门户列表(待我审批). /// /// Task GetPortalWaitList(); /// /// 列表(我已审批). /// /// Task> GetTrialList(); #endregion #region Other /// /// 流程信息. /// /// /// FlowJsonModel GetFlowTemplateInfo(string id); /// /// 流程json信息. /// /// /// FlowTemplateJsonEntity GetFlowTemplateJsonInfo(Expression> expression); /// /// 表单信息. /// /// /// Task GetFlowFromModel(string formId); /// /// 表单信息. /// /// /// public FlowFormEntity GetFlowFromEntity(string formId); /// /// 流程信息. /// /// /// Task GetEngineInfo(string id); /// /// 任务信息. /// /// /// FlowEngineEntity GetEngineFirstOrDefault(string id); /// /// 获取指定用户被委托人. /// /// 指定用户. /// 流程id. /// Task> GetDelegateUserIds(List userIds, string flowId); /// /// 获取指定用户被委托人. /// /// 指定用户. /// 流程id. /// List GetToUserId(string userId, string flowId); /// /// 获取功能开发. /// /// 流程id. /// Task GetVisualDevInfo(string flowId); /// /// 获取数据连接. /// /// id. /// Task GetLinkInfo(string id); /// /// 获取任务发起人信息. /// /// id. /// FlowUserEntity GetFlowUserEntity(string id); /// /// 新增任务发起人信息. /// /// 用户id. /// 任务id. void CreateFlowUser(string userId, string taskId); /// /// 获取当前用户关系id. /// /// List GetCurrentUserObjId(); /// /// 是否为功能流程. /// /// /// bool IsDevFlow(string flowId); #endregion #region FlowTask /// /// 任务列表. /// /// Task> GetTaskList(); /// /// 任务列表. /// /// 引擎id. /// Task> GetTaskList(string flowId); /// /// 任务列表. /// /// 条件. /// Task> GetTaskList(Expression> expression); /// /// 任务信息. /// /// /// Task GetTaskInfo(string id); /// /// 任务信息. /// /// /// FlowTaskEntity GetTaskFirstOrDefault(string id); /// /// 是否存在任务. /// /// id /// Task AnyFlowTask(Expression> expression); /// /// 任务删除. /// /// /// Task DeleteTask(FlowTaskEntity entity); /// /// 任务删除, 非异步. /// /// /// int DeleteTaskNoAwait(FlowTaskEntity entity, bool isDel = true); /// /// 任务创建. /// /// /// Task CreateTask(FlowTaskEntity entity); /// /// 任务更新. /// /// /// Task UpdateTask(FlowTaskEntity entity); /// /// 任务更新. /// /// /// Task UpdateTask(FlowTaskEntity entity, Expression> Expression = null); /// /// 打回流程删除所有相关数据. /// /// /// 是否清除记录. /// Task DeleteFlowTaskAllData(string taskId, bool isClearRecord = true, bool isClearCandidates = true); /// /// 打回流程删除所有相关数据. /// /// 任务di数组. /// 是否清除记录. /// Task DeleteFlowTaskAllData(List taskIds, bool isClearRecord = true); /// /// 删除子流程. /// /// /// Task DeleteSubTask(FlowTaskEntity flowTaskEntity); #endregion #region FlowTaskNode /// /// 节点列表. /// /// /// Task> GetTaskNodeList(string taskId); /// /// 节点列表. /// /// /// /// /// Task> GetTaskNodeList(Expression> expression, Expression> orderByExpression = null, OrderByType orderByType = OrderByType.Asc); /// /// 节点信息. /// /// /// Task GetTaskNodeInfo(string id); /// /// 节点信息. /// /// /// Task GetTaskNodeInfo(Expression> expression); /// /// 节点创建. /// /// /// Task CreateTaskNode(List entitys); /// /// 节点更新. /// /// /// Task UpdateTaskNode(FlowTaskNodeEntity entity); /// /// 节点更新. /// /// /// Task UpdateTaskNode(List entitys); #endregion #region FlowTaskOperator /// /// 经办列表. /// /// /// Task> GetTaskOperatorList(string taskId); /// /// 经办列表. /// /// /// /// /// Task> GetTaskOperatorList(Expression> expression, Expression> orderByExpression = null, OrderByType orderByType = OrderByType.Asc); /// /// 依次审批经办列表. /// /// /// /// /// Task> GetTaskOperatorUserList(Expression> expression, Expression> orderByExpression = null, OrderByType orderByType = OrderByType.Asc); /// /// 经办信息. /// /// /// Task GetTaskOperatorInfo(string id); /// /// 经办信息. /// /// /// Task GetTaskOperatorInfo(Expression> expression); /// /// 经办删除. /// /// /// Task DeleteTaskOperator(List ids); /// /// 依次经办删除. /// /// /// Task DeleteTaskOperatorUser(string taskId); /// /// 经办创建. /// /// /// Task CreateTaskOperator(List entitys); /// /// 依次经办创建. /// /// /// Task CreateTaskOperatorUser(List entitys); /// /// 经办创建. /// /// /// Task CreateTaskOperator(FlowTaskOperatorEntity entity); /// /// 经办更新. /// /// /// Task UpdateTaskOperator(FlowTaskOperatorEntity entity); /// /// 经办更新. /// /// /// Task UpdateTaskOperator(List entitys); /// /// 是否存在依次审批经办. /// /// /// bool AnyTaskOperatorUser(Expression> expression); #endregion #region FlowTaskOperatorRecord /// /// 经办记录列表. /// /// /// Task> GetTaskOperatorRecordList(string taskId); /// /// 经办记录列表. /// /// /// /// /// Task> GetTaskOperatorRecordList(Expression> expression, Expression> orderByExpression = null, OrderByType orderByType = OrderByType.Asc); /// /// 经办记录列表. /// /// /// Task> GetTaskOperatorRecordModelList(string taskId); /// /// 经办记录信息. /// /// /// Task GetTaskOperatorRecordInfo(string id); /// /// 经办记录信息. /// /// 条件. /// Task GetTaskOperatorRecordInfo(Expression> expression); /// /// 经办记录创建. /// /// /// Task CreateTaskOperatorRecord(FlowTaskOperatorRecordEntity entity); /// /// 经办记录作废. /// /// /// Task DeleteTaskOperatorRecord(List ids); /// /// 经办记录作废. /// /// /// Task DeleteTaskOperatorRecord(Expression> expression); #endregion #region FlowTaskCirculate /// /// 传阅创建. /// /// /// Task CreateTaskCirculate(List entitys); #endregion #region FlowTaskCandidates /// /// 候选人创建. /// /// void CreateFlowCandidates(List entitys); /// /// 候选人删除. /// /// void DeleteFlowCandidates(Expression> expression); /// /// 候选人获取. /// /// List GetFlowCandidates(string nodeId); #endregion #region 系统表单 Task GetSysTableFromService(string enCode, object data, string id, int type); #endregion #region FlowTaskParamter /// /// 根据任务id获取任务引擎参数. /// /// /// /// Task GetTaskParamterByTaskId(string taskId, FlowHandleModel flowHandleModel); /// /// 根据节点id获取任务引擎参数. /// /// /// /// Task GetTaskParamterByNodeId(string nodeId, FlowHandleModel flowHandleModel); /// /// 根据经办id获取任务引擎参数. /// /// /// /// Task GetTaskParamterByOperatorId(string operatorId, FlowHandleModel flowHandleModel); #endregion #region FlowRejectData /// /// 驳回数据信息. /// /// /// Task GetRejectDataInfo(string id); /// /// 驳回数据创建. /// /// /// /// Task CreateRejectData(string taskId, string taskNodeId); /// /// 驳回数据重启. /// /// /// Task UpdateRejectData(FlowRejectDataEntity entity); #endregion }