From 1a90c25252be733b8bae654a54497fdd4b6ab1f8 Mon Sep 17 00:00:00 2001 From: wangli <274027703@qq.com> Date: Wed, 25 Sep 2024 10:08:27 +0800 Subject: [PATCH] =?UTF-8?q?feat(REQ-2924)=20-=20=E5=AE=8C=E5=96=84?= =?UTF-8?q?=E8=8A=82=E7=82=B9=E5=A4=9A=E4=BA=BA=E6=97=B6=E7=9A=84=E5=93=8D?= =?UTF-8?q?=E5=BA=94=E6=95=B0=E6=8D=AE=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/BpmnProcessInstanceServiceImpl.java | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/workflow-engine-core/src/main/java/cn/axzo/workflow/core/service/impl/BpmnProcessInstanceServiceImpl.java b/workflow-engine-core/src/main/java/cn/axzo/workflow/core/service/impl/BpmnProcessInstanceServiceImpl.java index 4dc5eaf92..f2f939a33 100644 --- a/workflow-engine-core/src/main/java/cn/axzo/workflow/core/service/impl/BpmnProcessInstanceServiceImpl.java +++ b/workflow-engine-core/src/main/java/cn/axzo/workflow/core/service/impl/BpmnProcessInstanceServiceImpl.java @@ -1140,7 +1140,7 @@ public class BpmnProcessInstanceServiceImpl implements BpmnProcessInstanceServic // 比对抄送人 logVO.getTaskDetails().stream() .filter(i -> Objects.equals(i.getNodeType(), NODE_CARBON_COPY)) - .flatMap(i -> i.getForecastAssignees().stream()) + .flatMap(i -> ListUtils.emptyIfNull(i.getForecastAssignees()).stream()) .filter(i -> i.buildAssigneeId().contains(ge130Assignee) || Objects.equals(i.buildAssigneeId_1_2_1(), le130Assignee)) .findAny() .ifPresent(i -> authorizedButtons.addAll(chooseButtons(logVO, CONFIG_BUTTON_TYPE_CARBON_COPY))); @@ -1210,9 +1210,19 @@ public class BpmnProcessInstanceServiceImpl implements BpmnProcessInstanceServic getFutureTasks(forecasting, tasks); // 处理是否加密 handleEncrypt(dto.getEncrypt(), tasks); + // reset field forecastAssignees Empty to null; + resetCollectionToNull(tasks); return tasks; } + private void resetCollectionToNull(List tasks) { + tasks.forEach(i-> { + if(ListUtils.emptyIfNull(i.getForecastAssignees()).isEmpty()) { + i.setForecastAssignees(null); + } + }); + } + private static void handleEncrypt(Boolean encrypt, List tasks) { if (Boolean.FALSE.equals(encrypt)) { return; @@ -1230,7 +1240,7 @@ public class BpmnProcessInstanceServiceImpl implements BpmnProcessInstanceServic i.setOperationDesc("已处理"); } // 统一将多人节点数据全部置空 - i.setForecastAssignees(Collections.emptyList()); + i.setForecastAssignees(null); // 统一将签名数据置空 i.setSignatureUrl(null); });