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 ddfc568abc6bd578dce6aa4e9ec2868ce852f613..76bce4996d1d841e7c9502cd76946fe12d82fa30 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 @@ -30,12 +30,10 @@ import neatlogic.framework.restful.core.privateapi.PrivateApiComponentBase; import neatlogic.framework.util.SnowflakeUtil; import neatlogic.module.cmdb.dao.mapper.ci.CiMapper; import neatlogic.module.cmdb.dao.mapper.resourcecenter.ResourceEntityMapper; -import org.apache.commons.collections4.CollectionUtils; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; -import java.util.List; @Service @AuthAction(action = RESOURCECENTER_MODIFY.class) @@ -83,13 +81,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 0e09d979c9240d6ab96f17be59831348f9b5c436..7aff992248f8c84e86a908b8e03f0f2f173f03d8 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 @@ -18,7 +18,6 @@ package neatlogic.module.cmdb.dao.mapper.resourcecenter; import neatlogic.framework.cmdb.crossover.IResourceEntityCrossoverMapper; import neatlogic.framework.cmdb.dto.resourcecenter.ApplicationListDisplayVo; import neatlogic.framework.cmdb.dto.resourcecenter.AssetListDisplayVo; -import neatlogic.framework.cmdb.dto.resourcecenter.ResourceSearchVo; import neatlogic.framework.cmdb.dto.resourcecenter.config.ResourceEntityVo; import org.apache.ibatis.annotations.Param; @@ -34,8 +33,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); @@ -46,8 +43,6 @@ public interface ResourceEntityMapper extends IResourceEntityCrossoverMapper { void insertResourceEntity(ResourceEntityVo resourceEntityVo); - void insertResourceTypeCi(Long ciId); - int insertApplicationListDisplay(ApplicationListDisplayVo applicationListDisplayVo); int insertAssetListDisplay(AssetListDisplayVo assetListDisplayVo); @@ -59,6 +54,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 cf225bf119d0f2c9b990e64dacbc2dc7b9a2d517..95e5c1610b9b8bf577e0c89084a303cb83521484 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 285661d543937409765e384089bb297564986933..9c4fe869851a81898fb1a5c0f70df352c6841de9 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 @@ -33,16 +33,14 @@ import neatlogic.framework.cmdb.enums.CmdbTenantConfig; import neatlogic.framework.cmdb.exception.ci.CiNotFoundException; import neatlogic.framework.common.dto.BasePageVo; import neatlogic.framework.config.ConfigManager; -import neatlogic.framework.dao.mapper.DataBaseViewInfoMapper; -import neatlogic.framework.dao.mapper.SchemaMapper; import neatlogic.framework.fulltextindex.utils.FullTextIndexUtil; import neatlogic.module.cmdb.dao.mapper.ci.AttrMapper; import neatlogic.module.cmdb.dao.mapper.ci.CiMapper; -import neatlogic.module.cmdb.dao.mapper.globalattr.GlobalAttrMapper; 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,25 +77,23 @@ public class ResourceCenterResourceServiceImpl implements IResourceCenterResourc @Resource private AttrMapper attrMapper; - @Resource - private GlobalAttrMapper globalAttrMapper; - @Resource private ResourceEntityMapper resourceEntityMapper; @Resource - private SchemaMapper schemaMapper; - - @Resource - private DataBaseViewInfoMapper dataBaseViewInfoMapper; + private ResourceBuildSqlService resourceBuildSqlService; @Resource - private ResourceBuildSqlService resourceBuildSqlService; + 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);