diff --git a/workflow-engine-api/src/main/java/cn/axzo/workflow/client/feign/bpmn/ProcessTaskApi.java b/workflow-engine-api/src/main/java/cn/axzo/workflow/client/feign/bpmn/ProcessTaskApi.java index e311d8c1a..2a7624137 100644 --- a/workflow-engine-api/src/main/java/cn/axzo/workflow/client/feign/bpmn/ProcessTaskApi.java +++ b/workflow-engine-api/src/main/java/cn/axzo/workflow/client/feign/bpmn/ProcessTaskApi.java @@ -243,7 +243,6 @@ public interface ProcessTaskApi { */ @Operation(summary = "获取实例正在审核的人列表") @GetMapping("/api/process/task/active/list") - @Manageable @InvokeMode(SYNC) CommonResponse> getActiveTasksByProcessInstanceId(@NotBlank(message = "流程实例 ID 不能为空") @RequestParam String processInstanceId, @NotBlank(message = "租户不能为空") @RequestParam String tenantId); diff --git a/workflow-engine-server/src/main/java/cn/axzo/workflow/server/xxljob/CompletedProcessInstanceSyncEsJobHandler.java b/workflow-engine-server/src/main/java/cn/axzo/workflow/server/xxljob/CompletedProcessInstanceSyncEsJobHandler.java index f83b3625b..7efaf6c3d 100644 --- a/workflow-engine-server/src/main/java/cn/axzo/workflow/server/xxljob/CompletedProcessInstanceSyncEsJobHandler.java +++ b/workflow-engine-server/src/main/java/cn/axzo/workflow/server/xxljob/CompletedProcessInstanceSyncEsJobHandler.java @@ -101,7 +101,8 @@ public class CompletedProcessInstanceSyncEsJobHandler extends IJobHandler { */ private DataSyncSummaryDTO doSync(HistoricProcessInstanceSearchForEsDTO search) { Long totalProcessInstanceCount = bpmnProcessInstanceForEsService.queryHistoricProcessInstanceTotalCount(search); - log.info("查询到待同步数据量: {} 条", totalProcessInstanceCount); + log.info("查询到待同步实例维度数据量: {} 条", totalProcessInstanceCount); + XxlJobLogger.log("查询到待同步实例维度数据量: {} 条", totalProcessInstanceCount); AtomicLong totalProcessTaskCount = new AtomicLong(0); IntStream.iterate(0, i -> i + search.getOverPageSize()).limit((totalProcessInstanceCount + search.getOverPageSize() - 1) / search.getOverPageSize()) .forEach(skipRows -> { diff --git a/workflow-engine-server/src/main/java/cn/axzo/workflow/server/xxljob/EsCreateIndexJobHandler.java b/workflow-engine-server/src/main/java/cn/axzo/workflow/server/xxljob/EsIndexOperationJobHandler.java similarity index 96% rename from workflow-engine-server/src/main/java/cn/axzo/workflow/server/xxljob/EsCreateIndexJobHandler.java rename to workflow-engine-server/src/main/java/cn/axzo/workflow/server/xxljob/EsIndexOperationJobHandler.java index 930dc318e..f25ebd5f1 100644 --- a/workflow-engine-server/src/main/java/cn/axzo/workflow/server/xxljob/EsCreateIndexJobHandler.java +++ b/workflow-engine-server/src/main/java/cn/axzo/workflow/server/xxljob/EsIndexOperationJobHandler.java @@ -19,7 +19,7 @@ import org.springframework.util.StringUtils; @Component @RequiredArgsConstructor @Slf4j -public class EsCreateIndexJobHandler extends IJobHandler { +public class EsIndexOperationJobHandler extends IJobHandler { private final EsProcessInstanceService esProcessInstanceService; @Override diff --git a/workflow-engine-server/src/main/java/cn/axzo/workflow/server/xxljob/OtherProcessInstanceSyncEsJobHandler.java b/workflow-engine-server/src/main/java/cn/axzo/workflow/server/xxljob/OtherProcessInstanceSyncEsJobHandler.java index 19d2279db..cd34c056d 100644 --- a/workflow-engine-server/src/main/java/cn/axzo/workflow/server/xxljob/OtherProcessInstanceSyncEsJobHandler.java +++ b/workflow-engine-server/src/main/java/cn/axzo/workflow/server/xxljob/OtherProcessInstanceSyncEsJobHandler.java @@ -75,8 +75,8 @@ public class OtherProcessInstanceSyncEsJobHandler extends IJobHandler { */ private DataSyncSummaryDTO doSync(Date endTime, String pageSizeStr) { Long totalCount = bpmnProcessInstanceForEsService.queryHistoricProcessInstanceByUnfinishedAndAlterEndTimeTotalCount(endTime); - log.info("查询到待同步数据量: {} 条", totalCount); - XxlJobLogger.log("查询到待同步数据量: {} 条", totalCount); + log.info("查询到待同步实例维度数据量: {} 条", totalCount); + XxlJobLogger.log("查询到待同步实例维度数据量: {} 条", totalCount); AtomicInteger pageSize = new AtomicInteger(100); if (StringUtils.hasText(pageSizeStr)) { try { diff --git a/workflow-engine-spring-boot-starter/src/main/java/cn/axzo/workflow/starter/api/WorkflowCoreService.java b/workflow-engine-spring-boot-starter/src/main/java/cn/axzo/workflow/starter/api/WorkflowCoreService.java index b88033c88..f78823051 100644 --- a/workflow-engine-spring-boot-starter/src/main/java/cn/axzo/workflow/starter/api/WorkflowCoreService.java +++ b/workflow-engine-spring-boot-starter/src/main/java/cn/axzo/workflow/starter/api/WorkflowCoreService.java @@ -6,43 +6,10 @@ import static cn.axzo.workflow.common.enums.RpcInvokeModeEnum.ASYNC; import static cn.axzo.workflow.common.enums.RpcInvokeModeEnum.SYNC; import cn.axzo.workflow.client.annotation.WorkflowEngineFeignClient; import cn.axzo.workflow.common.annotation.Manageable; -import cn.axzo.workflow.common.model.request.bpmn.activity.BpmnActivityTimeoutCallbackDTO; -import cn.axzo.workflow.common.model.request.bpmn.activity.BpmnActivityTimeoutTriggerDTO; -import cn.axzo.workflow.common.model.request.bpmn.task.BpmnActivitySetAssigneeDTO; -import cn.axzo.workflow.common.model.request.bpmn.task.BpmnActivityTriggerDTO; import cn.azxo.framework.common.model.CommonResponse; -import io.swagger.v3.oas.annotations.Operation; -import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestParam; -import javax.validation.constraints.NotBlank; import cn.axzo.workflow.common.annotation.InvokeMode; -import cn.axzo.workflow.common.model.request.bpmn.process.BpmnProcessInstanceAbortDTO; -import cn.axzo.workflow.common.model.request.bpmn.process.BpmnProcessInstanceAdminPageReqVO; -import cn.axzo.workflow.common.model.request.bpmn.process.BpmnProcessInstanceCancelDTO; -import cn.axzo.workflow.common.model.request.bpmn.process.BpmnProcessInstanceCarbonCopyDTO; -import cn.axzo.workflow.common.model.request.bpmn.process.BpmnProcessInstanceCheckApproverDTO; -import cn.axzo.workflow.common.model.request.bpmn.process.BpmnProcessInstanceCreateDTO; -import cn.axzo.workflow.common.model.request.bpmn.process.BpmnProcessInstanceCreateWithFormDTO; -import cn.axzo.workflow.common.model.request.bpmn.process.BpmnProcessInstanceLogQueryDTO; -import cn.axzo.workflow.common.model.request.bpmn.process.BpmnProcessInstanceMyPageReqVO; -import cn.axzo.workflow.common.model.request.bpmn.process.BpmnProcessInstanceQueryDTO; -import cn.axzo.workflow.common.model.response.BpmPageResult; -import cn.axzo.workflow.common.model.response.bpmn.BatchOperationResultVO; -import cn.axzo.workflow.common.model.response.bpmn.process.BpmnProcessInstanceAdminPageItemVO; -import cn.axzo.workflow.common.model.response.bpmn.process.BpmnProcessInstanceLogVO; -import cn.axzo.workflow.common.model.response.bpmn.process.BpmnProcessInstancePageItemVO; -import cn.axzo.workflow.common.model.response.bpmn.process.BpmnProcessInstanceVO; -import cn.axzo.workflow.common.model.response.bpmn.process.ProcessNodeDetailVO; -import com.fasterxml.jackson.databind.node.ObjectNode; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.PutMapping; -import javax.annotation.Nullable; -import javax.validation.constraints.NotNull; -import java.util.List; -import java.util.Map; import cn.axzo.workflow.common.model.request.bpmn.task.BpmnOptionalNodeDTO; import cn.axzo.workflow.common.model.request.bpmn.task.BpmnRobotTaskCompleteDTO; import cn.axzo.workflow.common.model.request.bpmn.task.BpmnRobotTaskCreateDTO; @@ -54,12 +21,45 @@ import cn.axzo.workflow.common.model.request.bpmn.task.BpmnTaskCountersignDTO; import cn.axzo.workflow.common.model.request.bpmn.task.BpmnTaskPageSearchDTO; import cn.axzo.workflow.common.model.request.bpmn.task.BpmnTaskRemindDTO; import cn.axzo.workflow.common.model.request.bpmn.task.BpmnTaskTransferDTO; +import cn.axzo.workflow.common.model.response.BpmPageResult; +import cn.axzo.workflow.common.model.response.bpmn.BatchOperationResultVO; import cn.axzo.workflow.common.model.response.bpmn.task.BpmnHistoricTaskInstanceGroupVO; import cn.axzo.workflow.common.model.response.bpmn.task.BpmnHistoricTaskInstanceVO; import cn.axzo.workflow.common.model.response.bpmn.task.BpmnTaskDonePageItemVO; import cn.axzo.workflow.common.model.response.bpmn.task.BpmnTaskInstanceVO; import cn.axzo.workflow.common.model.response.bpmn.task.BpmnTaskTodoPageItemVO; +import io.swagger.v3.oas.annotations.Operation; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import javax.annotation.Nullable; +import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotEmpty; +import java.util.List; +import java.util.Map; +import cn.axzo.workflow.common.model.request.bpmn.process.BpmnProcessInstanceAbortDTO; +import cn.axzo.workflow.common.model.request.bpmn.process.BpmnProcessInstanceAdminPageReqVO; +import cn.axzo.workflow.common.model.request.bpmn.process.BpmnProcessInstanceCancelDTO; +import cn.axzo.workflow.common.model.request.bpmn.process.BpmnProcessInstanceCarbonCopyDTO; +import cn.axzo.workflow.common.model.request.bpmn.process.BpmnProcessInstanceCheckApproverDTO; +import cn.axzo.workflow.common.model.request.bpmn.process.BpmnProcessInstanceCreateDTO; +import cn.axzo.workflow.common.model.request.bpmn.process.BpmnProcessInstanceCreateWithFormDTO; +import cn.axzo.workflow.common.model.request.bpmn.process.BpmnProcessInstanceLogQueryDTO; +import cn.axzo.workflow.common.model.request.bpmn.process.BpmnProcessInstanceMyPageReqVO; +import cn.axzo.workflow.common.model.request.bpmn.process.BpmnProcessInstanceQueryDTO; +import cn.axzo.workflow.common.model.response.bpmn.process.BpmnProcessInstanceAdminPageItemVO; +import cn.axzo.workflow.common.model.response.bpmn.process.BpmnProcessInstanceLogVO; +import cn.axzo.workflow.common.model.response.bpmn.process.BpmnProcessInstancePageItemVO; +import cn.axzo.workflow.common.model.response.bpmn.process.BpmnProcessInstanceVO; +import cn.axzo.workflow.common.model.response.bpmn.process.ProcessNodeDetailVO; +import com.fasterxml.jackson.databind.node.ObjectNode; +import org.springframework.web.bind.annotation.DeleteMapping; +import org.springframework.web.bind.annotation.PutMapping; +import javax.validation.constraints.NotNull; +import cn.axzo.workflow.common.model.request.bpmn.activity.BpmnActivityTimeoutCallbackDTO; +import cn.axzo.workflow.common.model.request.bpmn.activity.BpmnActivityTimeoutTriggerDTO; +import cn.axzo.workflow.common.model.request.bpmn.task.BpmnActivitySetAssigneeDTO; +import cn.axzo.workflow.common.model.request.bpmn.task.BpmnActivityTriggerDTO; /** * Workflow Engine Starter Core Service @@ -71,135 +71,6 @@ import javax.validation.constraints.NotEmpty; @org.springframework.cloud.openfeign.FeignClient(name = "workflow-engine-starter-core", url = "${axzo.service.workflow-engine:http://workflow-engine:8080}", configuration = WorkflowEngineStarterFeignConfiguration.class) public interface WorkflowCoreService { - /** - * 业务节点唤醒, 该节点废弃,请换成 {@link ProcessActivityApi#trigger(cn.axzo.workflow.common.model.request.bpmn.task.BpmnActivityTriggerDTO)} 接口 - *

- * 当模型中使用了“业务节点”,且设置了“不设置审批人”模式,则当业务监听到 PROCESS_ACTIVITY_START 事件时,可通过该接口推动流程继续运行 - */ - @Deprecated - @GetMapping("/api/process/activity/trigger") - Boolean trigger(@NotBlank(message = "触发 ID 不能为空") @RequestParam String triggerId); - - /** - * 业务节点唤醒 - * - * @param dto - * @return - */ - @PostMapping("/api/process/activity/trigger") - Boolean trigger(@Validated @RequestBody BpmnActivityTriggerDTO dto); - - /** - * 业务节点设置审批人, 不支持重复设置 - *

- * 当模型中使用了“业务节点”,且设置了“业务指定审批人”模式,则当业务监听到 PROCESS_ACTIVITY_WAIT_ASSIGNEE 事件时,可通过该接口设置动态设置审批人 - *

- * 注意:如果调用接口时,传入的审批人集合为空,流程引擎将对该审批流程实例自动中止。 - * - * @param dto - * @return - */ - @PostMapping("/api/process/activity/assignee/set") - @Operation(summary = "业务节点设置审批人,不支持重复调用设置审批人,需一次性传入所有审批人") - Boolean setAssignee(@Validated @RequestBody BpmnActivitySetAssigneeDTO dto); - - /** - * 创建审批流程 - * - *

-     *   MQ 触发规则:
-     *     1. 当前流程实例会依次触发 process-instance-created 和 process-instance-started 事件
-     *     2. 第一个审批任务会依次触发 process-task-assigned 和 process-task-created 事件
-     * 
- * - * @param dto {@link BpmnProcessInstanceCreateDTO} - */ - @Operation(summary = "创建审批流程, MQ 触发规则:1. 当前流程实例会依次触发 process-instance-created 和 process-instance-started 事件,2. 第一个审批任务会依次触发 process-task-assigned 和 process-task-created 事件") - @PostMapping("/api/process/instance/create") - @InvokeMode(SYNC) - String createProcessInstance(@Validated @RequestBody BpmnProcessInstanceCreateDTO dto); - - /** - * 发起人主动撤回审核 - * - *
-     *   MQ 触发规则:
-     *     1. 当前流程实例中现存的任务会依次触发 process-task-deleted 事件
-     *     2. 当前流程实例会触发 process-instance-cancelled 事件
-     * 
- * - * @param dto {@link BpmnProcessInstanceCancelDTO} - * @return - */ - @Operation(summary = "发起人主动撤回审核,MQ 触发规则:1. 当前流程实例中现存的任务会依次触发 process-task-deleted 事件,2. 当前流程实例会触发 process-instance-cancelled 事件") - @DeleteMapping("/api/process/instance/cancel") - Boolean cancelProcessInstance(@Validated @RequestBody BpmnProcessInstanceCancelDTO dto); - - /** - * 中止流程实例 - * - * @param dto - * @return - */ - @Operation(summary = "中止流程实例") - @DeleteMapping("/api/process/instance/abort") - Boolean abortProcessInstance(@Validated @RequestBody BpmnProcessInstanceAbortDTO dto); - - /** - * 批量中止流程实例 - * - * @param dtos - * @return - */ - @Operation(summary = "批量中止流程实例") - @DeleteMapping("/api/process/instance/batch/abort") - BatchOperationResultVO batchAbortProcessInstance(@Validated @RequestBody List dtos); - - /** - * 抄送流程实例(未实现) - * - * @param dto - * @return - */ - @Operation(summary = "抄送流程实例") - @PostMapping("/api/process/instance/carbon-copy") - @Deprecated - Boolean carbonCopyProcessInstance(@Validated @RequestBody BpmnProcessInstanceCarbonCopyDTO dto); - - /** - * 获得流程实例 - * - * @param dto {@link BpmnProcessInstanceQueryDTO} 可根据 Id,BusinessKey进行查询 - * @return 流程实例, 租户Id不必传 - */ - @Operation(summary = "获得流程实例") - @GetMapping("/api/process/instance/get") - @InvokeMode(SYNC) - BpmnProcessInstanceVO getProcessInstanceVO(@Validated @RequestBody BpmnProcessInstanceQueryDTO dto); - - /** - * 获取指定流程实例的流程变量 - * - * @param processInstanceId - * @param tenantId - * @return - */ - @Operation(summary = "获取指定流程实例的流程变量") - @GetMapping("/api/process/instance/cooperation-org") - @InvokeMode(SYNC) - Map getProcessVariables(@NotBlank(message = "流程实例 ID 不能为空") @RequestParam String processInstanceId, @Nullable @RequestParam(required = false) String tenantId); - - /** - * 获取指定流程的日志 - * - * @param dto - * @return - */ - @Operation(summary = "获取指定流程的日志") - @PostMapping("/api/process/instance/logs") - @InvokeMode(SYNC) - BpmnProcessInstanceLogVO getProcessInstanceLogs(@Validated @RequestBody BpmnProcessInstanceLogQueryDTO dto); - /** * 同意 * @@ -325,6 +196,143 @@ public interface WorkflowCoreService { @PostMapping("/api/process/task/robot/complete") Boolean completeRobotTask(@Validated @RequestBody BpmnRobotTaskCompleteDTO dto); + /** + * 获取实例正在审核的人列表 + */ + @Operation(summary = "获取实例正在审核的人列表") + @GetMapping("/api/process/task/active/list") + @InvokeMode(SYNC) + List getActiveTasksByProcessInstanceId(@NotBlank(message = "流程实例 ID 不能为空") @RequestParam String processInstanceId, @NotBlank(message = "租户不能为空") @RequestParam String tenantId); + + /** + * 创建审批流程 + * + *
+     *   MQ 触发规则:
+     *     1. 当前流程实例会依次触发 process-instance-created 和 process-instance-started 事件
+     *     2. 第一个审批任务会依次触发 process-task-assigned 和 process-task-created 事件
+     * 
+ * + * @param dto {@link BpmnProcessInstanceCreateDTO} + */ + @Operation(summary = "创建审批流程, MQ 触发规则:1. 当前流程实例会依次触发 process-instance-created 和 process-instance-started 事件,2. 第一个审批任务会依次触发 process-task-assigned 和 process-task-created 事件") + @PostMapping("/api/process/instance/create") + @InvokeMode(SYNC) + String createProcessInstance(@Validated @RequestBody BpmnProcessInstanceCreateDTO dto); + + /** + * 发起人主动撤回审核 + * + *
+     *   MQ 触发规则:
+     *     1. 当前流程实例中现存的任务会依次触发 process-task-deleted 事件
+     *     2. 当前流程实例会触发 process-instance-cancelled 事件
+     * 
+ * + * @param dto {@link BpmnProcessInstanceCancelDTO} + * @return + */ + @Operation(summary = "发起人主动撤回审核,MQ 触发规则:1. 当前流程实例中现存的任务会依次触发 process-task-deleted 事件,2. 当前流程实例会触发 process-instance-cancelled 事件") + @DeleteMapping("/api/process/instance/cancel") + Boolean cancelProcessInstance(@Validated @RequestBody BpmnProcessInstanceCancelDTO dto); + + /** + * 中止流程实例 + * + * @param dto + * @return + */ + @Operation(summary = "中止流程实例") + @DeleteMapping("/api/process/instance/abort") + Boolean abortProcessInstance(@Validated @RequestBody BpmnProcessInstanceAbortDTO dto); + + /** + * 批量中止流程实例 + * + * @param dtos + * @return + */ + @Operation(summary = "批量中止流程实例") + @DeleteMapping("/api/process/instance/batch/abort") + BatchOperationResultVO batchAbortProcessInstance(@Validated @RequestBody List dtos); + + /** + * 抄送流程实例(未实现) + * + * @param dto + * @return + */ + @Operation(summary = "抄送流程实例") + @PostMapping("/api/process/instance/carbon-copy") + @Deprecated + Boolean carbonCopyProcessInstance(@Validated @RequestBody BpmnProcessInstanceCarbonCopyDTO dto); + + /** + * 获得流程实例 + * + * @param dto {@link BpmnProcessInstanceQueryDTO} 可根据 Id,BusinessKey进行查询 + * @return 流程实例, 租户Id不必传 + */ + @Operation(summary = "获得流程实例") + @GetMapping("/api/process/instance/get") + @InvokeMode(SYNC) + BpmnProcessInstanceVO getProcessInstanceVO(@Validated @RequestBody BpmnProcessInstanceQueryDTO dto); + + /** + * 获取指定流程实例的流程变量 + * + * @param processInstanceId + * @param tenantId + * @return + */ + @Operation(summary = "获取指定流程实例的流程变量") + @GetMapping("/api/process/instance/cooperation-org") + @InvokeMode(SYNC) + Map getProcessVariables(@NotBlank(message = "流程实例 ID 不能为空") @RequestParam String processInstanceId, @Nullable @RequestParam(required = false) String tenantId); + + /** + * 获取指定流程的日志 + * + * @param dto + * @return + */ + @Operation(summary = "获取指定流程的日志") + @PostMapping("/api/process/instance/logs") + @InvokeMode(SYNC) + BpmnProcessInstanceLogVO getProcessInstanceLogs(@Validated @RequestBody BpmnProcessInstanceLogQueryDTO dto); + + /** + * 业务节点唤醒, 该节点废弃,请换成 {@link ProcessActivityApi#trigger(cn.axzo.workflow.common.model.request.bpmn.task.BpmnActivityTriggerDTO)} 接口 + *

+ * 当模型中使用了“业务节点”,且设置了“不设置审批人”模式,则当业务监听到 PROCESS_ACTIVITY_START 事件时,可通过该接口推动流程继续运行 + */ + @Deprecated + @GetMapping("/api/process/activity/trigger") + Boolean trigger(@NotBlank(message = "触发 ID 不能为空") @RequestParam String triggerId); + + /** + * 业务节点唤醒 + * + * @param dto + * @return + */ + @PostMapping("/api/process/activity/trigger") + Boolean trigger(@Validated @RequestBody BpmnActivityTriggerDTO dto); + + /** + * 业务节点设置审批人, 不支持重复设置 + *

+ * 当模型中使用了“业务节点”,且设置了“业务指定审批人”模式,则当业务监听到 PROCESS_ACTIVITY_WAIT_ASSIGNEE 事件时,可通过该接口设置动态设置审批人 + *

+ * 注意:如果调用接口时,传入的审批人集合为空,流程引擎将对该审批流程实例自动中止。 + * + * @param dto + * @return + */ + @PostMapping("/api/process/activity/assignee/set") + @Operation(summary = "业务节点设置审批人,不支持重复调用设置审批人,需一次性传入所有审批人") + Boolean setAssignee(@Validated @RequestBody BpmnActivitySetAssigneeDTO dto); + /** * 强制使用‘异步’模式调用该方法,请在调用真实方法前调用该方法 *

diff --git a/workflow-engine-spring-boot-starter/src/main/java/cn/axzo/workflow/starter/api/WorkflowManageService.java b/workflow-engine-spring-boot-starter/src/main/java/cn/axzo/workflow/starter/api/WorkflowManageService.java
index a6962a985..58f947876 100644
--- a/workflow-engine-spring-boot-starter/src/main/java/cn/axzo/workflow/starter/api/WorkflowManageService.java
+++ b/workflow-engine-spring-boot-starter/src/main/java/cn/axzo/workflow/starter/api/WorkflowManageService.java
@@ -46,6 +46,8 @@ import javax.validation.constraints.NotEmpty;
 import java.util.List;
 import java.util.Map;
 import cn.axzo.workflow.common.model.request.bpmn.BpmnButtonMetaInfo;
+import cn.axzo.workflow.common.model.request.es.InstanceSearchReqDTO;
+import cn.axzo.workflow.common.model.response.es.ProcessInstanceDocumentVO;
 import cn.axzo.workflow.common.model.request.category.CategoryConfigCreateDTO;
 import cn.axzo.workflow.common.model.request.category.CategoryConfigSearchDTO;
 import cn.axzo.workflow.common.model.request.category.CategoryCreateDTO;
@@ -275,15 +277,6 @@ public interface WorkflowManageService {
     @InvokeMode(SYNC)
     List getTaskListGroupByProcessInstanceId(@NotBlank(message = "流程实例 ID 不能为空") @RequestParam String processInstanceId, @Nullable @RequestParam(required = false) String tenantId);
 
-    /**
-     * 获取实例正在审核的人列表
-     */
-    @Operation(summary = "获取实例正在审核的人列表")
-    @GetMapping("/api/process/task/active/list")
-    @Manageable
-    @InvokeMode(SYNC)
-    List getActiveTasksByProcessInstanceId(@NotBlank(message = "流程实例 ID 不能为空") @RequestParam String processInstanceId, @NotBlank(message = "租户不能为空") @RequestParam String tenantId);
-
     /**
      * 根据实例 ID 和自然人 ID 查询对应待处理的任务 ID
      *
@@ -315,6 +308,16 @@ public interface WorkflowManageService {
     @InvokeMode(SYNC)
     List getDefaultButtons();
 
+    /**
+     * 从 ES 中搜索符合条件的实例纬度数据
+     *
+     * @param dto
+     * @return
+     */
+    @PostMapping("/api/es/instance/search")
+    @InvokeMode(SYNC)
+    BpmPageResult searchInstanceInEs(@Validated @RequestBody InstanceSearchReqDTO dto);
+
     /**
      * 获取指定业务分类
      *
@@ -785,7 +788,7 @@ public interface WorkflowManageService {
      */
     @DeleteMapping("/api/process/admin/batch/delete")
     @InvokeMode(SYNC)
-    Void batchDeleteProcessAdmin(@RequestParam List ids);
+    Void batchDeleteProcessAdmin(@RequestBody List ids);
 
     /**
      * 强制使用‘同步’模式调用该方法,请在调用真实方法前调用该方法