diff --git a/src/main/java/neatlogic/module/cmdb/api/resourcecenter/config/SaveAssertListDisplayApi.java b/src/main/java/neatlogic/module/cmdb/api/resourcecenter/config/SaveAssertListDisplayApi.java index f1014c3339f033ec58572e3048de97096d23d301..618fd9467cc9ddabfc95e1bd2fff3e9a8dc7b11c 100644 --- a/src/main/java/neatlogic/module/cmdb/api/resourcecenter/config/SaveAssertListDisplayApi.java +++ b/src/main/java/neatlogic/module/cmdb/api/resourcecenter/config/SaveAssertListDisplayApi.java @@ -78,13 +78,6 @@ public class SaveAssertListDisplayApi extends PrivateApiComponentBase { if (ciVo == null) { throw new CiNotFoundException(rootCiName); } - List ciIdList = resourceEntityMapper.getAllResourceTypeCiIdList(); - if (!ciIdList.contains(ciVo.getId())) { - if (CollectionUtils.isNotEmpty(ciIdList)) { - resourceEntityMapper.deleteResourceTypeCi(); - } - resourceEntityMapper.insertResourceTypeCi(ciVo.getId()); - } resourceEntityMapper.insertAssetListDisplay(assetListDisplayVo); return null; } diff --git a/src/main/java/neatlogic/module/cmdb/dao/mapper/resourcecenter/ResourceEntityMapper.java b/src/main/java/neatlogic/module/cmdb/dao/mapper/resourcecenter/ResourceEntityMapper.java index 218b8a0986ca2b5ab9c0937f34c8a518757ee75c..200c52cbc2e67d4b9a016ee21b29a5593251b6e9 100644 --- a/src/main/java/neatlogic/module/cmdb/dao/mapper/resourcecenter/ResourceEntityMapper.java +++ b/src/main/java/neatlogic/module/cmdb/dao/mapper/resourcecenter/ResourceEntityMapper.java @@ -31,8 +31,6 @@ public interface ResourceEntityMapper extends IResourceEntityCrossoverMapper { String getResourceEntityConfigByName(String name); - List getAllResourceTypeCiIdList(ResourceSearchVo searchVo); - int getResourceEntityViewDataCount(String name); List> getResourceEntityViewDataList(@Param("name") String name, @Param("startNum") int startNum, @Param("pageSize") int pageSize); @@ -43,8 +41,6 @@ public interface ResourceEntityMapper extends IResourceEntityCrossoverMapper { void insertResourceEntity(ResourceEntityVo resourceEntityVo); - void insertResourceTypeCi(Long ciId); - int insertApplicationListDisplay(ApplicationListDisplayVo applicationListDisplayVo); int insertAssetListDisplay(AssetListDisplayVo assetListDisplayVo); @@ -56,6 +52,4 @@ public interface ResourceEntityMapper extends IResourceEntityCrossoverMapper { void updateResourceEntityLabelAndDescription(ResourceEntityVo resourceEntityVo); void deleteResourceEntityByName(String name); - - void deleteResourceTypeCi(); } diff --git a/src/main/java/neatlogic/module/cmdb/dao/mapper/resourcecenter/ResourceEntityMapper.xml b/src/main/java/neatlogic/module/cmdb/dao/mapper/resourcecenter/ResourceEntityMapper.xml index f7e1a11ca1a92c59d0b520e158cd332371c7b025..2dda5867b27ebf649ad32c61f1ab374891e0072b 100644 --- a/src/main/java/neatlogic/module/cmdb/dao/mapper/resourcecenter/ResourceEntityMapper.xml +++ b/src/main/java/neatlogic/module/cmdb/dao/mapper/resourcecenter/ResourceEntityMapper.xml @@ -47,10 +47,6 @@ along with this program. If not, see .--> WHERE `name` = #{value} - - @@ -109,11 +105,6 @@ along with this program. If not, see .--> `init_time` = NOW(3) - - INSERT INTO `cmdb_resourcecenter_type_ci` (`ci_id`) - VALUES (#{value}) - - INSERT INTO `cmdb_resourcecenter_applicationlist_display` ( `id`, @@ -189,8 +180,4 @@ along with this program. If not, see .--> FROM cmdb_resourcecenter_entity WHERE name = #{value} - - - DELETE FROM `cmdb_resourcecenter_type_ci` - diff --git a/src/main/java/neatlogic/module/cmdb/service/resourcecenter/ResourceEntityService.java b/src/main/java/neatlogic/module/cmdb/service/resourcecenter/ResourceEntityService.java new file mode 100644 index 0000000000000000000000000000000000000000..696b81ad67b591e96bcd805480edc45a4e35d1e6 --- /dev/null +++ b/src/main/java/neatlogic/module/cmdb/service/resourcecenter/ResourceEntityService.java @@ -0,0 +1,20 @@ +/* + * Copyright (C) 2025 TechSure Co., Ltd. All Rights Reserved. + * This file is part of the NeatLogic software. + * Licensed under the NeatLogic Sustainable Use License (NSUL), Version 4.x – 2025. + * You may use this file only in compliance with the License. + * See the LICENSE file distributed with this work for the full license text. + * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + */ + +package neatlogic.module.cmdb.service.resourcecenter; + +import neatlogic.framework.cmdb.dto.ci.CiVo; + +public interface ResourceEntityService { + + CiVo getAssetListRootCi(); + + CiVo getViewRootCi(String viewName); +} diff --git a/src/main/java/neatlogic/module/cmdb/service/resourcecenter/ResourceEntityServiceImpl.java b/src/main/java/neatlogic/module/cmdb/service/resourcecenter/ResourceEntityServiceImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..6e625e8b662fe692766b307469c6531e8f537b45 --- /dev/null +++ b/src/main/java/neatlogic/module/cmdb/service/resourcecenter/ResourceEntityServiceImpl.java @@ -0,0 +1,56 @@ +/* + * Copyright (C) 2025 TechSure Co., Ltd. All Rights Reserved. + * This file is part of the NeatLogic software. + * Licensed under the NeatLogic Sustainable Use License (NSUL), Version 4.x – 2025. + * You may use this file only in compliance with the License. + * See the LICENSE file distributed with this work for the full license text. + * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + */ + +package neatlogic.module.cmdb.service.resourcecenter; + +import neatlogic.framework.cmdb.crossover.ICiCrossoverMapper; +import neatlogic.framework.cmdb.crossover.IResourceEntityCrossoverService; +import neatlogic.framework.cmdb.dto.ci.CiVo; +import neatlogic.framework.cmdb.dto.resourcecenter.AssetListDisplayVo; +import neatlogic.framework.cmdb.dto.resourcecenter.config.ResourceEntityConfigVo; +import neatlogic.framework.cmdb.dto.resourcecenter.config.ResourceEntityVo; +import neatlogic.framework.crossover.CrossoverServiceFactory; +import neatlogic.module.cmdb.dao.mapper.resourcecenter.ResourceEntityMapper; +import org.apache.commons.lang3.StringUtils; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; + +@Service +public class ResourceEntityServiceImpl implements ResourceEntityService, IResourceEntityCrossoverService { + + @Resource + private ResourceEntityMapper resourceEntityMapper; + + @Override + public CiVo getAssetListRootCi() { + AssetListDisplayVo assetListDisplay = resourceEntityMapper.getAssetListDisplay(); + if (assetListDisplay != null && StringUtils.isNotBlank(assetListDisplay.getRootCiName())) { + ICiCrossoverMapper ciCrossoverMapper = CrossoverServiceFactory.getApi(ICiCrossoverMapper.class); + return ciCrossoverMapper.getCiByName(assetListDisplay.getRootCiName()); + } + return null; + } + + @Override + public CiVo getViewRootCi(String viewName) { + ResourceEntityVo resourceEntityVo = resourceEntityMapper.getResourceEntityByName(viewName); + if (resourceEntityVo != null) { + ResourceEntityConfigVo config = resourceEntityVo.getConfig(); + if (config != null) { + if (StringUtils.isNotBlank(config.getMainCi())) { + ICiCrossoverMapper ciCrossoverMapper = CrossoverServiceFactory.getApi(ICiCrossoverMapper.class); + return ciCrossoverMapper.getCiByName(config.getMainCi()); + } + } + } + return null; + } +} diff --git a/src/main/java/neatlogic/module/cmdb/service/resourcecenter/resource/ResourceCenterResourceServiceImpl.java b/src/main/java/neatlogic/module/cmdb/service/resourcecenter/resource/ResourceCenterResourceServiceImpl.java index bf692031bbd83a4722bf28d7635cc8e976046fbb..7fcb73d16f751168b275e3bfd8a7b6fc0e74748f 100644 --- a/src/main/java/neatlogic/module/cmdb/service/resourcecenter/resource/ResourceCenterResourceServiceImpl.java +++ b/src/main/java/neatlogic/module/cmdb/service/resourcecenter/resource/ResourceCenterResourceServiceImpl.java @@ -37,6 +37,7 @@ import neatlogic.module.cmdb.dao.mapper.resourcecenter.ResourceAccountMapper; import neatlogic.module.cmdb.dao.mapper.resourcecenter.ResourceEntityMapper; import neatlogic.module.cmdb.dao.mapper.resourcecenter.ResourceMapper; import neatlogic.module.cmdb.dao.mapper.resourcecenter.ResourceTagMapper; +import neatlogic.module.cmdb.service.resourcecenter.ResourceEntityService; import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; @@ -79,10 +80,17 @@ public class ResourceCenterResourceServiceImpl implements IResourceCenterResourc @Resource private ResourceBuildSqlService resourceBuildSqlService; + @Resource + private ResourceEntityService resourceEntityService; + @Override public ResourceSearchVo assembleResourceSearchVo(JSONObject jsonObj) { if (!jsonObj.containsKey("typeId") && !jsonObj.containsKey("typeIdList")) { - List ciIdList = resourceEntityMapper.getAllResourceTypeCiIdList(); + List ciIdList = new ArrayList<>(); + CiVo rootCiVo = resourceEntityService.getViewRootCi("scence_ipobject_detail"); + if (rootCiVo != null) { + ciIdList.add(rootCiVo.getId()); + } jsonObj.put("typeIdList", ciIdList); } return assembleResourceSearchVo(jsonObj, true);