java - 按执行顺序列出给定进程的所有任务

标签 java spring-boot bpmn flowable

这是一个基本功能,我看到了重复的问题,但不幸的是还没有明确的答案。

如何按执行顺序打印/列出给定流程中的所有任务(已完成/未完成)。

我在论坛上找到的两个解决方案都按预期工作

repositoryService.getBpmnModel().getFlowElements() - Does not print in the order of execution . Printed in the order of definition
historyService.createHistoricActivityQuery - Does not print all Service task

如何列出给定流程下的所有任务。

最佳答案

如果您所说的任务是指流程中的所有元素,那么您可以使用 HistoricActivityInstanceQuery 来获取有关它们的信息。

代码看起来像:

List<HistoricActivityInstance> activityInstances = historyService
    .createHistoricActivityInstanceQuery().
    .processInstanceId(processInstanceId)
    .orderByHistoricActivityInstanceStartTime().asc()
    .list();

为了查看 HistoricActivityInstance 是否完成,您需要检查 HistoricActivityInstance#getEndTime()。当为 null 时,表示 Activity 尚未完成,如果为 null 则表示 Activity 已完成。

关于java - 按执行顺序列出给定进程的所有任务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58297322/

相关文章:

java - 在 Java 7 64 位中,我的程序在循环中卡住

java - 如何在脚手架 View 中隐藏字段,但在 Grails 中添加新行时仍然强制执行它?

java - Java 是否具有与 C# 的元组等效的变量类型?

java - Spring Cloud Gateway - 尝试读取 Web 过滤器中的请求正文时请求卡住

java - 无法使用 Spring Boot Security 登录

groovy - Alfresco Activiti - 创建同一子流程的多个实例

java - Activiti 用户任务

java - 将时间字符串转换为长值?

java - intellij spring boot 构建错误

java - 在Activiti Java Delegate内部启动进程并查询任务