为定时清除任务功能新增编码去重

master
面包骑士 2024-09-04 15:59:16 +08:00
parent 8657218617
commit 508c5ec521
1 changed files with 6 additions and 4 deletions

View File

@ -22,6 +22,8 @@ import org.springframework.stereotype.Component;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.util.List; import java.util.List;
import java.util.Set;
import java.util.stream.Collectors;
/** /**
* @Author: * @Author:
@ -49,27 +51,27 @@ public class TaskJob {
List<NodeDisposition> dispositions = nodeDispositionService.selectNodeDispositionList(new NodeDisposition()); List<NodeDisposition> dispositions = nodeDispositionService.selectNodeDispositionList(new NodeDisposition());
// 查询节点表存在但任务表不存在的任务编码 // 查询节点表存在但任务表不存在的任务编码
List<String> notContainsTaskCodeList = nodes. Set<String> notContainsTaskCodeList = nodes.
stream(). stream().
map(Node::getTaskCode). map(Node::getTaskCode).
filter(nodeTaskCode -> !tasks. filter(nodeTaskCode -> !tasks.
stream(). stream().
map(TaskResp::getTaskCode). map(TaskResp::getTaskCode).
toList().contains(nodeTaskCode)). toList().contains(nodeTaskCode)).
toList(); collect(Collectors.toSet());
// 删除相关节点表数据 // 删除相关节点表数据
if (!notContainsTaskCodeList.isEmpty()) { if (!notContainsTaskCodeList.isEmpty()) {
nodeService.batchDelect(notContainsTaskCodeList.toArray(new String[0])); nodeService.batchDelect(notContainsTaskCodeList.toArray(new String[0]));
} }
// 查询配置表存在但节点表不存在的节点编码 // 查询配置表存在但节点表不存在的节点编码
List<String> notContainsNodeCodeList = dispositions. Set<String> notContainsNodeCodeList = dispositions.
stream(). stream().
map(NodeDisposition::getNodeCode). map(NodeDisposition::getNodeCode).
filter(nodeDispositionNodeCode -> !nodes. filter(nodeDispositionNodeCode -> !nodes.
stream(). stream().
map(Node::getNodeCode). map(Node::getNodeCode).
toList().contains(nodeDispositionNodeCode)). toList().contains(nodeDispositionNodeCode)).
toList(); collect(Collectors.toSet());
// 删除相关配置表数据 // 删除相关配置表数据
if (!notContainsNodeCodeList.isEmpty()) { if (!notContainsNodeCodeList.isEmpty()) {
nodeDispositionService.batchDelect(notContainsNodeCodeList.toArray(new String[0])); nodeDispositionService.batchDelect(notContainsNodeCodeList.toArray(new String[0]));