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 d8f204afb25055d8a0a1669867ae273f150ef98b..127a2fe78ccdc779beaeb5df8011010e7d6b21d2 100644 --- a/src/main/java/neatlogic/module/inspect/api/definition/InspectCombopSearchApi.java +++ b/src/main/java/neatlogic/module/inspect/api/definition/InspectCombopSearchApi.java @@ -1,8 +1,9 @@ package neatlogic.module.inspect.api.definition; +import com.alibaba.fastjson.JSONObject; 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; @@ -15,7 +16,6 @@ import neatlogic.framework.restful.annotation.OperationType; import neatlogic.framework.restful.annotation.Param; import neatlogic.framework.restful.constvalue.OperationTypeEnum; import neatlogic.framework.restful.core.privateapi.PrivateApiComponentBase; -import com.alibaba.fastjson.JSONObject; import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; @@ -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 fd545a26026105041d66e85aaf23dae91c9cac01..1f401cc4aa7e08238a20cef54afbbd08e5cc581f 100644 --- a/src/main/java/neatlogic/module/inspect/api/report/InspectScheduleSearchApi.java +++ b/src/main/java/neatlogic/module/inspect/api/report/InspectScheduleSearchApi.java @@ -1,10 +1,11 @@ package neatlogic.module.inspect.api.report; +import com.alibaba.fastjson.JSONObject; 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; @@ -14,8 +15,6 @@ import neatlogic.framework.inspect.dto.InspectScheduleVo; import neatlogic.framework.restful.annotation.*; import neatlogic.framework.restful.constvalue.OperationTypeEnum; import neatlogic.framework.restful.core.privateapi.PrivateApiComponentBase; -import com.alibaba.fastjson.JSONObject; -import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.collections4.MapUtils; import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; @@ -57,14 +56,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)));