From daf563a1634d10a6e9bc7094cc427857ada69488 Mon Sep 17 00:00:00 2001 From: opensnail <598092184@qq.com> Date: Thu, 27 Jun 2024 16:20:33 +0800 Subject: [PATCH] =?UTF-8?q?feat(sj=5F1.1.0-beta2):=20=E9=80=8F=E4=BC=A0?= =?UTF-8?q?=E9=85=8D=E7=BD=AE=E7=9A=84=E5=B7=A5=E4=BD=9C=E6=B5=81=E4=B8=8A?= =?UTF-8?q?=E4=B8=8B=E6=96=87=E8=87=B3=E6=89=B9=E6=AC=A1=E4=B8=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../server/job/task/dto/WorkflowPartitionTaskDTO.java | 5 +++++ .../snailjob/server/job/task/dto/WorkflowTaskPrepareDTO.java | 5 +++++ .../job/task/support/dispatch/ScanWorkflowTaskActor.java | 2 +- .../job/task/support/dispatch/WorkflowTaskPrepareActor.java | 1 + .../task/support/generator/batch/WorkflowBatchGenerator.java | 1 + .../generator/batch/WorkflowTaskBatchGeneratorContext.java | 5 +++++ 6 files changed, 18 insertions(+), 1 deletion(-) diff --git a/snail-job-server/snail-job-server-job-task/src/main/java/com/aizuda/snailjob/server/job/task/dto/WorkflowPartitionTaskDTO.java b/snail-job-server/snail-job-server-job-task/src/main/java/com/aizuda/snailjob/server/job/task/dto/WorkflowPartitionTaskDTO.java index c9f72de7f..6839c07c9 100644 --- a/snail-job-server/snail-job-server-job-task/src/main/java/com/aizuda/snailjob/server/job/task/dto/WorkflowPartitionTaskDTO.java +++ b/snail-job-server/snail-job-server-job-task/src/main/java/com/aizuda/snailjob/server/job/task/dto/WorkflowPartitionTaskDTO.java @@ -53,4 +53,9 @@ public class WorkflowPartitionTaskDTO extends PartitionTask { */ private String flowInfo; + /** + * 工作流上下文 + */ + private String wfContext; + } diff --git a/snail-job-server/snail-job-server-job-task/src/main/java/com/aizuda/snailjob/server/job/task/dto/WorkflowTaskPrepareDTO.java b/snail-job-server/snail-job-server-job-task/src/main/java/com/aizuda/snailjob/server/job/task/dto/WorkflowTaskPrepareDTO.java index e957ac143..de9fa8eb2 100644 --- a/snail-job-server/snail-job-server-job-task/src/main/java/com/aizuda/snailjob/server/job/task/dto/WorkflowTaskPrepareDTO.java +++ b/snail-job-server/snail-job-server-job-task/src/main/java/com/aizuda/snailjob/server/job/task/dto/WorkflowTaskPrepareDTO.java @@ -73,4 +73,9 @@ public class WorkflowTaskPrepareDTO { * 仅做超时检测 */ private boolean onlyTimeoutCheck; + + /** + * 工作流上下文 + */ + private String wfContext; } diff --git a/snail-job-server/snail-job-server-job-task/src/main/java/com/aizuda/snailjob/server/job/task/support/dispatch/ScanWorkflowTaskActor.java b/snail-job-server/snail-job-server-job-task/src/main/java/com/aizuda/snailjob/server/job/task/support/dispatch/ScanWorkflowTaskActor.java index af49cbbf1..ab3973377 100644 --- a/snail-job-server/snail-job-server-job-task/src/main/java/com/aizuda/snailjob/server/job/task/support/dispatch/ScanWorkflowTaskActor.java +++ b/snail-job-server/snail-job-server-job-task/src/main/java/com/aizuda/snailjob/server/job/task/support/dispatch/ScanWorkflowTaskActor.java @@ -134,7 +134,7 @@ public class ScanWorkflowTaskActor extends AbstractActor { new LambdaQueryWrapper() .select(Workflow::getId, Workflow::getGroupName, Workflow::getNextTriggerAt, Workflow::getTriggerType, Workflow::getTriggerInterval, Workflow::getExecutorTimeout, Workflow::getNamespaceId, - Workflow::getFlowInfo, Workflow::getBlockStrategy) + Workflow::getFlowInfo, Workflow::getBlockStrategy, Workflow::getWfContext) .eq(Workflow::getWorkflowStatus, StatusEnum.YES.getStatus()) .eq(Workflow::getDeleted, StatusEnum.NO.getStatus()) .in(Workflow::getBucketIndex, scanTask.getBuckets()) diff --git a/snail-job-server/snail-job-server-job-task/src/main/java/com/aizuda/snailjob/server/job/task/support/dispatch/WorkflowTaskPrepareActor.java b/snail-job-server/snail-job-server-job-task/src/main/java/com/aizuda/snailjob/server/job/task/support/dispatch/WorkflowTaskPrepareActor.java index 37c3c0b45..e76fbf741 100644 --- a/snail-job-server/snail-job-server-job-task/src/main/java/com/aizuda/snailjob/server/job/task/support/dispatch/WorkflowTaskPrepareActor.java +++ b/snail-job-server/snail-job-server-job-task/src/main/java/com/aizuda/snailjob/server/job/task/support/dispatch/WorkflowTaskPrepareActor.java @@ -55,6 +55,7 @@ public class WorkflowTaskPrepareActor extends AbstractActor { // 终态任务 if (workflowPrePareHandler.matches(null)) { workflowPrePareHandler.handler(workflowTaskPrepareDTO); + break; } } } else { diff --git a/snail-job-server/snail-job-server-job-task/src/main/java/com/aizuda/snailjob/server/job/task/support/generator/batch/WorkflowBatchGenerator.java b/snail-job-server/snail-job-server-job-task/src/main/java/com/aizuda/snailjob/server/job/task/support/generator/batch/WorkflowBatchGenerator.java index d0dd27d0a..88e48a1eb 100644 --- a/snail-job-server/snail-job-server-job-task/src/main/java/com/aizuda/snailjob/server/job/task/support/generator/batch/WorkflowBatchGenerator.java +++ b/snail-job-server/snail-job-server-job-task/src/main/java/com/aizuda/snailjob/server/job/task/support/generator/batch/WorkflowBatchGenerator.java @@ -34,6 +34,7 @@ public class WorkflowBatchGenerator { WorkflowTaskBatch workflowTaskBatch = WorkflowTaskConverter.INSTANCE.toWorkflowTaskBatch(context); workflowTaskBatch.setTaskBatchStatus(Optional.ofNullable(context.getTaskBatchStatus()).orElse(JobTaskBatchStatusEnum.WAITING.getStatus())); workflowTaskBatch.setOperationReason(context.getOperationReason()); + workflowTaskBatch.setWfContext(context.getWfContext()); Assert.isTrue(1 == workflowTaskBatchMapper.insert(workflowTaskBatch), () -> new SnailJobServerException("新增调度任务失败. [{}]", context.getWorkflowId())); diff --git a/snail-job-server/snail-job-server-job-task/src/main/java/com/aizuda/snailjob/server/job/task/support/generator/batch/WorkflowTaskBatchGeneratorContext.java b/snail-job-server/snail-job-server-job-task/src/main/java/com/aizuda/snailjob/server/job/task/support/generator/batch/WorkflowTaskBatchGeneratorContext.java index 393c4b000..e896f934f 100644 --- a/snail-job-server/snail-job-server-job-task/src/main/java/com/aizuda/snailjob/server/job/task/support/generator/batch/WorkflowTaskBatchGeneratorContext.java +++ b/snail-job-server/snail-job-server-job-task/src/main/java/com/aizuda/snailjob/server/job/task/support/generator/batch/WorkflowTaskBatchGeneratorContext.java @@ -47,5 +47,10 @@ public class WorkflowTaskBatchGeneratorContext { */ private String flowInfo; + /** + * 工作流上下文 + */ + private String wfContext; + }