From 4cdd7a78a49c6615106bac605dd3fcf52d74e7b8 Mon Sep 17 00:00:00 2001 From: "1437892690@qq.com" <1437892690@qq.com> Date: Mon, 22 Apr 2024 12:29:22 +0800 Subject: [PATCH] =?UTF-8?q?[=E5=8A=9F=E8=83=BD]=20=E7=9F=A9=E9=98=B5?= =?UTF-8?q?=E4=B8=AD=E5=B1=9E=E6=80=A7=E5=A2=9E=E5=8A=A0=E7=94=A8=E6=88=B7?= =?UTF-8?q?=E8=87=AA=E5=AE=9A=E4=B9=89=E7=9A=84=E5=94=AF=E4=B8=80=E6=A0=87?= =?UTF-8?q?=E8=AF=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 关联 #[1138494599036928]后端-矩阵中属性增加用户自定义的唯一标识 http://192.168.0.96:8090/demo/rdm.html#/task-detail/939050947543040/939050947543050/1138494599036928 --- .../cmdb/matrix/handler/CiDataSourceHandler.java | 8 ++++++++ .../handler/CmdbCustomViewDataSourceHandler.java | 14 ++++++++++++++ 2 files changed, 22 insertions(+) diff --git a/src/main/java/neatlogic/module/cmdb/matrix/handler/CiDataSourceHandler.java b/src/main/java/neatlogic/module/cmdb/matrix/handler/CiDataSourceHandler.java index 043bb4b4..41362e09 100644 --- a/src/main/java/neatlogic/module/cmdb/matrix/handler/CiDataSourceHandler.java +++ b/src/main/java/neatlogic/module/cmdb/matrix/handler/CiDataSourceHandler.java @@ -387,6 +387,7 @@ public class CiDataSourceHandler extends MatrixDataSourceHandlerBase { protected List myGetAttributeList(MatrixVo matrixVo) { Long ciId = null; Map showAttributeUuidMap = new HashMap<>(); + Map showAttributeUniqueIdentifierMap = new HashMap<>(); String matrixUuid = matrixVo.getUuid(); if (StringUtils.isNotBlank(matrixUuid)) { MatrixCiVo matrixCiVo = matrixMapper.getMatrixCiByMatrixUuid(matrixUuid); @@ -399,6 +400,7 @@ public class CiDataSourceHandler extends MatrixDataSourceHandlerBase { for (int i = 0; i < showAttributeArray.size(); i++) { JSONObject showAttributeObj = showAttributeArray.getJSONObject(i); showAttributeUuidMap.put(showAttributeObj.getString("label"), showAttributeObj.getString("uuid")); + showAttributeUniqueIdentifierMap.put(showAttributeObj.getString("label"), showAttributeObj.getString("uniqueIdentifier")); } } else { ciId = matrixVo.getCiId(); @@ -473,6 +475,12 @@ public class CiDataSourceHandler extends MatrixDataSourceHandlerBase { continue; } if (MapUtils.isNotEmpty(showAttributeUuidMap)) { + String uniqueIdentifier = showAttributeUniqueIdentifierMap.get(matrixAttributeVo.getLabel()); + if (StringUtils.isNotBlank(uniqueIdentifier)) { + matrixAttributeVo.setUniqueIdentifier(uniqueIdentifier); + } else { + matrixAttributeVo.setUniqueIdentifier(StringUtils.EMPTY); + } String uuid = showAttributeUuidMap.get(matrixAttributeVo.getLabel()); if (uuid == null && Objects.equals(matrixAttributeVo.getPrimaryKey(), 0)) { continue; diff --git a/src/main/java/neatlogic/module/cmdb/matrix/handler/CmdbCustomViewDataSourceHandler.java b/src/main/java/neatlogic/module/cmdb/matrix/handler/CmdbCustomViewDataSourceHandler.java index e35c67d0..2ef0e8c5 100644 --- a/src/main/java/neatlogic/module/cmdb/matrix/handler/CmdbCustomViewDataSourceHandler.java +++ b/src/main/java/neatlogic/module/cmdb/matrix/handler/CmdbCustomViewDataSourceHandler.java @@ -321,6 +321,7 @@ public class CmdbCustomViewDataSourceHandler extends MatrixDataSourceHandlerBase protected List myGetAttributeList(MatrixVo matrixVo) { Long customViewId = null; Map showAttributeUuidMap = new HashMap<>(); + Map showAttributeUniqueIdentifierMap = new HashMap<>(); String matrixUuid = matrixVo.getUuid(); if (StringUtils.isNotBlank(matrixUuid)) { MatrixCmdbCustomViewVo matrixCmdbCustomViewVo = matrixMapper.getMatrixCmdbCustomViewByMatrixUuid(matrixUuid); @@ -333,6 +334,7 @@ public class CmdbCustomViewDataSourceHandler extends MatrixDataSourceHandlerBase for (int i = 0; i < showAttributeArray.size(); i++) { JSONObject showAttributeObj = showAttributeArray.getJSONObject(i); showAttributeUuidMap.put(showAttributeObj.getString("label"), showAttributeObj.getString("uuid")); + showAttributeUniqueIdentifierMap.put(showAttributeObj.getString("label"), showAttributeObj.getString("uniqueIdentifier")); } } else { customViewId = matrixVo.getCustomViewId(); @@ -349,6 +351,12 @@ public class CmdbCustomViewDataSourceHandler extends MatrixDataSourceHandlerBase for (CustomViewConstAttrVo constAttrVo : constAttrList) { MatrixAttributeVo matrixAttributeVo = new MatrixAttributeVo(); if (MapUtils.isNotEmpty(showAttributeUuidMap)) { + String uniqueIdentifier = showAttributeUniqueIdentifierMap.get(matrixAttributeVo.getLabel()); + if (StringUtils.isNotBlank(uniqueIdentifier)) { + matrixAttributeVo.setUniqueIdentifier(uniqueIdentifier); + } else { + matrixAttributeVo.setUniqueIdentifier(StringUtils.EMPTY); + } String uuid = showAttributeUuidMap.get(constAttrVo.getUuid()); if (uuid == null && Objects.equals(constAttrVo.getIsPrimary(), 0)) { continue; @@ -369,6 +377,12 @@ public class CmdbCustomViewDataSourceHandler extends MatrixDataSourceHandlerBase for (CustomViewAttrVo attrVo : attrList) { MatrixAttributeVo matrixAttributeVo = new MatrixAttributeVo(); if (MapUtils.isNotEmpty(showAttributeUuidMap)) { + String uniqueIdentifier = showAttributeUniqueIdentifierMap.get(matrixAttributeVo.getLabel()); + if (StringUtils.isNotBlank(uniqueIdentifier)) { + matrixAttributeVo.setUniqueIdentifier(uniqueIdentifier); + } else { + matrixAttributeVo.setUniqueIdentifier(StringUtils.EMPTY); + } String uuid = showAttributeUuidMap.get(attrVo.getUuid()); if (uuid == null && Objects.equals(attrVo.getIsPrimary(), 0)) { continue; -- Gitee