From c6ea84b801d2fc74e1fc073683aeea2da1846f8f Mon Sep 17 00:00:00 2001
From: "1437892690@qq.com" <1437892690@qq.com>
Date: Fri, 9 May 2025 15:20:41 +0800
Subject: [PATCH] =?UTF-8?q?[=E5=8A=9F=E8=83=BD]=20=E5=BA=94=E7=94=A8?=
=?UTF-8?q?=E9=85=8D=E7=BD=AE=E9=9C=80=E6=94=AF=E6=8C=81=E5=90=8C=E6=A8=A1?=
=?UTF-8?q?=E5=9D=97=EF=BC=8C=E4=B8=8D=E5=90=8C=E7=8E=AF=E5=A2=83=EF=BC=8C?=
=?UTF-8?q?=E9=85=8D=E5=90=8C=E4=B8=80=E4=B8=AA=E6=95=B0=E6=8D=AE=E5=BA=93?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
关联 #[1416733275947008]应用配置需支持同模块,不同环境,配同一个数据库 http://192.168.0.96:8090/demo/rdm.html#/story-detail/939050947543040/939050947543042/1416733275947008
---
.../SaveDeployAppConfigEnvDBConfigApi.java | 27 +++++++++++--
.../dao/mapper/DeployAppConfigMapper.xml | 9 +----
.../service/DeployAppConfigServiceImpl.java | 40 ++++++++++++++-----
3 files changed, 57 insertions(+), 19 deletions(-)
diff --git a/src/main/java/neatlogic/module/deploy/api/appconfig/env/SaveDeployAppConfigEnvDBConfigApi.java b/src/main/java/neatlogic/module/deploy/api/appconfig/env/SaveDeployAppConfigEnvDBConfigApi.java
index 7c9e17d3..fceeaeee 100644
--- a/src/main/java/neatlogic/module/deploy/api/appconfig/env/SaveDeployAppConfigEnvDBConfigApi.java
+++ b/src/main/java/neatlogic/module/deploy/api/appconfig/env/SaveDeployAppConfigEnvDBConfigApi.java
@@ -31,6 +31,7 @@ import neatlogic.module.deploy.service.DeployAppAuthorityService;
import neatlogic.module.deploy.service.DeployAppConfigService;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
+import org.apache.commons.collections4.MapUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@@ -129,9 +130,29 @@ public class SaveDeployAppConfigEnvDBConfigApi extends PrivateApiComponentBase {
ICiEntityCrossoverService ciEntityService = CrossoverServiceFactory.getApi(ICiEntityCrossoverService.class);
CiEntityVo DBCiEntityInfo = ciEntityService.getCiEntityById(DBCiEntityVo.getCiId(), DBCiEntityVo.getId());
CiEntityTransactionVo ciEntityTransactionVo = new CiEntityTransactionVo(DBCiEntityInfo);
- ciEntityTransactionVo.setAttrEntityData(DBCiEntityInfo.getAttrEntityData());
- deployAppConfigService.addAttrEntityDataAndRelEntityData(ciEntityTransactionVo, DBCiEntityInfo.getCiId(), paramObj, Collections.singletonList("app_environment"), Collections.singletonList("APPComponent"), Collections.singletonList("app_environment"));
-
+ ciEntityTransactionVo.setCiId(DBCiEntityVo.getCiId());
+ ciEntityTransactionVo.setAllowCommit(true);
+ ciEntityTransactionVo.setDescription(null);
+ JSONObject attrEntityData = DBCiEntityInfo.getAttrEntityData();
+ if (MapUtils.isNotEmpty(attrEntityData)) {
+ ciEntityTransactionVo.setAttrEntityData(JSONObject.parseObject(attrEntityData.toJSONString()));
+ }
+ JSONObject relEntityData = DBCiEntityInfo.getRelEntityData();
+ if (MapUtils.isNotEmpty(relEntityData)) {
+ ciEntityTransactionVo.setRelEntityData(JSONObject.parseObject(relEntityData.toJSONString()));
+ }
+ JSONObject globalAttrEntityData = DBCiEntityInfo.getGlobalAttrEntityData();
+ if (MapUtils.isNotEmpty(globalAttrEntityData)) {
+ ciEntityTransactionVo.setGlobalAttrEntityData(JSONObject.parseObject(globalAttrEntityData.toJSONString()));
+ }
+ deployAppConfigService.addAttrEntityDataAndRelEntityData(
+ ciEntityTransactionVo,
+ DBCiEntityInfo.getCiId(),
+ paramObj,
+ Collections.singletonList("app_environment"),
+ Collections.singletonList("APPComponent"),
+ Collections.singletonList("app_environment")
+ );
//保存
ciEntityTransactionVo.setAction(TransactionActionType.UPDATE.getValue());
ciEntityTransactionVo.setEditMode(EditModeType.GLOBAL.getValue());
diff --git a/src/main/java/neatlogic/module/deploy/dao/mapper/DeployAppConfigMapper.xml b/src/main/java/neatlogic/module/deploy/dao/mapper/DeployAppConfigMapper.xml
index 3a0111e4..058aeece 100644
--- a/src/main/java/neatlogic/module/deploy/dao/mapper/DeployAppConfigMapper.xml
+++ b/src/main/java/neatlogic/module/deploy/dao/mapper/DeployAppConfigMapper.xml
@@ -1218,17 +1218,12 @@ along with this program. If not, see .-->
FROM @{DATA_SCHEMA}.`scence_database_ip_port_env_appmodule` a
- (a.env_id = #{envId} OR a.env_id IS NULL)
- AND (
- a.app_module_id = #{appModuleId}
- OR a.app_module_id IS NULL
- )
AND a.`id` IN
@@ -1245,7 +1240,7 @@ along with this program. If not, see .-->