我们正在使用 Activiti 在我们的 spring-mvc 环境中对流程进行建模。
我想生成整个流程的自定义概览,包括流程的当前位置。
Activiti 提供了生成 png 的可能性
ProcessDiagramGenerator.generatePngDiagram
但是我想在 html 页面中创建流程的自定义呈现。为此,我需要有关该过程的信息。
之所以如此困难,是因为我只想显示特定用户的用户任务并为多个进程执行此操作。有些缺少一些步骤。
我知道如何获取当前事件的任务,但我更感兴趣的是用户在此过程中可能遇到的所有任务。
有谁知道如何获得例如部署到引擎的流程的特定用户的所有用户任务的列表?
最佳答案
如果你想要一个用户候选的任务列表,你可以使用:
List<Task> userCandidateTasks = taskService.createTaskQuery().taskCandidateUser(username).list();
或分配给该用户的任务:
List<Task> userAssignedTasks = taskService.createTaskQuery().taskAssignee(username).list();
然后,如果您希望这些出现在图表上,您可以获得所需任务的 ID(例如,您可以合并用户是候选人和受让人的任务),然后您只需将 ID 列表传递给方法:
InputStream imageStream = ProcessDiagramGenerator.generateDiagram(processDefinition, "png", tasksIdList);
关于activiti - 如何获取有关当前部署流程的信息以在 Activiti 中显示自定义流程图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13701221/