1

I want to genarate a progress diagram, but I'm not clear about how to get the high lighted flows using flowable APIs. May anybody help me about this?

BpmnModel bpmnModel = repositoryService.getBpmnModel(historicProcessInstance.getProcessDefinitionId());
List<HistoricActivityInstance> historicActivityInstances = historyService.createHistoricActivityInstanceQuery()
                .processInstanceId(processInstanceId)
                .orderByHistoricActivityInstanceStartTime()
                .asc()
                .list();


List<String> highLightedActivitis = historicActivityInstances.stream().map(HistoricActivityInstance::getActivityId).collect(Collectors.toList());

List<String> highLightedFlows = new ArrayList<>();


ProcessDiagramGenerator diagramGenerator = processEngineConfiguration.getProcessDiagramGenerator();

return diagramGenerator.generateDiagram(bpmnModel, imageType, highLightedActivitis, highLightedFlows);
Iwo Kucharski
  • 3,735
  • 3
  • 50
  • 66
tttang
  • 11
  • 2

1 Answers1

0

try the following code

        List<HistoricActivityInstance> historicActivityInstanceList =
                this.historyService.createHistoricActivityInstanceQuery().processInstanceId(pi.getId()).list();
        for(HistoricActivityInstance hai : historicActivityInstanceList){
            FlowElement flowElement =
                    this.repositoryService.getBpmnModel(pi.getProcessDefinitionId()).getFlowElement(hai.getActivityId());
            if(flowElement instanceof SequenceFlow){
                flows.add(((SequenceFlow)flowElement).getId());
            }
        }
jonesmith
  • 19
  • 3