using Microsoft.Extensions.Localization; using SqlSugar; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace RoadFlow.Data { public interface IFlow:IRoadFlowRepository { /// /// 查询一页数据 /// /// /// /// /// 可管理的流程ID /// /// /// /// List GetPagerList(out int count, int size, int number, List flowIdList, string name, List types, string order, int status = -1); /// /// 得到一个用户可管理的流程 /// /// /// public List GetManageFlowIds(string userId); /// /// 得到一个用户可管理的流程 /// /// /// public List GetManageFlow(string userId); /// /// 得到状态显示 /// /// /// 语言包 /// public string GetStatusTitle(int status, IStringLocalizer localizer = null); /// /// 保存流程 /// /// /// 语言包 /// public string Save(string json, IStringLocalizer localizer = null); /// /// 流程另存为 /// /// 流程ID /// 新的流程名称 /// 返回guid字符串表示成功(新流程的ID),其它为错误信息 /// 语言包 public string SaveAs(string flowId, string newFlowName, IStringLocalizer localizer = null); /// /// 安装流程 /// /// /// 日志标题 /// 语言包 /// public string Install(string json, IStringLocalizer localizer = null); /// /// 安装流程 /// /// 流程实体 /// 应用程序库实体 public int Install(Model.rf_flow flow); /// /// 卸载或作删除标记流程 /// /// /// 日志标题 /// 状态,2卸载 3删除 /// 语言包 /// public string UnInstall(string json, int status, IStringLocalizer localizer = null); /// /// 得到流程运行时实体 /// /// 流程设置JSON /// 加载错误时的错误信息 /// 语言包 /// public Model.FlowRun GetFlowRunModel(string json, out string errMsg, IStringLocalizer localizer = null); /// /// 查询一个流程 /// /// /// public Model.rf_flow Get(string id); /// /// 导入流程 /// /// /// 是否要创建表单文件,VUE导入时不需要创建 /// 返回1表示成功,其它为错误信息 public string ImportFlow(string json, bool createFormFile = true); /// /// 查询一页数据 /// /// /// /// /// /// /// /// /// 状态-1表示查询未删除的流程 /// List GetPagerList(out int count, int size, int number, List flowIdList, string name, string type, string order, int status = -1); /// /// 得到一个用户可以发起的流程运行时实体列表 /// /// /// public List GetStartFlows(string userId); /// /// 得到流程运行时实体 /// /// 流程ID /// 是否从缓存中取 /// 当前任务实体(动态步骤时要取动态的步骤流程运行时实体) /// public Model.FlowRun GetFlowRunModel(string id, bool isCache = true, RoadFlow.Model.rf_flowtask currentTask = null); /// /// 得到一个步骤的所有后续步骤集合 /// /// /// /// public List GetAllNextSteps(Model.FlowRun flowRunModel, Guid stepId); /// /// 得到一个用户可管理实例的流程 /// /// /// public List GetManageInstanceFlowIds(string userId); } }