feat(REQ-4418) - 为所有 API 添加同异步调用模式

This commit is contained in:
wangli 2025-08-21 11:34:23 +08:00
parent bfa397d2c5
commit 83ef81417e
3 changed files with 25 additions and 4 deletions

View File

@ -17,6 +17,7 @@ import org.springframework.web.bind.annotation.RequestParam;
import javax.validation.constraints.NotBlank;
import static cn.axzo.workflow.common.enums.RpcInvokeModeEnum.ASYNC;
import static cn.axzo.workflow.common.enums.RpcInvokeModeEnum.SYNC;
/**
@ -46,6 +47,7 @@ public interface ProcessActivityApi {
* @return
*/
@PostMapping("/api/process/activity/trigger")
@InvokeMode(SYNC)
CommonResponse<Boolean> trigger(@Validated @RequestBody BpmnActivityTriggerDTO dto);
@ -61,6 +63,7 @@ public interface ProcessActivityApi {
*/
@PostMapping("/api/process/activity/assignee/set")
@Operation(summary = "业务节点设置审批人,不支持重复调用设置审批人,需一次性传入所有审批人")
@InvokeMode(SYNC)
CommonResponse<Boolean> setAssignee(@Validated @RequestBody BpmnActivitySetAssigneeDTO dto);
/**
@ -69,8 +72,8 @@ public interface ProcessActivityApi {
* @return
*/
@PostMapping("/api/process/activity/timeout/trigger")
@Manageable
@Operation(summary = "设置指定业务节点定时继续往下执行")
@InvokeMode(SYNC)
CommonResponse<Boolean> setTimeoutTrigger(@Validated @RequestBody BpmnActivityTimeoutTriggerDTO dto);
/**
@ -78,8 +81,8 @@ public interface ProcessActivityApi {
*
* @return
*/
@Manageable
@PostMapping("/api/process/activity/timeout/callback")
@Operation(summary = "设置指定业务节点定时回调")
@InvokeMode(SYNC)
CommonResponse<Boolean> setTimeoutCallback(@Validated @RequestBody BpmnActivityTimeoutCallbackDTO dto);
}

View File

@ -50,6 +50,7 @@ import javax.validation.constraints.NotNull;
import java.util.List;
import java.util.Map;
import static cn.axzo.workflow.common.enums.RpcInvokeModeEnum.ASYNC;
import static cn.axzo.workflow.common.enums.RpcInvokeModeEnum.SYNC;
/**
@ -103,6 +104,7 @@ public interface ProcessInstanceApi {
*/
@Operation(summary = "发起人主动撤回审核,MQ 触发规则:1. 当前流程实例中现存的任务会依次触发 process-task-deleted 事件,2. 当前流程实例会触发 process-instance-cancelled 事件")
@DeleteMapping("/api/process/instance/cancel")
@InvokeMode(ASYNC)
CommonResponse<Boolean> cancelProcessInstance(@Validated @RequestBody BpmnProcessInstanceCancelDTO dto);
@DeleteMapping("/api/process/instance/super/cancel")
@ -117,6 +119,7 @@ public interface ProcessInstanceApi {
*/
@Operation(summary = "中止流程实例")
@DeleteMapping("/api/process/instance/abort")
@InvokeMode(ASYNC)
CommonResponse<Boolean> abortProcessInstance(@Validated @RequestBody BpmnProcessInstanceAbortDTO dto);
/**
@ -127,6 +130,7 @@ public interface ProcessInstanceApi {
*/
@Operation(summary = "批量中止流程实例")
@DeleteMapping("/api/process/instance/batch/abort")
@InvokeMode(ASYNC)
CommonResponse<BatchOperationResultVO> batchAbortProcessInstance(@Validated @RequestBody List<BpmnProcessInstanceAbortDTO> dtos);
/**
@ -257,7 +261,6 @@ public interface ProcessInstanceApi {
*/
@Operation(summary = "校验指定流程实例下,是否存在指定的审批人")
@PostMapping("/api/process/instance/check/approver")
@Manageable
@InvokeMode(SYNC)
CommonResponse<Boolean> checkInstanceApprover(@Validated @RequestBody BpmnProcessInstanceCheckApproverDTO dto);

View File

@ -38,6 +38,7 @@ import javax.validation.constraints.NotEmpty;
import java.util.List;
import java.util.Map;
import static cn.axzo.workflow.common.enums.RpcInvokeModeEnum.ASYNC;
import static cn.axzo.workflow.common.enums.RpcInvokeModeEnum.SYNC;
@ -64,6 +65,7 @@ public interface ProcessTaskApi {
*/
@Operation(summary = "同意MQ 触发规则:1. 当前审批任务会依次触发 process-task-completed 和 process-task-deleted 事件(如果有下一级审批,则会触发第 2.1 点中的事件,如果当前审核任务最后一级审批,则会触发第 2.2 点中的事件)2.1. 下一级审批任务会依次触发 process-task-assigned 和 process-task-created 事件2.2. 流程实例正常结束会触发 process-instance-completed 事件")
@PostMapping("/api/process/task/approve")
@InvokeMode(ASYNC)
CommonResponse<Boolean> approveTask(@Validated @RequestBody BpmnTaskAuditDTO dto);
/**
@ -74,6 +76,7 @@ public interface ProcessTaskApi {
*/
@Operation(summary = "同意时并提交表单")
@PostMapping("/api/process/task/form/approve")
@InvokeMode(ASYNC)
CommonResponse<Boolean> approveTaskWithForm(@Validated @RequestBody BpmnTaskAuditWithFormDTO dto);
/**
@ -84,6 +87,7 @@ public interface ProcessTaskApi {
*/
@Operation(summary = "批量同意")
@PostMapping("/api/process/task/batch/approve")
@InvokeMode(ASYNC)
CommonResponse<BatchOperationResultVO> batchApproveTask(@Validated @RequestBody List<BpmnTaskAuditDTO> dtos);
/**
@ -94,6 +98,7 @@ public interface ProcessTaskApi {
*/
@Operation(summary = "获取当前节点可回退节点选项列表")
@GetMapping("/api/process/task/back/optional/nodes")
@InvokeMode(SYNC)
CommonResponse<List<BpmnOptionalNodeDTO>> getBackOptionalNodes(@RequestParam @NotBlank(message = "任务id不能为空") String taskId);
/**
@ -104,6 +109,7 @@ public interface ProcessTaskApi {
*/
@Operation(summary = "回退")
@PostMapping("/api/process/task/back")
@InvokeMode(ASYNC)
CommonResponse<Boolean> backTask(@Validated @RequestBody BpmnTaskBackAuditDTO dto);
/**
@ -114,6 +120,7 @@ public interface ProcessTaskApi {
*/
@Operation(summary = "系统操作回退任务到指定节点")
@PostMapping("/api/process/task/system/back")
@Manageable
CommonResponse<Boolean> systemBackTask(@Validated @RequestBody BpmnNodeBackSystemOperateDTO dto);
/**
@ -127,6 +134,7 @@ public interface ProcessTaskApi {
*/
@Operation(summary = "驳回MQ 触发规则1. 当前审批任务会触发 process-task-deleted 事件, 2. 当前流程实例会触发 process-instance-rejected 事件")
@PostMapping("/api/process/task/reject")
@InvokeMode(ASYNC)
CommonResponse<Boolean> rejectTask(@Validated @RequestBody BpmnTaskAuditDTO dto);
/**
@ -136,6 +144,7 @@ public interface ProcessTaskApi {
* @return
*/
@PostMapping("/api/process/task/batch/reject")
@InvokeMode(ASYNC)
CommonResponse<BatchOperationResultVO> batchRejectTask(@Validated @RequestBody List<BpmnTaskAuditDTO> dtos);
/**
@ -146,6 +155,7 @@ public interface ProcessTaskApi {
*/
@Operation(summary = "直接修改审批任务的审批人")
@PostMapping("/api/process/task/transfer")
@InvokeMode(ASYNC)
CommonResponse<Boolean> transferTask(@Validated @RequestBody BpmnTaskTransferDTO dto);
/**
@ -156,6 +166,7 @@ public interface ProcessTaskApi {
*/
@Operation(summary = "批量修改审批任务的审批人")
@PostMapping("/api/process/task/batch/transfer")
@InvokeMode(ASYNC)
CommonResponse<BatchOperationResultVO> batchTransferTask(@Validated @RequestBody List<BpmnTaskTransferDTO> dtos);
/**
@ -166,6 +177,7 @@ public interface ProcessTaskApi {
*/
@Operation(summary = "审批流程评论")
@PostMapping("/api/process/task/comment")
@InvokeMode(ASYNC)
CommonResponse<Boolean> commentTask(@Validated @RequestBody BpmnTaskCommentDTO dto);
/**
@ -176,6 +188,7 @@ public interface ProcessTaskApi {
*/
@Operation(summary = "审批流程加签")
@PostMapping("/api/process/task/countersign")
@InvokeMode(ASYNC)
CommonResponse<Boolean> countersignTask(@Validated @RequestBody BpmnTaskCountersignDTO dto);
/**
@ -186,6 +199,7 @@ public interface ProcessTaskApi {
*/
@Operation(summary = "重置节点审批人(提级审批)")
@PostMapping("/api/process/task/approvers/reset")
@InvokeMode(ASYNC)
CommonResponse<Boolean> resetTaskApprovers(@Validated @RequestBody BpmnTaskResetApproversDTO dto);
/**
@ -196,7 +210,6 @@ public interface ProcessTaskApi {
*/
@Operation(summary = "审批流程催办")
@PostMapping("/api/process/task/remind")
@Manageable
@InvokeMode(SYNC)
CommonResponse<Boolean> remindTask(@Validated @RequestBody BpmnTaskRemindDTO dto);
@ -208,6 +221,7 @@ public interface ProcessTaskApi {
*/
@Operation(summary = "创建机器人节点, 暂停流程任务")
@PostMapping("/api/process/task/robot/create")
@InvokeMode(ASYNC)
CommonResponse<String> createRobotTask(@Validated @RequestBody BpmnRobotTaskCreateDTO dto);
/**
@ -218,6 +232,7 @@ public interface ProcessTaskApi {
*/
@Operation(summary = "完成机器人节点, 继续流程任务")
@PostMapping("/api/process/task/robot/complete")
@InvokeMode(ASYNC)
CommonResponse<Boolean> completeRobotTask(@Validated @RequestBody BpmnRobotTaskCompleteDTO dto);
/**