2012-12-04 39 views
3

我们使用Activiti在spring-mvc环境中对流程建模。如何获取有关当前部署的流程的信息以在Activiti中显示自定义流程图

我想生成包括进程当前位置在内的整个进程的自定义概览。

的Activiti提供了可能使用

ProcessDiagramGenerator.generatePngDiagram 

documentation

不过,我想在一个HTML页面来创建过程的定制渲染生成一个PNG。为此,我需要有关过程的信息。

这是如此困难的是我只想显示特定用户的用户任务,并为多个进程执行此操作。有些缺少几个步骤。

我知道如何获得当前活动的任务,但我更感兴趣的是用户在过程中遇到的所有可能的任务。

有谁知道如何获得例如部署到引擎的进程的特定用户的所有用户任务列表?

回答

2

,如果你想的任务列表中的用户对你是一个候选人可以使用:

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); 
相关问题