From fb059cced10c9af0a5aef9b46255c0a20aea46ca Mon Sep 17 00:00:00 2001 From: wangli <274027703@qq.com> Date: Thu, 7 Dec 2023 20:22:06 +0800 Subject: [PATCH] =?UTF-8?q?update=20-=20=E4=BB=BB=E5=8A=A1=E6=97=A5?= =?UTF-8?q?=E5=BF=97=E8=BF=87=E6=BB=A4=E7=B3=BB=E7=BB=9F=E6=93=8D=E4=BD=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../converter/BpmnHistoricTaskInstanceConverter.java | 10 ++++++++-- .../core/service/impl/BpmnProcessTaskServiceImpl.java | 8 ++------ 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/workflow-engine-core/src/main/java/cn/axzo/workflow/core/service/converter/BpmnHistoricTaskInstanceConverter.java b/workflow-engine-core/src/main/java/cn/axzo/workflow/core/service/converter/BpmnHistoricTaskInstanceConverter.java index 3b7dabe61..82c722c1f 100644 --- a/workflow-engine-core/src/main/java/cn/axzo/workflow/core/service/converter/BpmnHistoricTaskInstanceConverter.java +++ b/workflow-engine-core/src/main/java/cn/axzo/workflow/core/service/converter/BpmnHistoricTaskInstanceConverter.java @@ -7,8 +7,13 @@ import org.mapstruct.Mapper; import org.mapstruct.Mapping; import org.springframework.util.CollectionUtils; -import java.util.*; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Collections; +import java.util.List; +import java.util.Objects; +import static cn.axzo.workflow.core.common.enums.BpmnProcessTaskResultEnum.REJECTION_AUTO_COMPLETED; import static org.mapstruct.NullValueCheckStrategy.ALWAYS; /** @@ -44,13 +49,14 @@ public interface BpmnHistoricTaskInstanceConverter extends EntityConverter toVosSkipMiEnd(List entities) { + default List toVosSkipSystemOperation(List entities) { if (CollectionUtils.isEmpty(entities)) { return Collections.emptyList(); } List vos = new ArrayList<>(); entities.stream() .filter(i -> !Objects.equals(DELETE_REASON_END, i.getDeleteReason())) + .filter(i -> Objects.equals(REJECTION_AUTO_COMPLETED.getDesc(), i.getDeleteReason())) .forEach(i -> vos.add(toVo(i))); return vos; } diff --git a/workflow-engine-core/src/main/java/cn/axzo/workflow/core/service/impl/BpmnProcessTaskServiceImpl.java b/workflow-engine-core/src/main/java/cn/axzo/workflow/core/service/impl/BpmnProcessTaskServiceImpl.java index b7b50c19f..d7158f9ff 100644 --- a/workflow-engine-core/src/main/java/cn/axzo/workflow/core/service/impl/BpmnProcessTaskServiceImpl.java +++ b/workflow-engine-core/src/main/java/cn/axzo/workflow/core/service/impl/BpmnProcessTaskServiceImpl.java @@ -528,21 +528,17 @@ public class BpmnProcessTaskServiceImpl implements BpmnProcessTaskService { List taskInstances = query.orderByHistoricTaskInstanceStartTime().desc() // 创建时间倒序 .list(); // 过滤了多实例或签自动完成的任务 - List vos = historicTaskInstanceConverter.toVosSkipMiEnd(taskInstances); + List vos = historicTaskInstanceConverter.toVosSkipSystemOperation(taskInstances); Map> commentByTaskIdMap = taskService.getProcessInstanceComments(processInstanceId).stream().collect(Collectors.groupingBy(Comment::getTaskId)); Map variableInstanceMap = + // 不能使用框架提供的历史变量 API 查询,有 BUG historyService.createNativeHistoricVariableInstanceQuery().sql("select * from ACT_HI_VARINST t where " + "t.proc_inst_id_= #{processInstanceId}") .parameter("processInstanceId", processInstanceId) .list().stream().collect(Collectors.toMap(HistoricVariableInstance::getVariableName, Function.identity(), (s, t) -> s)); - // Map variableInstanceMap = - // historyService.createHistoricVariableInstanceQuery().processInstanceId(processInstanceId) - // .list().stream() - // .collect(Collectors.toMap(HistoricVariableInstance::getVariableName, - // Function.identity(), (s, t) -> s)); Map> attachmentByTaskIdMap = taskService.getProcessInstanceAttachments(processInstanceId).stream() .collect(Collectors.groupingBy(Attachment::getTaskId));