接口 RuntimeService

所有已知实现类:
RuntimeServiceImpl

public interface RuntimeService
流程实例运行业务类
从以下版本开始:
1.0
  • 方法详细资料

    • createInstance

      FlwInstance createInstance(FlwProcess flwProcess, FlowCreator flowCreator, Map<String,Object> args, NodeModel nodeModel, boolean saveAsDraft, Supplier<FlwInstance> supplier)
      根据流程、创建人员、父流程实例ID创建流程实例
      参数:
      flwProcess - 流程定义对象
      flowCreator - 流程实例任务创建者
      args - 参数列表
      nodeModel - 当前所在节点
      saveAsDraft - 暂存草稿
      supplier - 初始化流程实例提供者
      返回:
      活动流程实例对象
    • getProcessModelByInstanceId

      ProcessModel getProcessModelByInstanceId(Long instanceId)
      根据流程实例ID获取流程实例模型
      参数:
      instanceId - 流程实例ID
      返回:
      ProcessModel
    • getNodeModel

      default NodeModel getNodeModel(Long instanceId, String nodeKey)
      通过流程实例ID节点KEY获取节点模型
      参数:
      instanceId - 流程实例ID
      nodeKey - 节点KEY
    • addVariable

      boolean addVariable(Long instanceId, Map<String,Object> args, Function<FlwInstance,FlwInstance> function)
      根据 流程实例ID 更新流程实例全局变量
      参数:
      instanceId - 流程实例ID
      args - 流程实例参数
      function - 待更新实例回调处理函数
    • addVariable

      default boolean addVariable(Long instanceId, Map<String,Object> args)
      根据 流程实例ID 更新流程实例全局变量
      参数:
      instanceId - 流程实例ID
      args - 流程实例参数
    • endInstance

      boolean endInstance(Execution execution, Long instanceId, NodeModel endNode, InstanceState instanceState)
      结束流程实例(审批通过)
      参数:
      execution - Execution
      instanceId - 流程实例ID
      endNode - 结束节点
      instanceState - 实例状态
      返回:
      true 成功 false 失败
    • saveInstance

      void saveInstance(FlwInstance flwInstance, FlwProcess flwProcess, boolean saveAsDraft, FlowCreator flowCreator)
      保存流程实例
      参数:
      flwInstance - 流程实例对象
      flwProcess - 流程定义对象
      saveAsDraft - 暂存草稿
      flowCreator - 处理人员
    • suspendInstanceById

      boolean suspendInstanceById(Long instanceId, FlowCreator flowCreator)
      暂停流程实例 InstanceState.suspend
      参数:
      instanceId - 流程实例ID
      flowCreator - 处理人员
      返回:
      true 成功 false 失败
    • activeInstanceById

      boolean activeInstanceById(Long instanceId, FlowCreator flowCreator)
      激活流程实例 InstanceState.active
      参数:
      instanceId - 流程实例ID
      flowCreator - 处理人员
      返回:
      true 成功 false 失败
    • reject

      boolean reject(Long instanceId, FlwTask currentFlwTask, FlowCreator flowCreator)
      流程实例拒绝审批强制终止(用于后续审核人员认为该审批不再需要继续,拒绝审批强行终止)
      参数:
      instanceId - 流程实例ID
      currentFlwTask - 当前任务
      flowCreator - 处理人员
    • reject

      default boolean reject(Long instanceId, FlowCreator flowCreator)
    • revoke

      boolean revoke(Long instanceId, FlwTask currentFlwTask, FlowCreator flowCreator)
      流程实例撤销(用于错误发起审批申请,发起人主动撤销)
      参数:
      instanceId - 流程实例ID
      currentFlwTask - 当前任务
      flowCreator - 处理人员
    • revoke

      default boolean revoke(Long instanceId, FlowCreator flowCreator)
    • timeout

      boolean timeout(Long instanceId, FlwTask currentFlwTask, FlowCreator flowCreator)
      流程实例超时(设定审批时间超时,自动结束)
      参数:
      instanceId - 流程实例ID
      currentFlwTask - 当前任务
      flowCreator - 处理人员
    • timeout

      default boolean timeout(Long instanceId, FlowCreator flowCreator)
    • timeout

      default boolean timeout(Long instanceId)
      流程实例超时(忽略操作权限)
      参数:
      instanceId - 流程实例ID
    • terminate

      boolean terminate(Long instanceId, FlwTask currentFlwTask, FlowCreator flowCreator)
      流程实例强制终止
      参数:
      instanceId - 流程实例ID
      currentFlwTask - 当前任务
      flowCreator - 处理人员
    • terminate

      default boolean terminate(Long instanceId, FlowCreator flowCreator)
    • updateInstance

      void updateInstance(FlwInstance flwInstance)
      更新流程实例
      参数:
      flwInstance - 流程实例对象
    • updateInstanceModelById

      boolean updateInstanceModelById(Long instanceId, ProcessModel processModel)
      根据 流程实例ID 更新流程实例模型内容
      参数:
      instanceId - 流程实例ID
      processModel - 流程模型
      返回:
      true 成功 false 失败
    • cascadeRemoveByProcessId

      void cascadeRemoveByProcessId(Long processId)
      级联删除指定流程实例的所有数据
      参数:
      processId - 流程ID
    • cascadeRemoveByInstanceId

      void cascadeRemoveByInstanceId(Long instanceId)
      级联删除表 flw_his_task_actor, flw_his_task, flw_task_actor, flw_task, flw_instance, flw_his_instance
      参数:
      instanceId - 流程实例ID
    • destroyByInstanceId

      boolean destroyByInstanceId(Long instanceId, Map<String,Object> args)
      根据 流程实例ID 作废流程
      参数:
      instanceId - 流程实例ID
      args - 流程实例参数
      返回:
      true 成功 false 失败
    • appendNodeModel

      void appendNodeModel(Long taskId, NodeModel nodeModel, boolean beforeAfter)
      追加节点模型(不执行任务跳转)

      执行追加节点模型调用 FlowEngine.executeAppendNodeModel(Long, NodeModel, FlowCreator, boolean)

      参数:
      taskId - 任务ID
      nodeModel - 节点模型
      beforeAfter - true 前置 false 后置
    • removeNodeModel

      boolean removeNodeModel(Long instanceId, String nodeKey, Function<NodeModel,Boolean> checkFunc)
      删除节点模型某个临时节点
      参数:
      instanceId - 流程实例ID
      nodeKey - 节点KEY
      checkFunc - 节点检查函数