diff --git a/pom.xml b/pom.xml index 237b29de3..2fb4a3fbe 100644 --- a/pom.xml +++ b/pom.xml @@ -56,6 +56,11 @@ workflow-engine-api ${project.version} + + cn.axzo.workflow + workflow-engine-axzo-ext + ${project.version} + ${project.groupId} workflow-engine-common @@ -157,11 +162,12 @@ workflow-engine-api + workflow-engine-axzo-ext workflow-engine-common workflow-engine-core + workflow-engine-elasticsearch workflow-engine-server workflow-engine-support workflow-engine-spring-boot-starter - workflow-engine-elasticsearch diff --git a/workflow-engine-axzo-ext/pom.xml b/workflow-engine-axzo-ext/pom.xml new file mode 100644 index 000000000..e2d8a6d52 --- /dev/null +++ b/workflow-engine-axzo-ext/pom.xml @@ -0,0 +1,19 @@ + + 4.0.0 + + workflow-engine + cn.axzo.workflow + ${revision} + + workflow-engine-axzo-ext + jar + Workflow Engine Axzo Extension + + + + cn.axzo.workflow + workflow-engine-common + + + diff --git a/workflow-engine-elasticsearch/pom.xml b/workflow-engine-elasticsearch/pom.xml index 1dc191c26..7a68768d0 100644 --- a/workflow-engine-elasticsearch/pom.xml +++ b/workflow-engine-elasticsearch/pom.xml @@ -7,6 +7,7 @@ ${revision} workflow-engine-elasticsearch + jar Workflow Engine ElasticSearch @@ -17,6 +18,10 @@ + + cn.axzo.workflow + workflow-engine-axzo-ext + org.elasticsearch.client elasticsearch-rest-high-level-client 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 bb5f7f8c1..b88033c88 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 @@ -5,6 +5,9 @@ import cn.axzo.workflow.common.util.ThreadUtil; 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; @@ -16,7 +19,6 @@ 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.annotation.Manageable; 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; 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 b076bd213..ec7d6427f 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 @@ -28,6 +28,8 @@ import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestParam; import javax.validation.constraints.NotBlank; 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; import cn.axzo.workflow.common.model.request.bpmn.process.BpmnProcessInstanceAbortDTO; @@ -240,6 +242,26 @@ public interface WorkflowManageService { @InvokeMode(SYNC) List getModelTenantIds(); + /** + * 该功能应该利用引擎的 TimerBoundaryEvent 来实现,但为了简便,先利用引擎的任务调度来实现 + * + * @return + */ + @PostMapping("/api/process/activity/timeout/trigger") + @Manageable + @Operation(summary = "设置指定业务节点定时继续往下执行") + Boolean setTimeoutTrigger(@Validated @RequestBody BpmnActivityTimeoutTriggerDTO dto); + + /** + * 为指定业务节点设置定时回调 + * + * @return + */ + @Manageable + @PostMapping("/api/process/activity/timeout/callback") + @Operation(summary = "设置指定业务节点定时回调") + Boolean setTimeoutCallback(@Validated @RequestBody BpmnActivityTimeoutCallbackDTO dto); + /** * 创建审批流程并带上表单 *