From a78f69ea090745a278c493e2e797e6856ccf1d5d Mon Sep 17 00:00:00 2001 From: "1437892690@qq.com" <1437892690@qq.com> Date: Thu, 3 Apr 2025 11:25:50 +0800 Subject: [PATCH] =?UTF-8?q?[=E4=BF=AE=E5=A4=8D]=20=E5=BA=94=E7=94=A8?= =?UTF-8?q?=E9=85=8D=E7=BD=AE-=E5=BA=94=E7=94=A8=E5=B1=82=E6=B5=81?= =?UTF-8?q?=E6=B0=B4=E7=BA=BF=E5=9C=A8=E7=BC=96=E8=BE=91=E7=8A=B6=E6=80=81?= =?UTF-8?q?=E4=B8=8B=EF=BC=8C=E5=B7=A5=E5=85=B7=E6=97=A0=E6=B3=95=E5=A2=9E?= =?UTF-8?q?=E5=88=A0=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 关联 #[1391162928103424]应用配置-应用层流水线在编辑状态下,工具无法增删改 http://192.168.0.96:8090/demo/rdm.html#/bug-detail/939050947543040/939050947543057/1391162928103424 --- .../util/DeployPipelineConfigManager.java | 100 ++++++++++-------- 1 file changed, 58 insertions(+), 42 deletions(-) diff --git a/src/main/java/neatlogic/module/deploy/util/DeployPipelineConfigManager.java b/src/main/java/neatlogic/module/deploy/util/DeployPipelineConfigManager.java index b216e3de..2a28a0fc 100644 --- a/src/main/java/neatlogic/module/deploy/util/DeployPipelineConfigManager.java +++ b/src/main/java/neatlogic/module/deploy/util/DeployPipelineConfigManager.java @@ -251,48 +251,28 @@ public class DeployPipelineConfigManager { envIdList.add(0L); } List deployAppConfigList = deployAppConfigMapper.getAppConfigListByAppSystemIdAndAppModuleIdListAndEnvIdList(appSystemId, appModuleIdList, envIdList); - for (DeployAppConfigVo deployAppConfigVo : deployAppConfigList) { - Long appModuleId = deployAppConfigVo.getAppModuleId(); - Long envId = deployAppConfigVo.getEnvId(); - String targetLevel; - DeployPipelineConfigVo appConfig; - DeployPipelineConfigVo moduleOverrideConfig = null; - DeployPipelineConfigVo envOverrideConfig = null; - if (appModuleId == 0L && envId == 0L) { - targetLevel = "应用"; - //查询应用层流水线配置信息 - appConfig = getDeployPipelineConfigVo(appSystemId, appModuleId, envId, deployAppConfigList); - if (appConfig == null) { - appConfig = new DeployPipelineConfigVo(); - } - } else if (appModuleId == 0L) { - // 如果是访问环境层配置信息,moduleId不能为空 - throw new ParamNotExistsException("moduleId"); - } else if (envId == 0L) { - targetLevel = "模块"; - //查询应用层配置信息 - appConfig = getDeployPipelineConfigVo(appSystemId, 0L, 0L, deployAppConfigList); - if (appConfig == null) { - appConfig = new DeployPipelineConfigVo(); - } - moduleOverrideConfig = getDeployPipelineConfigVo(appSystemId, appModuleId, envId, deployAppConfigList); - } else { - targetLevel = "环境"; - //查询应用层配置信息 - appConfig = getDeployPipelineConfigVo(appSystemId, 0L, 0L, deployAppConfigList); - if (appConfig == null) { - appConfig = new DeployPipelineConfigVo(); - } - moduleOverrideConfig = getDeployPipelineConfigVo(appSystemId, appModuleId, 0L, deployAppConfigList); - envOverrideConfig = getDeployPipelineConfigVo(appSystemId, appModuleId, envId, deployAppConfigList); + { + DeployPipelineConfigVo deployPipelineConfigVo = getMergeDeployPipelineConfig(deployAppConfigList, appSystemId, 0L, 0L); + DeployAppConfigVo deployAppConfigVo = new DeployAppConfigVo(); + deployAppConfigVo.setAppSystemId(appSystemId); + deployAppConfigVo.setAppModuleId(appModuleId); + deployAppConfigVo.setEnvId(envId); + deployAppConfigVo.setConfig(deployPipelineConfigVo); + resultList.add(deployAppConfigVo); + } + for (Long appModuleId : appModuleIdList) { + if (appModuleId == 0L) { + continue; + } + for (Long envId : envIdList) { + DeployPipelineConfigVo deployPipelineConfigVo = getMergeDeployPipelineConfig(deployAppConfigList, appSystemId, appModuleId, envId); + DeployAppConfigVo deployAppConfigVo = new DeployAppConfigVo(); + deployAppConfigVo.setAppSystemId(appSystemId); + deployAppConfigVo.setAppModuleId(appModuleId); + deployAppConfigVo.setEnvId(envId); + deployAppConfigVo.setConfig(deployPipelineConfigVo); + resultList.add(deployAppConfigVo); } - DeployPipelineConfigVo deployPipelineConfigVo = mergeDeployPipelineConfig(appConfig, moduleOverrideConfig, envOverrideConfig, targetLevel, isUpdateProfile, profileIdList); - DeployAppConfigVo deployAppConfig = new DeployAppConfigVo(); - deployAppConfig.setAppSystemId(appSystemId); - deployAppConfig.setAppModuleId(appModuleId); - deployAppConfig.setEnvId(envId); - deployAppConfig.setConfig(deployPipelineConfigVo); - resultList.add(deployAppConfig); } if (isDeleteDisabledPhase) { @@ -342,6 +322,42 @@ public class DeployPipelineConfigManager { } return resultList; } + + private DeployPipelineConfigVo getMergeDeployPipelineConfig(List deployAppConfigList, Long appSystemId, Long appModuleId, Long envId) { + String targetLevel; + DeployPipelineConfigVo appConfig; + DeployPipelineConfigVo moduleOverrideConfig = null; + DeployPipelineConfigVo envOverrideConfig = null; + if (appModuleId == 0L && envId == 0L) { + targetLevel = "应用"; + //查询应用层流水线配置信息 + appConfig = getDeployPipelineConfigVo(appSystemId, appModuleId, envId, deployAppConfigList); + if (appConfig == null) { + appConfig = new DeployPipelineConfigVo(); + } + } else if (appModuleId == 0L) { + // 如果是访问环境层配置信息,moduleId不能为空 + throw new ParamNotExistsException("moduleId"); + } else if (envId == 0L) { + targetLevel = "模块"; + //查询应用层配置信息 + appConfig = getDeployPipelineConfigVo(appSystemId, 0L, 0L, deployAppConfigList); + if (appConfig == null) { + appConfig = new DeployPipelineConfigVo(); + } + moduleOverrideConfig = getDeployPipelineConfigVo(appSystemId, appModuleId, envId, deployAppConfigList); + } else { + targetLevel = "环境"; + //查询应用层配置信息 + appConfig = getDeployPipelineConfigVo(appSystemId, 0L, 0L, deployAppConfigList); + if (appConfig == null) { + appConfig = new DeployPipelineConfigVo(); + } + moduleOverrideConfig = getDeployPipelineConfigVo(appSystemId, appModuleId, 0L, deployAppConfigList); + envOverrideConfig = getDeployPipelineConfigVo(appSystemId, appModuleId, envId, deployAppConfigList); + } + return mergeDeployPipelineConfig(appConfig, moduleOverrideConfig, envOverrideConfig, targetLevel, isUpdateProfile, profileIdList); + } } private static DeployPipelineConfigVo getDeployPipelineConfigVo(Long appSystemId, Long appModuleId, Long envId, List deployAppConfigList) { @@ -692,7 +708,7 @@ public class DeployPipelineConfigManager { */ private static DeployPipelineConfigVo mergeDeployPipelineConfig(DeployPipelineConfigVo appConfig, DeployPipelineConfigVo moduleOverrideConfig, DeployPipelineConfigVo envOverrideConfig, String targetLevel, boolean isUpdateProfile, List profileIdList) { if (Objects.equals(targetLevel, "应用")) { - initPipelineAppConfig(appConfig); + } else if (Objects.equals(targetLevel, "模块")) { initPipelineAppConfig(appConfig); pipelinePhaseSetSource(appConfig.getCombopPhaseList(), "应用"); -- Gitee