diff --git a/snail-job-server/snail-job-server-web/src/main/java/com/aizuda/snailjob/server/web/service/handler/WorkflowHandler.java b/snail-job-server/snail-job-server-web/src/main/java/com/aizuda/snailjob/server/web/service/handler/WorkflowHandler.java index 85a157bb..c7c11a70 100644 --- a/snail-job-server/snail-job-server-web/src/main/java/com/aizuda/snailjob/server/web/service/handler/WorkflowHandler.java +++ b/snail-job-server/snail-job-server-web/src/main/java/com/aizuda/snailjob/server/web/service/handler/WorkflowHandler.java @@ -191,7 +191,7 @@ public class WorkflowHandler { WorkflowRequestVO.NodeConfig childNode = nodeInfo.getChildNode(); if (Objects.nonNull(childNode) && CollUtil.isNotEmpty(childNode.getConditionNodes())) { buildGraph(Lists.newArrayList(workflowNode.getId()), - tempDeque, + Objects.isNull(tempDeque) ? deque : tempDeque, groupName, workflowId, childNode, graph, version); } else { if (WorkflowNodeTypeEnum.DECISION.getType() == nodeConfig.getNodeType()) { diff --git a/snail-job-server/snail-job-server-web/src/main/java/com/aizuda/snailjob/server/web/service/impl/SceneConfigServiceImpl.java b/snail-job-server/snail-job-server-web/src/main/java/com/aizuda/snailjob/server/web/service/impl/SceneConfigServiceImpl.java index 96042aab..fd0ba8ab 100644 --- a/snail-job-server/snail-job-server-web/src/main/java/com/aizuda/snailjob/server/web/service/impl/SceneConfigServiceImpl.java +++ b/snail-job-server/snail-job-server-web/src/main/java/com/aizuda/snailjob/server/web/service/impl/SceneConfigServiceImpl.java @@ -125,7 +125,9 @@ public class SceneConfigServiceImpl implements SceneConfigService { RetrySceneConfig retrySceneConfig = SceneConfigConverter.INSTANCE.toRetrySceneConfig(requestVO); retrySceneConfig.setCreateDt(LocalDateTime.now()); retrySceneConfig.setNamespaceId(namespaceId); - retrySceneConfig.setNotifyIds(JsonUtil.toJsonString(requestVO.getNotifyIds())); + + retrySceneConfig.setNotifyIds(JsonUtil.toJsonString(Optional.ofNullable(requestVO.getNotifyIds()).orElse(Sets.newHashSet()))); + if (requestVO.getBackOff() == WaitStrategies.WaitStrategyEnum.DELAY_LEVEL.getType()) { retrySceneConfig.setTriggerInterval(StrUtil.EMPTY); } @@ -153,7 +155,7 @@ public class SceneConfigServiceImpl implements SceneConfigService { retrySceneConfig.setTriggerInterval( Optional.ofNullable(retrySceneConfig.getTriggerInterval()).orElse(StrUtil.EMPTY)); - retrySceneConfig.setNotifyIds(JsonUtil.toJsonString(requestVO.getNotifyIds())); + retrySceneConfig.setNotifyIds(JsonUtil.toJsonString(Optional.ofNullable(requestVO.getNotifyIds()).orElse(Sets.newHashSet()))); Assert.isTrue(1 == accessTemplate.getSceneConfigAccess().update(retrySceneConfig, new LambdaUpdateWrapper() .eq(RetrySceneConfig::getNamespaceId, namespaceId)