这是一个基本功能,我看到了重复的问题,但不幸的是还没有明确的答案。
如何按执行顺序打印/列出给定流程中的所有任务(已完成/未完成)。
我在论坛上找到的两个解决方案都按预期工作
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/