From 624ad2b3e21fc652541b90373cbec7a738fbab5d Mon Sep 17 00:00:00 2001 From: "1437892690@qq.com" <1437892690@qq.com> Date: Fri, 21 Nov 2025 16:48:24 +0800 Subject: [PATCH] =?UTF-8?q?[=E4=BF=AE=E5=A4=8D]=20=E8=B5=84=E4=BA=A7?= =?UTF-8?q?=E6=B8=85=E5=8D=95=E6=A0=B9=E6=A8=A1=E5=9E=8B=E8=AE=BE=E7=BD=AE?= =?UTF-8?q?=E4=B8=BA=E6=93=8D=E4=BD=9C=E7=B3=BB=E7=BB=9F=E6=97=B6=EF=BC=8C?= =?UTF-8?q?=E5=88=9B=E5=BB=BA=E4=BD=9C=E4=B8=9A=E6=97=B6=E6=8A=A5=E9=94=99?= =?UTF-8?q?=E7=BC=BA=E5=B0=91=E5=8F=AF=E6=89=A7=E8=A1=8C=E8=8A=82=E7=82=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 关联 #[1559494255935488]资产清单根模型设置为操作系统时,创建作业时报错缺少可执行节点 http://192.168.0.96:8090/demo/rdm.html#/bug-detail/939050947543040/939050947543057/1559494255935488 --- .../api/definition/InspectCombopSearchApi.java | 17 +++++------------ .../api/report/InspectScheduleSearchApi.java | 13 +++++-------- 2 files changed, 10 insertions(+), 20 deletions(-) diff --git a/src/main/java/neatlogic/module/inspect/api/definition/InspectCombopSearchApi.java b/src/main/java/neatlogic/module/inspect/api/definition/InspectCombopSearchApi.java index d8f204a..24b58ac 100644 --- a/src/main/java/neatlogic/module/inspect/api/definition/InspectCombopSearchApi.java +++ b/src/main/java/neatlogic/module/inspect/api/definition/InspectCombopSearchApi.java @@ -2,7 +2,7 @@ package neatlogic.module.inspect.api.definition; import neatlogic.framework.auth.core.AuthAction; import neatlogic.framework.cmdb.crossover.ICiCrossoverMapper; -import neatlogic.framework.cmdb.crossover.IResourceEntityCrossoverMapper; +import neatlogic.framework.cmdb.crossover.IResourceEntityCrossoverService; import neatlogic.framework.cmdb.dto.ci.CiVo; import neatlogic.framework.common.constvalue.ApiParamType; import neatlogic.framework.crossover.CrossoverServiceFactory; @@ -59,20 +59,13 @@ public class InspectCombopSearchApi extends PrivateApiComponentBase { List inspectCiList = inspectMapper.searchInspectCiCombopList(); //获取cmdb的ciType - IResourceEntityCrossoverMapper resourceEntityCrossoverMapper = CrossoverServiceFactory.getApi(IResourceEntityCrossoverMapper.class); - List ciIdList = resourceEntityCrossoverMapper.getAllResourceTypeCiIdList(); + IResourceEntityCrossoverService resourceEntityCrossoverService = CrossoverServiceFactory.getApi(IResourceEntityCrossoverService.class); + CiVo rootCiVo = resourceEntityCrossoverService.getAssetListRootCi(); List ciList = new ArrayList<>(); List ciCombopVoList = new ArrayList<>(); - if (CollectionUtils.isNotEmpty(ciIdList)) { + if (rootCiVo != null) { ICiCrossoverMapper ciCrossoverMapper = CrossoverServiceFactory.getApi(ICiCrossoverMapper.class); - List ciVoList = ciCrossoverMapper.getCiByIdList(ciIdList); - ciVoList.sort(Comparator.comparing(CiVo::getLft)); - for (CiVo ciVo : ciVoList) { - List ciListTmp = ciCrossoverMapper.getDownwardCiListByLR(ciVo.getLft(), ciVo.getRht()); - if (CollectionUtils.isNotEmpty(ciListTmp)) { - ciList.addAll(ciListTmp); - } - } + ciList = ciCrossoverMapper.getDownwardCiListByLR(rootCiVo.getLft(), rootCiVo.getRht()); String keyword = paramObj.getString("keyword"); if (StringUtils.isNotBlank(keyword)) { keyword = keyword.toLowerCase(Locale.ROOT); diff --git a/src/main/java/neatlogic/module/inspect/api/report/InspectScheduleSearchApi.java b/src/main/java/neatlogic/module/inspect/api/report/InspectScheduleSearchApi.java index fd545a2..61c04af 100644 --- a/src/main/java/neatlogic/module/inspect/api/report/InspectScheduleSearchApi.java +++ b/src/main/java/neatlogic/module/inspect/api/report/InspectScheduleSearchApi.java @@ -4,7 +4,7 @@ import neatlogic.framework.auth.core.AuthAction; import neatlogic.framework.autoexec.dao.mapper.AutoexecJobMapper; import neatlogic.framework.autoexec.dto.job.AutoexecJobInvokeVo; import neatlogic.framework.cmdb.crossover.ICiCrossoverMapper; -import neatlogic.framework.cmdb.crossover.IResourceEntityCrossoverMapper; +import neatlogic.framework.cmdb.crossover.IResourceEntityCrossoverService; import neatlogic.framework.cmdb.dto.ci.CiVo; import neatlogic.framework.common.constvalue.ApiParamType; import neatlogic.framework.crossover.CrossoverServiceFactory; @@ -57,14 +57,11 @@ public class InspectScheduleSearchApi extends PrivateApiComponentBase { public Object myDoService(JSONObject paramObj) throws Exception { String keyword = paramObj.getString("keyword"); List result = new ArrayList<>(); - IResourceEntityCrossoverMapper resourceEntityCrossoverMapper = CrossoverServiceFactory.getApi(IResourceEntityCrossoverMapper.class); - List ciIdList = resourceEntityCrossoverMapper.getAllResourceTypeCiIdList(); - if (CollectionUtils.isNotEmpty(ciIdList)) { - List ciList = new ArrayList<>(); + IResourceEntityCrossoverService resourceEntityCrossoverService = CrossoverServiceFactory.getApi(IResourceEntityCrossoverService.class); + CiVo rootCiVo = resourceEntityCrossoverService.getAssetListRootCi(); + if (rootCiVo != null) { ICiCrossoverMapper ciCrossoverMapper = CrossoverServiceFactory.getApi(ICiCrossoverMapper.class); - List ciVoList = ciCrossoverMapper.getCiByIdList(ciIdList); - ciVoList.sort(Comparator.comparing(CiVo::getLft)); - ciVoList.forEach(o -> ciList.addAll(ciCrossoverMapper.getDownwardCiListByLR(o.getLft(), o.getRht()))); + List ciList = ciCrossoverMapper.getDownwardCiListByLR(rootCiVo.getLft(), rootCiVo.getRht()); if (StringUtils.isNotEmpty(keyword)) { ciList.removeIf(o -> !o.getLabel().toLowerCase(Locale.ROOT).contains(keyword.toLowerCase(Locale.ROOT)) && !o.getName().toLowerCase(Locale.ROOT).contains(keyword.toLowerCase(Locale.ROOT))); -- Gitee