From 505c5af7ae4805d77fdcc407e78206c2cc4455f9 Mon Sep 17 00:00:00 2001 From: chenjg <17688741996@163.com> Date: Fri, 19 Jul 2024 18:40:38 +0800 Subject: [PATCH] =?UTF-8?q?#[1199127977754624]=E5=8F=91=E5=B8=83=E7=B1=BB?= =?UTF-8?q?=E5=9E=8B=E8=87=AA=E5=8A=A8=E5=8C=96=E4=BD=9C=E4=B8=9A=E9=87=8C?= =?UTF-8?q?=E5=AE=9E=E4=BE=8B=E6=98=BE=E7=A4=BA=E6=9C=80=E6=96=B0=E7=89=88?= =?UTF-8?q?=E6=9C=AC=E5=AD=97=E6=AE=B5=20http://192.168.0.96:8090/demo/rdm?= =?UTF-8?q?.html#/story-detail/939050947543040/939050947543042/11991279777?= =?UTF-8?q?54624?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../env/GetDeployAppConfigEnvInfoApi.java | 22 +++++++++++++- .../dao/mapper/DeployInstanceVersion.xml | 22 ++++++++++++++ .../mapper/DeployInstanceVersionMapper.java | 4 +++ .../type/DeployJobSourceTypeHandler.java | 29 +++++++++++++++++++ 4 files changed, 76 insertions(+), 1 deletion(-) diff --git a/src/main/java/neatlogic/module/deploy/api/appconfig/env/GetDeployAppConfigEnvInfoApi.java b/src/main/java/neatlogic/module/deploy/api/appconfig/env/GetDeployAppConfigEnvInfoApi.java index 7a6e12aa..28d2767f 100644 --- a/src/main/java/neatlogic/module/deploy/api/appconfig/env/GetDeployAppConfigEnvInfoApi.java +++ b/src/main/java/neatlogic/module/deploy/api/appconfig/env/GetDeployAppConfigEnvInfoApi.java @@ -15,6 +15,7 @@ along with this program. If not, see .*/ package neatlogic.module.deploy.api.appconfig.env; +import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.alibaba.nacos.common.utils.CollectionUtils; import neatlogic.framework.auth.core.AuthAction; @@ -29,10 +30,12 @@ import neatlogic.framework.deploy.auth.DEPLOY_BASE; import neatlogic.framework.deploy.dto.app.DeployAppConfigEnvDBConfigVo; import neatlogic.framework.deploy.dto.app.DeployAppEnvAutoConfigKeyValueVo; import neatlogic.framework.deploy.dto.app.DeployAppEnvAutoConfigVo; +import neatlogic.framework.deploy.dto.instance.DeployInstanceVersionVo; import neatlogic.framework.restful.annotation.*; import neatlogic.framework.restful.constvalue.OperationTypeEnum; import neatlogic.framework.restful.core.privateapi.PrivateApiComponentBase; import neatlogic.module.deploy.dao.mapper.DeployAppConfigMapper; +import neatlogic.module.deploy.dao.mapper.DeployInstanceVersionMapper; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -55,6 +58,9 @@ public class GetDeployAppConfigEnvInfoApi extends PrivateApiComponentBase { @Resource private DeployAppConfigMapper deployAppConfigMapper; + @Resource + DeployInstanceVersionMapper deployInstanceVersionMapper; + @Override public String getToken() { return "deploy/app/config/env/info/get"; @@ -96,7 +102,21 @@ public class GetDeployAppConfigEnvInfoApi extends PrivateApiComponentBase { if (CollectionUtils.isNotEmpty(instanceIdList)) { List instanceList = resourceCrossoverMapper.getAppInstanceResourceListByIdList(instanceIdList); - envInfo.put("instanceList", instanceList); + // 补充实例当前版本信息 + List instanceVersionVoList = deployInstanceVersionMapper.getDeployInstanceVersionByEnvIdAndInstanceIdList(envAutoConfigVo.getAppSystemId(), envAutoConfigVo.getAppModuleId(), envAutoConfigVo.getEnvId(), instanceIdList); + if (CollectionUtils.isNotEmpty(instanceVersionVoList)) { + Map versionMap = instanceVersionVoList.stream().collect(Collectors.toMap(DeployInstanceVersionVo::getResourceId, e -> e)); + JSONArray instanceArray = new JSONArray(); + for (ResourceVo resourceVo : instanceList) { + JSONObject instanceObj = (JSONObject) JSONObject.toJSON(resourceVo); + instanceObj.put("version", versionMap.containsKey(resourceVo.getId()) ? versionMap.get(resourceVo.getId()).getVersion() : ""); + instanceObj.put("instanceVersion", versionMap.get(resourceVo.getId())); + instanceArray.add(instanceObj); + } + envInfo.put("instanceList", instanceArray); + } else { + envInfo.put("instanceList", instanceList); + } List instanceAutoConfigList = deployAppConfigMapper.getAppEnvAutoConfigListBySystemIdAndModuleIdAndEnvIdAndInstanceIdList(paramObj.getLong("appSystemId"), paramObj.getLong("appModuleId"), paramObj.getLong("envId"), instanceIdList); envInfo.put("instanceAutoConfigList", instanceAutoConfigList); diff --git a/src/main/java/neatlogic/module/deploy/dao/mapper/DeployInstanceVersion.xml b/src/main/java/neatlogic/module/deploy/dao/mapper/DeployInstanceVersion.xml index ea627bd7..8eec59cf 100644 --- a/src/main/java/neatlogic/module/deploy/dao/mapper/DeployInstanceVersion.xml +++ b/src/main/java/neatlogic/module/deploy/dao/mapper/DeployInstanceVersion.xml @@ -34,6 +34,28 @@ along with this program. If not, see .--> for update + +