接口 FlowEngine

所有已知实现类:
FlowEngineImpl

public interface FlowEngine
FlowLong流程引擎接口
从以下版本开始:
1.0
  • 方法详细资料

    • configure

      FlowEngine configure(FlowContext config)
      根据Configuration对象配置实现类
      参数:
      config - 全局配置对象
      返回:
      FlowLongEngine 流程引擎
    • getContext

      FlowContext getContext()
    • processService

      default ProcessService processService()
      获取process服务
      返回:
      ProcessService 流程定义服务
    • queryService

      default QueryService queryService()
      获取查询服务
      返回:
      QueryService 常用查询服务
    • runtimeService

      default RuntimeService runtimeService()
      获取实例服务
      返回:
      RuntimeService 流程实例运行业务服务
    • taskService

      default TaskService taskService()
      获取任务服务
      返回:
      TaskService 任务服务
    • startInstanceById

      Optional<FlwInstance> startInstanceById(Long id, FlowCreator flowCreator, Map<String,Object> args, boolean saveAsDraft, Supplier<FlwInstance> supplier)
      根据流程定义ID,创建人ID,参数列表启动流程实例
      参数:
      id - 流程定义ID
      flowCreator - 流程实例任务创建者
      args - 参数列表
      saveAsDraft - 暂存草稿
      supplier - 初始化流程实例提供者
      返回:
      FlwInstance 流程实例
    • startInstanceById

      default Optional<FlwInstance> startInstanceById(Long id, FlowCreator flowCreator, Map<String,Object> args, boolean saveAsDraft)
    • startInstanceById

      default Optional<FlwInstance> startInstanceById(Long id, FlowCreator flowCreator, Map<String,Object> args)
    • startInstanceById

      default Optional<FlwInstance> startInstanceById(Long id, FlowCreator flowCreator, String businessKey, boolean saveAsDraft)
    • startInstanceById

      default Optional<FlwInstance> startInstanceById(Long id, FlowCreator flowCreator, String businessKey)
    • startInstanceById

      default Optional<FlwInstance> startInstanceById(Long id, FlowCreator flowCreator, boolean saveAsDraft)
    • startInstanceById

      default Optional<FlwInstance> startInstanceById(Long id, FlowCreator flowCreator)
    • startInstanceByProcessKey

      Optional<FlwInstance> startInstanceByProcessKey(String processKey, Integer version, FlowCreator flowCreator, Map<String,Object> args, boolean saveAsDraft, Supplier<FlwInstance> supplier)
      根据流程名称、版本号、创建人、参数列表启动流程实例
      参数:
      processKey - 流程定义key
      version - 版本号
      flowCreator - 流程实例任务创建者
      args - 参数列表
      saveAsDraft - 暂存草稿
      supplier - 初始化流程实例提供者
      返回:
      FlwInstance 流程实例
    • startInstanceByProcessKey

      default Optional<FlwInstance> startInstanceByProcessKey(String processKey, Integer version, FlowCreator flowCreator, Map<String,Object> args, boolean saveAsDraft)
    • startInstanceByProcessKey

      default Optional<FlwInstance> startInstanceByProcessKey(String processKey, Integer version, FlowCreator flowCreator, Map<String,Object> args)
    • startInstanceByProcessKey

      default Optional<FlwInstance> startInstanceByProcessKey(String processKey, Integer version, FlowCreator flowCreator, String businessKey, boolean saveAsDraft)
    • startInstanceByProcessKey

      default Optional<FlwInstance> startInstanceByProcessKey(String processKey, Integer version, FlowCreator flowCreator, String businessKey)
    • startInstanceByProcessKey

      default Optional<FlwInstance> startInstanceByProcessKey(String processKey, Integer version, FlowCreator flowCreator, boolean saveAsDraft)
    • startInstanceByProcessKey

      default Optional<FlwInstance> startInstanceByProcessKey(String processKey, Integer version, FlowCreator flowCreator)
    • startInstanceByProcessKey

      default Optional<FlwInstance> startInstanceByProcessKey(String processKey, FlowCreator flowCreator, boolean saveAsDraft)
    • startInstanceByProcessKey

      default Optional<FlwInstance> startInstanceByProcessKey(String processKey, FlowCreator flowCreator)
    • startProcessInstance

      Optional<FlwInstance> startProcessInstance(FlwProcess process, FlowCreator flowCreator, Map<String,Object> args, boolean saveAsDraft, Supplier<FlwInstance> supplier)
      根据流程对象启动流程实例
      参数:
      process - FlwProcess
      flowCreator - 流程实例任务创建者
      args - 参数列表
      saveAsDraft - 暂存草稿
      supplier - 初始化流程实例提供者
      返回:
      FlwInstance 流程实例
    • restartProcessInstance

      void restartProcessInstance(Long id, String currentNode, Execution execution)
      重启流程实例(从当前所在节点currentNode位置开始)
      参数:
      id - 流程定义ID
      currentNode - 当前所在节点
      execution - Execution
    • executeTask

      boolean executeTask(Long taskId, FlowCreator flowCreator, Map<String,Object> args)
      根据任务ID,创建人信息,参数列表执行任务
      参数:
      taskId - 任务ID
      flowCreator - 任务创建者
      args - 参数列表
      返回:
      true 成功 false 失败
    • executeTask

      default boolean executeTask(Long taskId, FlowCreator flowCreator)
    • executeFinishTrigger

      boolean executeFinishTrigger(Long taskId, FlowCreator flowCreator, Map<String,Object> args)
      根据 触发器任务ID,创建人信息,参数列表执行完成触发器任务
      参数:
      taskId - 任务ID
      flowCreator - 任务创建者
      args - 全局参数列表
      返回:
      true 成功 false 失败
    • executeFinishTrigger

      default boolean executeFinishTrigger(Long taskId, FlowCreator flowCreator)
    • autoJumpTask

      boolean autoJumpTask(Long taskId, Map<String,Object> args, FlowCreator flowCreator)
      自动跳转任务
      参数:
      taskId - 任务ID
      args - 任务参数
      flowCreator - 任务创建者
      返回:
      true 成功 false 失败
    • autoJumpTask

      default boolean autoJumpTask(Long taskId, FlowCreator flowCreator)
    • autoCompleteTask

      boolean autoCompleteTask(Long taskId, Map<String,Object> args, FlowCreator flowCreator)
      自动完成任务
      参数:
      taskId - 任务ID
      args - 任务参数
      flowCreator - 任务创建者
      返回:
      true 成功 false 失败
    • autoCompleteTask

      default boolean autoCompleteTask(Long taskId, FlowCreator flowCreator)
    • autoCompleteTask

      default boolean autoCompleteTask(Long taskId)
    • autoRejectTask

      boolean autoRejectTask(FlwTask flwTask, Map<String,Object> args, FlowCreator flowCreator)
      自动拒绝任务
      参数:
      flwTask - 任务对象
      args - 任务参数
      flowCreator - 任务创建者
      返回:
      true 成功 false 失败
    • autoRejectTask

      default boolean autoRejectTask(FlwTask flwTask, FlowCreator flowCreator)
    • autoRejectTask

      default boolean autoRejectTask(FlwTask flwTask)
    • executeJumpTask

      default boolean executeJumpTask(Long taskId, String nodeKey, FlowCreator flowCreator, Map<String,Object> args)
      根据任务ID,创建人ID,参数列表执行任务,并且根据nodeName跳转到任意节点

      1、nodeName为null时,则跳转至上一步处理 2、nodeName不为null时,则任意跳转,即动态创建转移

      参数:
      taskId - 任务ID
      nodeKey - 跳转的节点key
      flowCreator - 任务创建者
      args - 任务参数
      返回:
      true 成功 false 失败
    • executeJumpTask

      default boolean executeJumpTask(Long taskId, String nodeKey, FlowCreator flowCreator)
    • executeJumpTask

      Optional<List<FlwTask>> executeJumpTask(Long taskId, String nodeKey, FlowCreator flowCreator, Map<String,Object> args, TaskType taskType)
    • executeRejectTask

      Optional<List<FlwTask>> executeRejectTask(FlwTask currentFlwTask, String nodeKey, FlowCreator flowCreator, Map<String,Object> args, boolean termination)
      根据当前任务对象驳回至指定 nodeKey 节点,如果 nodeKey 为空默认为上一步处理
      参数:
      currentFlwTask - 当前任务对象
      nodeKey - 跳转的节点key
      flowCreator - 任务创建者
      args - 任务参数
      termination - 是否终止流程,该参数为 true 时,其它驳回策略无效
      返回:
      Task 任务对象
    • executeRejectTask

      default Optional<List<FlwTask>> executeRejectTask(FlwTask currentFlwTask, String nodeKey, FlowCreator flowCreator, Map<String,Object> args)
    • executeRejectTask

      default Optional<List<FlwTask>> executeRejectTask(FlwTask currentFlwTask, String nodeKey, FlowCreator flowCreator)
    • executeRejectTask

      default Optional<List<FlwTask>> executeRejectTask(FlwTask currentFlwTask, FlowCreator flowCreator, Map<String,Object> args)
    • executeRejectTask

      default Optional<List<FlwTask>> executeRejectTask(FlwTask currentFlwTask, FlowCreator flowCreator)
    • executeResumeTask

      boolean executeResumeTask(Long instanceId, FlowCreator flowCreator, Map<String,Object> args)
      执行唤醒撤回或拒绝终止历史任务(只有实例发起人可操作)
      参数:
      instanceId - 历史实例ID
      flowCreator - 任务唤醒者
      args - 任务参数
      返回:
      true 成功 false 失败
    • executeResumeTask

      default boolean executeResumeTask(Long instanceId, FlowCreator flowCreator)
    • createNewTask

      List<FlwTask> createNewTask(Long taskId, TaskType taskType, PerformType performType, List<FlwTaskActor> taskActors, FlowCreator flowCreator, Map<String,Object> args)
      根据已有任务、参与者创建新的任务

      适用于动态转派,动态协办等处理且流程图中不体现节点情况

      参数:
      taskId - 主办任务ID
      taskType - 任务类型
      performType - 参与类型
      taskActors - 参与者集合
      flowCreator - 任务创建者
      args - 任务参数
      返回:
      创建任务集合
    • createCcTask

      boolean createCcTask(NodeModel taskModel, FlwTask flwTask, List<NodeAssignee> ccUserList, FlowCreator flowCreator)
      创建抄送任务

      默认不校验是否重复抄送

      参数:
      taskModel - 任务模型
      flwTask - 当前任务
      ccUserList - 抄送任务分配到任务的人或角色列表
      flowCreator - 任务创建者
    • createCcTask

      default boolean createCcTask(FlwTask flwTask, List<NodeAssignee> ccUserList, FlowCreator flowCreator)
      创建抄送任务
    • executeAppendNodeModel

      boolean executeAppendNodeModel(Long taskId, NodeModel nodeModel, FlowCreator flowCreator, Map<String,Object> args, boolean beforeAfter)
      执行追加节点模型
      参数:
      taskId - 当前任务ID
      nodeModel - 加签节点模型
      flowCreator - 任务创建者
      args - 任务参数
      beforeAfter - true 前置 false 后置
      返回:
      true 成功 false 失败
    • executeAppendNodeModel

      default boolean executeAppendNodeModel(Long taskId, NodeModel nodeModel, FlowCreator flowCreator, boolean beforeAfter)
      执行追加节点模型
    • executeRemoveNodeModel

      boolean executeRemoveNodeModel(Long instanceId, String nodeKey)
      执行删除临时节点模型
      参数:
      instanceId - 流程实例ID
      nodeKey - 节点KEY