From 21e2351b069d86332d8eb07e1bb0acf865e603f8 Mon Sep 17 00:00:00 2001 From: francav Date: Fri, 31 May 2024 13:21:37 +0100 Subject: [PATCH] (c8-engine-client): fixing definitionId and definitionKey settings --- .../com/wks/bpm/engine/camunda/client/C8EngineClient.java | 8 +++++++- .../wks/bpm/engine/camunda/client/C8OperateClient.java | 6 ++++-- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/apps/java/libraries/c8-client/src/main/java/com/wks/bpm/engine/camunda/client/C8EngineClient.java b/apps/java/libraries/c8-client/src/main/java/com/wks/bpm/engine/camunda/client/C8EngineClient.java index 8bb698be..0cfd563d 100644 --- a/apps/java/libraries/c8-client/src/main/java/com/wks/bpm/engine/camunda/client/C8EngineClient.java +++ b/apps/java/libraries/c8-client/src/main/java/com/wks/bpm/engine/camunda/client/C8EngineClient.java @@ -11,8 +11,10 @@ */ package com.wks.bpm.engine.camunda.client; +import java.util.Arrays; import java.util.List; import java.util.Optional; +import java.util.stream.Collectors; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; @@ -115,7 +117,11 @@ public Task[] findTasks(final Optional processInstanceBusinessKey, final ProcessInstance[] processInstances = operateClient.searchProcessInstances(Optional.empty(), processInstanceBusinessKey, Optional.empty(), bpmEngine); - return processInstances.length > 0 ? tasklistClient.find(processInstances[0].getId(), bpmEngine) : new Task[0]; + List allTasks = Arrays.stream(processInstances) + .flatMap(processInstance -> Arrays.stream(tasklistClient.find(processInstance.getId(), bpmEngine))) + .collect(Collectors.toList()); + + return allTasks.toArray(new Task[0]); } @Override diff --git a/apps/java/libraries/c8-client/src/main/java/com/wks/bpm/engine/camunda/client/C8OperateClient.java b/apps/java/libraries/c8-client/src/main/java/com/wks/bpm/engine/camunda/client/C8OperateClient.java index e41feda4..b3d3b61a 100644 --- a/apps/java/libraries/c8-client/src/main/java/com/wks/bpm/engine/camunda/client/C8OperateClient.java +++ b/apps/java/libraries/c8-client/src/main/java/com/wks/bpm/engine/camunda/client/C8OperateClient.java @@ -144,8 +144,10 @@ public ProcessDefinition[] findProcessDefinitions(BpmEngine bpmEngine) { .map(o -> - ProcessDefinitionImpl.builder().bpmEngineId(bpmEngine.getId()).id(o.getBpmnProcessId()) - .key(String.valueOf(o.getKey())).version(String.valueOf(o.getVersion())).name(o.getName()) + // for C8, case definition BpmnProcessId = WKS process definition key + // for C8, case definition key = WKS process definition Id + ProcessDefinitionImpl.builder().bpmEngineId(bpmEngine.getId()).id(String.valueOf(o.getKey())) + .key(o.getBpmnProcessId()).version(String.valueOf(o.getVersion())).name(o.getName()) .build()) .toArray(ProcessDefinitionImpl[]::new);