diff --git a/workflow-engine-core/src/main/java/cn/axzo/workflow/core/engine/cmd/CustomApproveTaskCmd.java b/workflow-engine-core/src/main/java/cn/axzo/workflow/core/engine/cmd/CustomApproveTaskCmd.java index 80869add7..5308fe1d3 100644 --- a/workflow-engine-core/src/main/java/cn/axzo/workflow/core/engine/cmd/CustomApproveTaskCmd.java +++ b/workflow-engine-core/src/main/java/cn/axzo/workflow/core/engine/cmd/CustomApproveTaskCmd.java @@ -220,16 +220,16 @@ public class CustomApproveTaskCmd extends AbstractCommand implements Seria .setActivityId(task.getTaskDefinitionKey()) .setActivityName(task.getName()) .setSignatures(new ArrayList<>())); - ListUtils.emptyIfNull(attachmentList).stream() - .filter(i -> Objects.equals(i.getType(), AttachmentTypeEnum.signature)) - .findFirst() - .ifPresent(attachment -> dto.getSignatures().add(0, - new SignatureDTO.SignDetail() - .setApproverName(approver.getAssignerName()) - .setSignature(attachment.getUrl()) - .setAdvice(advice) - .setResult(BpmnProcessTaskResultEnum.APPROVED.getDesc()) - .setOperationTime(new Date()))); + + dto.getSignatures().add(0, new SignatureDTO.SignDetail() + .setApproverName(approver.getAssignerName()) + .setSignature(ListUtils.emptyIfNull(attachmentList).stream() + .filter(i -> Objects.equals(i.getType(), AttachmentTypeEnum.signature)) + .findFirst().orElse(new AttachmentDTO()).getUrl()) + .setAdvice(advice) + .setResult(BpmnProcessTaskResultEnum.APPROVED.getDesc()) + .setOperationTime(new Date()) + ); if (!any.isPresent()) { signatures.add(dto); }