From 67b521f41b57252b53fbb1e90b7d031e466a22ab Mon Sep 17 00:00:00 2001 From: wangli <274027703@qq.com> Date: Mon, 9 Dec 2024 11:21:56 +0800 Subject: [PATCH] =?UTF-8?q?feat(REQ-3383)=20-=20=E9=85=8D=E5=90=88?= =?UTF-8?q?=E8=B0=83=E6=95=B4=E6=9C=BA=E5=99=A8=E4=BA=BA=E8=8A=82=E7=82=B9?= =?UTF-8?q?=E7=9A=84=E6=90=BA=E5=B8=A6=E9=99=84=E4=BB=B6=EF=BC=8C=E5=B9=B6?= =?UTF-8?q?=E9=87=8D=E5=86=99=E6=9E=84=E9=80=A0=E5=99=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../bpmn/task/BpmnRobotTaskCompleteDTO.java | 4 +++- .../bpmn/task/BpmnRobotTaskCreateDTO.java | 5 ++-- .../cmd/CustomCompleteDummyTaskCmd.java | 24 +++++++++++-------- .../engine/cmd/CustomCreateDummyTaskCmd.java | 12 +++++----- .../impl/BpmnProcessTaskServiceImpl.java | 11 ++------- 5 files changed, 27 insertions(+), 29 deletions(-) diff --git a/workflow-engine-common/src/main/java/cn/axzo/workflow/common/model/request/bpmn/task/BpmnRobotTaskCompleteDTO.java b/workflow-engine-common/src/main/java/cn/axzo/workflow/common/model/request/bpmn/task/BpmnRobotTaskCompleteDTO.java index 32c78007f..a0eb4df2a 100644 --- a/workflow-engine-common/src/main/java/cn/axzo/workflow/common/model/request/bpmn/task/BpmnRobotTaskCompleteDTO.java +++ b/workflow-engine-common/src/main/java/cn/axzo/workflow/common/model/request/bpmn/task/BpmnRobotTaskCompleteDTO.java @@ -12,6 +12,7 @@ import lombok.NoArgsConstructor; import javax.validation.Valid; import javax.validation.constraints.NotBlank; +import javax.validation.constraints.Size; import java.util.List; /** @@ -44,7 +45,7 @@ public class BpmnRobotTaskCompleteDTO { /** * 完成机器人节点的人信息 * - * @since 1.3.0 版本后不支持传人员信息 + * @since 暂不支持传人员信息 */ @ApiModelProperty(value = "当前审核人信息", notes = "可为空,则该任务不验证用户归属") @Deprecated @@ -58,6 +59,7 @@ public class BpmnRobotTaskCompleteDTO { * 图片附件 */ @ApiModelProperty(value = "附件列表") + @Size(max = 11, message = "附件数量超过限制") @AttachmentValidator(types = { @AttachmentTypeValidator(type = AttachmentTypeEnum.image, max = 5), @AttachmentTypeValidator(type = AttachmentTypeEnum.file, max = 5)} diff --git a/workflow-engine-common/src/main/java/cn/axzo/workflow/common/model/request/bpmn/task/BpmnRobotTaskCreateDTO.java b/workflow-engine-common/src/main/java/cn/axzo/workflow/common/model/request/bpmn/task/BpmnRobotTaskCreateDTO.java index df45977c1..67a3e5068 100644 --- a/workflow-engine-common/src/main/java/cn/axzo/workflow/common/model/request/bpmn/task/BpmnRobotTaskCreateDTO.java +++ b/workflow-engine-common/src/main/java/cn/axzo/workflow/common/model/request/bpmn/task/BpmnRobotTaskCreateDTO.java @@ -33,11 +33,10 @@ public class BpmnRobotTaskCreateDTO { /** * 当前审核人信息 * - * @since 1.3.0 版本不支持传人员信息 + * @since 暂不支持传人员信息 */ @ApiModelProperty(value = "当前审核人信息", notes = "可为空,则该任务不验证用户归属", hidden = true) - // @Valid - // @NotNull(message = "审批人不能为空") + @Deprecated private BpmnTaskDelegateAssigner approver; /** diff --git a/workflow-engine-core/src/main/java/cn/axzo/workflow/core/engine/cmd/CustomCompleteDummyTaskCmd.java b/workflow-engine-core/src/main/java/cn/axzo/workflow/core/engine/cmd/CustomCompleteDummyTaskCmd.java index d5aeb07c9..aac271f09 100644 --- a/workflow-engine-core/src/main/java/cn/axzo/workflow/core/engine/cmd/CustomCompleteDummyTaskCmd.java +++ b/workflow-engine-core/src/main/java/cn/axzo/workflow/core/engine/cmd/CustomCompleteDummyTaskCmd.java @@ -2,10 +2,10 @@ package cn.axzo.workflow.core.engine.cmd; import cn.axzo.workflow.common.enums.BpmnProcessInstanceResultEnum; import cn.axzo.workflow.common.model.request.bpmn.task.AttachmentDTO; +import cn.axzo.workflow.common.model.request.bpmn.task.BpmnRobotTaskCompleteDTO; import cn.axzo.workflow.common.model.request.bpmn.task.BpmnTaskDelegateAssigner; import cn.axzo.workflow.core.common.exception.WorkflowEngineException; import cn.axzo.workflow.core.engine.cmd.helper.CustomTaskHelper; -import cn.axzo.workflow.core.repository.entity.ExtAxProcessLog; import cn.axzo.workflow.core.service.ExtAxHiTaskInstService; import cn.axzo.workflow.core.service.ExtAxProcessLogService; import com.alibaba.fastjson.JSON; @@ -43,20 +43,24 @@ import static cn.axzo.workflow.core.engine.cmd.helper.CustomTaskHelper.batchAddA public class CustomCompleteDummyTaskCmd extends AbstractCommand implements Serializable { private final String processInstanceId; private final String taskId; - private final String flowNodeName; - private final String operationDesc; + private String flowNodeName; + private String operationDesc; private final List attachmentList; + private final BpmnTaskDelegateAssigner operator; private final ExtAxHiTaskInstService extAxHiTaskInstService; private final ExtAxProcessLogService extAxProcessLogService; - public CustomCompleteDummyTaskCmd(String processInstanceId, String taskId, String flowNodeName, - String operationDesc, List attachmentList, + + public CustomCompleteDummyTaskCmd(BpmnRobotTaskCompleteDTO dto, ExtAxHiTaskInstService extAxHiTaskInstService, ExtAxProcessLogService extAxProcessLogService) { - this.processInstanceId = processInstanceId; - this.taskId = taskId; - this.flowNodeName = flowNodeName; - this.operationDesc = operationDesc; - this.attachmentList = attachmentList; + this.processInstanceId = dto.getProcessInstanceId(); + this.taskId = dto.getTaskId(); + if (Objects.nonNull(dto.getRobotNode())) { + this.flowNodeName = dto.getRobotNode().getFlowNodeName(); + this.operationDesc = dto.getRobotNode().getOperationDesc(); + } + this.attachmentList = dto.getAttachmentList(); + this.operator = dto.getApprover(); this.extAxHiTaskInstService = extAxHiTaskInstService; this.extAxProcessLogService = extAxProcessLogService; } diff --git a/workflow-engine-core/src/main/java/cn/axzo/workflow/core/engine/cmd/CustomCreateDummyTaskCmd.java b/workflow-engine-core/src/main/java/cn/axzo/workflow/core/engine/cmd/CustomCreateDummyTaskCmd.java index 99f5d8bf6..4a1d94c7c 100644 --- a/workflow-engine-core/src/main/java/cn/axzo/workflow/core/engine/cmd/CustomCreateDummyTaskCmd.java +++ b/workflow-engine-core/src/main/java/cn/axzo/workflow/core/engine/cmd/CustomCreateDummyTaskCmd.java @@ -1,6 +1,7 @@ package cn.axzo.workflow.core.engine.cmd; import cn.axzo.workflow.common.enums.BpmnProcessInstanceResultEnum; +import cn.axzo.workflow.common.model.request.bpmn.task.BpmnRobotTaskCreateDTO; import cn.axzo.workflow.common.model.request.bpmn.task.BpmnTaskDelegateAssigner; import cn.axzo.workflow.core.common.exception.WorkflowEngineException; import cn.axzo.workflow.core.engine.cmd.helper.CustomTaskHelper; @@ -51,12 +52,11 @@ public class CustomCreateDummyTaskCmd extends AbstractCommand implements private final BpmnTaskDelegateAssigner operator; private final ExtAxHiTaskInstService extAxHiTaskInstService; - public CustomCreateDummyTaskCmd(String processInstanceId, String flowNodeName, String operationDesc, - BpmnTaskDelegateAssigner operator, ExtAxHiTaskInstService extAxHiTaskInstService) { - this.processInstanceId = processInstanceId; - this.flowNodeName = flowNodeName; - this.operationDesc = operationDesc; - this.operator = operator; + public CustomCreateDummyTaskCmd(BpmnRobotTaskCreateDTO dto, ExtAxHiTaskInstService extAxHiTaskInstService) { + this.processInstanceId = dto.getProcessInstanceId(); + this.flowNodeName = dto.getRobotNode().getFlowNodeName(); + this.operationDesc = dto.getRobotNode().getOperationDesc(); + this.operator = dto.getApprover(); this.extAxHiTaskInstService = extAxHiTaskInstService; } 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 5c366d49b..b30940cc7 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 @@ -805,21 +805,14 @@ public class BpmnProcessTaskServiceImpl implements BpmnProcessTaskService { @Transactional(rollbackFor = Exception.class) public String createRobotTask(BpmnRobotTaskCreateDTO dto) { CommandExecutor commandExecutor = processEngineConfiguration.getCommandExecutor(); - return commandExecutor.execute(new CustomCreateDummyTaskCmd(dto.getProcessInstanceId(), - dto.getRobotNode().getFlowNodeName(), dto.getRobotNode().getOperationDesc(), dto.getApprover(), - extAxHiTaskInstService)); + return commandExecutor.execute(new CustomCreateDummyTaskCmd(dto, extAxHiTaskInstService)); } @Override @Transactional(rollbackFor = Exception.class) public void completeRobotTask(BpmnRobotTaskCompleteDTO dto) { CommandExecutor commandExecutor = processEngineConfiguration.getCommandExecutor(); - commandExecutor.execute(new CustomCompleteDummyTaskCmd(dto.getProcessInstanceId(), dto.getTaskId(), - Objects.isNull(dto.getRobotNode()) ? null : dto.getRobotNode().getFlowNodeName(), - Objects.isNull(dto.getRobotNode()) ? null : dto.getRobotNode().getOperationDesc(), - dto.getAttachmentList(), - extAxHiTaskInstService, - extAxProcessLogService)); + commandExecutor.execute(new CustomCompleteDummyTaskCmd(dto, extAxHiTaskInstService, extAxProcessLogService)); } @Override