From 1ae4b14fc86b3be2450366ff1eb26974916c72fb Mon Sep 17 00:00:00 2001 From: lvzk <897706680@qq.com> Date: Fri, 22 Dec 2023 18:45:43 +0800 Subject: [PATCH 1/3] =?UTF-8?q?[=E5=8A=9F=E8=83=BD]=E7=BB=84=E5=90=88?= =?UTF-8?q?=E5=B7=A5=E5=85=B7=E9=85=8D=E7=BD=AE=E8=B5=84=E4=BA=A7=E6=9D=83?= =?UTF-8?q?=E9=99=90=E7=AE=A1=E7=90=86=E7=9A=84=E4=BF=AE=E6=94=B9=20#[1044?= =?UTF-8?q?873413623808]=E8=87=AA=E5=8A=A8=E5=8C=96--=E7=BB=84=E5=90=88?= =?UTF-8?q?=E5=B7=A5=E5=85=B7=E9=85=8D=E7=BD=AE=E8=B5=84=E4=BA=A7=E6=9D=83?= =?UTF-8?q?=E9=99=90=E7=AE=A1=E7=90=86=E7=9A=84=E4=BF=AE=E6=94=B9=20http:/?= =?UTF-8?q?/192.168.0.96:8090/demo/rdm.html#/story-detail/939050947543040/?= =?UTF-8?q?939050947543042/1044873413623808?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../autoexec/api/combop/AutoexecCombopBasicInfoSaveApi.java | 1 + 1 file changed, 1 insertion(+) diff --git a/src/main/java/neatlogic/module/autoexec/api/combop/AutoexecCombopBasicInfoSaveApi.java b/src/main/java/neatlogic/module/autoexec/api/combop/AutoexecCombopBasicInfoSaveApi.java index 95416344..acd39c3b 100644 --- a/src/main/java/neatlogic/module/autoexec/api/combop/AutoexecCombopBasicInfoSaveApi.java +++ b/src/main/java/neatlogic/module/autoexec/api/combop/AutoexecCombopBasicInfoSaveApi.java @@ -98,6 +98,7 @@ public class AutoexecCombopBasicInfoSaveApi extends PrivateApiComponentBase { @Param(name = "name", type = ApiParamType.REGEX, rule = RegexUtils.NAME, isRequired = true, minLength = 1, maxLength = 70, desc = "common.name"), @Param(name = "description", type = ApiParamType.STRING, desc = "common.description"), @Param(name = "typeId", type = ApiParamType.LONG, isRequired = true, desc = "common.typeid"), + @Param(name = "opType", type = ApiParamType.STRING, isRequired = true, desc = "common.actiontype"), @Param(name = "typeName", type = ApiParamType.STRING, isRequired = true, desc = "common.typename"), @Param(name = "viewAuthorityList", type = ApiParamType.JSONARRAY, isRequired = true, minSize = 1, desc = "common.viewauthoritylist"), @Param(name = "editAuthorityList", type = ApiParamType.JSONARRAY, isRequired = true, minSize = 1, desc = "common.editauthoritylist"), -- Gitee From cc4a4f63056659b1b6d361df54b80962ddf2a742 Mon Sep 17 00:00:00 2001 From: lvzk <897706680@qq.com> Date: Mon, 25 Dec 2023 19:14:01 +0800 Subject: [PATCH 2/3] =?UTF-8?q?[=E5=8A=9F=E8=83=BD]=E7=BB=84=E5=90=88?= =?UTF-8?q?=E5=B7=A5=E5=85=B7=E9=85=8D=E7=BD=AE=E8=B5=84=E4=BA=A7=E6=9D=83?= =?UTF-8?q?=E9=99=90=E7=AE=A1=E7=90=86=E7=9A=84=E4=BF=AE=E6=94=B9=20#[1044?= =?UTF-8?q?873413623808]=E8=87=AA=E5=8A=A8=E5=8C=96--=E7=BB=84=E5=90=88?= =?UTF-8?q?=E5=B7=A5=E5=85=B7=E9=85=8D=E7=BD=AE=E8=B5=84=E4=BA=A7=E6=9D=83?= =?UTF-8?q?=E9=99=90=E7=AE=A1=E7=90=86=E7=9A=84=E4=BF=AE=E6=94=B9=20http:/?= =?UTF-8?q?/192.168.0.96:8090/demo/rdm.html#/story-detail/939050947543040/?= =?UTF-8?q?939050947543042/1044873413623808?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/AutoexecJobServiceImpl.java | 44 +++++++++++++++++-- 1 file changed, 41 insertions(+), 3 deletions(-) diff --git a/src/main/java/neatlogic/module/autoexec/service/AutoexecJobServiceImpl.java b/src/main/java/neatlogic/module/autoexec/service/AutoexecJobServiceImpl.java index 9bd5e1b2..f5d97faf 100644 --- a/src/main/java/neatlogic/module/autoexec/service/AutoexecJobServiceImpl.java +++ b/src/main/java/neatlogic/module/autoexec/service/AutoexecJobServiceImpl.java @@ -1044,7 +1044,17 @@ public class AutoexecJobServiceImpl implements AutoexecJobService, IAutoexecJobC ipPortNameList.add(new ResourceVo(o.getIp(), o.getPort(), o.getName())); }); IResourceCrossoverMapper resourceCrossoverMapper = CrossoverServiceFactory.getApi(IResourceCrossoverMapper.class); - List resourceVoList = resourceCrossoverMapper.getResourceListByResourceVoList(ipPortNameList); + //补充opType操作类型 + JSONObject filterJson = new JSONObject(); + if (Objects.equals(jobVo.getOperationType(), CombopOperationType.COMBOP.getValue())) { + AutoexecCombopVo combopVo = autoexecCombopMapper.getAutoexecCombopById(jobVo.getOperationId()); + if (combopVo != null) { + filterJson.put("cmdbGroupType", combopVo.getOpType()); + } + } + IResourceCenterResourceCrossoverService resourceCrossoverService = CrossoverServiceFactory.getApi(IResourceCenterResourceCrossoverService.class); + ResourceSearchVo searchVo = resourceCrossoverService.assembleResourceSearchVo(filterJson); + List resourceVoList = resourceCrossoverMapper.getResourceListByResourceVoList(ipPortNameList, searchVo); if (CollectionUtils.isNotEmpty(resourceVoList)) { updateJobPhaseNode(jobVo, resourceVoList, userName, protocolId, false); //重置节点状态 @@ -1073,7 +1083,17 @@ public class AutoexecJobServiceImpl implements AutoexecJobService, IAutoexecJobC ipPortNameList.add(new ResourceVo(o.getIp(), o.getPort(), o.getName())); }); IResourceCrossoverMapper resourceCrossoverMapper = CrossoverServiceFactory.getApi(IResourceCrossoverMapper.class); - List resourceVoList = resourceCrossoverMapper.getResourceListByResourceVoList(ipPortNameList); + //补充opType操作类型 + JSONObject filterJson = new JSONObject(); + if (Objects.equals(jobVo.getOperationType(), CombopOperationType.COMBOP.getValue())) { + AutoexecCombopVo combopVo = autoexecCombopMapper.getAutoexecCombopById(jobVo.getOperationId()); + if (combopVo != null) { + filterJson.put("cmdbGroupType", combopVo.getOpType()); + } + } + IResourceCenterResourceCrossoverService resourceCrossoverService = CrossoverServiceFactory.getApi(IResourceCenterResourceCrossoverService.class); + ResourceSearchVo searchVo = resourceCrossoverService.assembleResourceSearchVo(filterJson); + List resourceVoList = resourceCrossoverMapper.getResourceListByResourceVoList(ipPortNameList, searchVo); if (CollectionUtils.isNotEmpty(resourceVoList)) { updateJobPhaseNode(jobVo, resourceVoList, userName, protocolId); return true; @@ -1094,8 +1114,19 @@ public class AutoexecJobServiceImpl implements AutoexecJobService, IAutoexecJobC private boolean updateNodeResourceBySelect(AutoexecCombopExecuteNodeConfigVo executeNodeConfigVo, AutoexecJobVo jobVo, String userName, Long protocolId) { List nodeVoList = executeNodeConfigVo.getSelectNodeList(); if (CollectionUtils.isNotEmpty(nodeVoList)) { + IResourceCenterResourceCrossoverService resourceCrossoverService = CrossoverServiceFactory.getApi(IResourceCenterResourceCrossoverService.class); IResourceCrossoverMapper resourceCrossoverMapper = CrossoverServiceFactory.getApi(IResourceCrossoverMapper.class); - List resourceVoList = resourceCrossoverMapper.getResourceByIdList(nodeVoList.stream().map(AutoexecNodeVo::getId).collect(toList())); + JSONObject filterJson = new JSONObject(); + //补充opType操作类型 + if (Objects.equals(jobVo.getOperationType(), CombopOperationType.COMBOP.getValue())) { + AutoexecCombopVo combopVo = autoexecCombopMapper.getAutoexecCombopById(jobVo.getOperationId()); + if (combopVo != null) { + filterJson.put("cmdbGroupType", combopVo.getOpType()); + } + } + ResourceSearchVo searchVo = resourceCrossoverService.assembleResourceSearchVo(filterJson); + searchVo.setIdList(nodeVoList.stream().map(AutoexecNodeVo::getId).collect(toList())); + List resourceVoList = resourceCrossoverMapper.getAuthResourceList(searchVo); if (CollectionUtils.isNotEmpty(resourceVoList)) { updateJobPhaseNode(jobVo, resourceVoList, userName, protocolId); return true; @@ -1118,6 +1149,13 @@ public class AutoexecJobServiceImpl implements AutoexecJobService, IAutoexecJobC boolean isHasNode = false; if (MapUtils.isNotEmpty(filterJson)) { JSONObject resourceJson; + //补充opType操作类型 + if (Objects.equals(jobVo.getOperationType(), CombopOperationType.COMBOP.getValue())) { + AutoexecCombopVo combopVo = autoexecCombopMapper.getAutoexecCombopById(jobVo.getOperationId()); + if (combopVo != null) { + filterJson.put("cmdbGroupType", combopVo.getOpType()); + } + } IResourceCenterResourceCrossoverService resourceCrossoverService = CrossoverServiceFactory.getApi(IResourceCenterResourceCrossoverService.class); filterJson.put("pageSize", 100); ResourceSearchVo searchVo = resourceCrossoverService.assembleResourceSearchVo(filterJson); -- Gitee From 2f8fc13d20b14c1a2e5f44712965b195cb33caa2 Mon Sep 17 00:00:00 2001 From: lvzk <897706680@qq.com> Date: Mon, 8 Jan 2024 12:01:41 +0800 Subject: [PATCH 3/3] =?UTF-8?q?[=E5=8A=9F=E8=83=BD]=E8=87=AA=E5=8A=A8?= =?UTF-8?q?=E5=8C=96--=E7=BB=84=E5=90=88=E5=B7=A5=E5=85=B7=E9=85=8D?= =?UTF-8?q?=E7=BD=AE=E8=B5=84=E4=BA=A7=E6=9D=83=E9=99=90=E7=AE=A1=E7=90=86?= =?UTF-8?q?=E7=9A=84=E4=BF=AE=E6=94=B9=20#[1044873413623808]=E8=87=AA?= =?UTF-8?q?=E5=8A=A8=E5=8C=96--=E7=BB=84=E5=90=88=E5=B7=A5=E5=85=B7?= =?UTF-8?q?=E9=85=8D=E7=BD=AE=E8=B5=84=E4=BA=A7=E6=9D=83=E9=99=90=E7=AE=A1?= =?UTF-8?q?=E7=90=86=E7=9A=84=E4=BF=AE=E6=94=B9=20http://192.168.0.96:8090?= =?UTF-8?q?/demo/rdm.html#/story-detail/939050947543040/939050947543042/10?= =?UTF-8?q?44873413623808?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/AutoexecJobServiceImpl.java | 72 +++++++++---------- 1 file changed, 32 insertions(+), 40 deletions(-) diff --git a/src/main/java/neatlogic/module/autoexec/service/AutoexecJobServiceImpl.java b/src/main/java/neatlogic/module/autoexec/service/AutoexecJobServiceImpl.java index f5d97faf..6d85ed6a 100644 --- a/src/main/java/neatlogic/module/autoexec/service/AutoexecJobServiceImpl.java +++ b/src/main/java/neatlogic/module/autoexec/service/AutoexecJobServiceImpl.java @@ -1044,16 +1044,7 @@ public class AutoexecJobServiceImpl implements AutoexecJobService, IAutoexecJobC ipPortNameList.add(new ResourceVo(o.getIp(), o.getPort(), o.getName())); }); IResourceCrossoverMapper resourceCrossoverMapper = CrossoverServiceFactory.getApi(IResourceCrossoverMapper.class); - //补充opType操作类型 - JSONObject filterJson = new JSONObject(); - if (Objects.equals(jobVo.getOperationType(), CombopOperationType.COMBOP.getValue())) { - AutoexecCombopVo combopVo = autoexecCombopMapper.getAutoexecCombopById(jobVo.getOperationId()); - if (combopVo != null) { - filterJson.put("cmdbGroupType", combopVo.getOpType()); - } - } - IResourceCenterResourceCrossoverService resourceCrossoverService = CrossoverServiceFactory.getApi(IResourceCenterResourceCrossoverService.class); - ResourceSearchVo searchVo = resourceCrossoverService.assembleResourceSearchVo(filterJson); + ResourceSearchVo searchVo = getResourceSearchVoWithCmdbGroupType(jobVo); List resourceVoList = resourceCrossoverMapper.getResourceListByResourceVoList(ipPortNameList, searchVo); if (CollectionUtils.isNotEmpty(resourceVoList)) { updateJobPhaseNode(jobVo, resourceVoList, userName, protocolId, false); @@ -1083,16 +1074,7 @@ public class AutoexecJobServiceImpl implements AutoexecJobService, IAutoexecJobC ipPortNameList.add(new ResourceVo(o.getIp(), o.getPort(), o.getName())); }); IResourceCrossoverMapper resourceCrossoverMapper = CrossoverServiceFactory.getApi(IResourceCrossoverMapper.class); - //补充opType操作类型 - JSONObject filterJson = new JSONObject(); - if (Objects.equals(jobVo.getOperationType(), CombopOperationType.COMBOP.getValue())) { - AutoexecCombopVo combopVo = autoexecCombopMapper.getAutoexecCombopById(jobVo.getOperationId()); - if (combopVo != null) { - filterJson.put("cmdbGroupType", combopVo.getOpType()); - } - } - IResourceCenterResourceCrossoverService resourceCrossoverService = CrossoverServiceFactory.getApi(IResourceCenterResourceCrossoverService.class); - ResourceSearchVo searchVo = resourceCrossoverService.assembleResourceSearchVo(filterJson); + ResourceSearchVo searchVo = getResourceSearchVoWithCmdbGroupType(jobVo); List resourceVoList = resourceCrossoverMapper.getResourceListByResourceVoList(ipPortNameList, searchVo); if (CollectionUtils.isNotEmpty(resourceVoList)) { updateJobPhaseNode(jobVo, resourceVoList, userName, protocolId); @@ -1114,17 +1096,8 @@ public class AutoexecJobServiceImpl implements AutoexecJobService, IAutoexecJobC private boolean updateNodeResourceBySelect(AutoexecCombopExecuteNodeConfigVo executeNodeConfigVo, AutoexecJobVo jobVo, String userName, Long protocolId) { List nodeVoList = executeNodeConfigVo.getSelectNodeList(); if (CollectionUtils.isNotEmpty(nodeVoList)) { - IResourceCenterResourceCrossoverService resourceCrossoverService = CrossoverServiceFactory.getApi(IResourceCenterResourceCrossoverService.class); IResourceCrossoverMapper resourceCrossoverMapper = CrossoverServiceFactory.getApi(IResourceCrossoverMapper.class); - JSONObject filterJson = new JSONObject(); - //补充opType操作类型 - if (Objects.equals(jobVo.getOperationType(), CombopOperationType.COMBOP.getValue())) { - AutoexecCombopVo combopVo = autoexecCombopMapper.getAutoexecCombopById(jobVo.getOperationId()); - if (combopVo != null) { - filterJson.put("cmdbGroupType", combopVo.getOpType()); - } - } - ResourceSearchVo searchVo = resourceCrossoverService.assembleResourceSearchVo(filterJson); + ResourceSearchVo searchVo = getResourceSearchVoWithCmdbGroupType(jobVo); searchVo.setIdList(nodeVoList.stream().map(AutoexecNodeVo::getId).collect(toList())); List resourceVoList = resourceCrossoverMapper.getAuthResourceList(searchVo); if (CollectionUtils.isNotEmpty(resourceVoList)) { @@ -1135,6 +1108,34 @@ public class AutoexecJobServiceImpl implements AutoexecJobService, IAutoexecJobC return false; } + /** + * 获取resourceSearch,补充opType操作类型 + * + * @param jobVo 作业 + */ + private ResourceSearchVo getResourceSearchVoWithCmdbGroupType(AutoexecJobVo jobVo) { + return getResourceSearchVoWithCmdbGroupType(jobVo, null); + } + + /** + * 获取resourceSearch,补充opType操作类型 + * + * @param jobVo 作业 + */ + private ResourceSearchVo getResourceSearchVoWithCmdbGroupType(AutoexecJobVo jobVo, JSONObject filterJson) { + if (MapUtils.isEmpty(filterJson)) { + filterJson = new JSONObject(); + } + if (Objects.equals(jobVo.getOperationType(), CombopOperationType.COMBOP.getValue())) { + AutoexecCombopVo combopVo = autoexecCombopMapper.getAutoexecCombopById(jobVo.getOperationId()); + if (combopVo != null) { + filterJson.put("cmdbGroupType", combopVo.getOpType()); + } + } + IResourceCenterResourceCrossoverService resourceCrossoverService = CrossoverServiceFactory.getApi(IResourceCenterResourceCrossoverService.class); + return resourceCrossoverService.assembleResourceSearchVo(filterJson); + } + /** * filter * 根据过滤器 更新节点 @@ -1148,17 +1149,8 @@ public class AutoexecJobServiceImpl implements AutoexecJobService, IAutoexecJobC JSONObject filterJson = executeNodeConfigVo.getFilter(); boolean isHasNode = false; if (MapUtils.isNotEmpty(filterJson)) { - JSONObject resourceJson; - //补充opType操作类型 - if (Objects.equals(jobVo.getOperationType(), CombopOperationType.COMBOP.getValue())) { - AutoexecCombopVo combopVo = autoexecCombopMapper.getAutoexecCombopById(jobVo.getOperationId()); - if (combopVo != null) { - filterJson.put("cmdbGroupType", combopVo.getOpType()); - } - } - IResourceCenterResourceCrossoverService resourceCrossoverService = CrossoverServiceFactory.getApi(IResourceCenterResourceCrossoverService.class); filterJson.put("pageSize", 100); - ResourceSearchVo searchVo = resourceCrossoverService.assembleResourceSearchVo(filterJson); + ResourceSearchVo searchVo = getResourceSearchVoWithCmdbGroupType(jobVo, filterJson); IResourceCrossoverMapper resourceCrossoverMapper = CrossoverServiceFactory.getApi(IResourceCrossoverMapper.class); int count = resourceCrossoverMapper.getResourceCount(searchVo); if (count > 0) { -- Gitee