From 889cc39337cd4509ec0d570c20405ab7b718336d Mon Sep 17 00:00:00 2001 From: linbangquan <1437892690@qq.com> Date: Mon, 15 Jan 2024 20:06:37 +0800 Subject: [PATCH] =?UTF-8?q?[=E4=BF=AE=E5=A4=8D]=20cmdb=E8=8A=82=E7=82=B9-?= =?UTF-8?q?=E6=8A=9B=E5=BC=82=E5=B8=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 关联 #[1069647498018816]cmdb节点-抛异常 http://192.168.0.96:8090/demo/rdm.html#/bug-detail/939050947543040/939050947543057/1069647498018816 --- .../cmdb/process/stephandler/CmdbSyncProcessComponent.java | 2 -- .../module/cmdb/service/cientity/CiEntityServiceImpl.java | 5 ++++- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/main/java/neatlogic/module/cmdb/process/stephandler/CmdbSyncProcessComponent.java b/src/main/java/neatlogic/module/cmdb/process/stephandler/CmdbSyncProcessComponent.java index d5dbe780..d6bf66f5 100644 --- a/src/main/java/neatlogic/module/cmdb/process/stephandler/CmdbSyncProcessComponent.java +++ b/src/main/java/neatlogic/module/cmdb/process/stephandler/CmdbSyncProcessComponent.java @@ -1268,7 +1268,6 @@ public class CmdbSyncProcessComponent extends ProcessStepHandlerBase { newValueList.addAll(valueList); continue; } - mappingObj.setMappingMode("constant"); Object dataObj = formAttributeDataMap.get(attributeUuid); if (dataObj == null) { continue; @@ -1279,7 +1278,6 @@ public class CmdbSyncProcessComponent extends ProcessStepHandlerBase { newValueList.add(dataObj); } } else if (Objects.equals(mappingMode, "formCommonComponent")) { - mappingObj.setMappingMode("constant"); Object dataObj = formAttributeDataMap.get(valueList.getString(0)); if (dataObj == null) { continue; diff --git a/src/main/java/neatlogic/module/cmdb/service/cientity/CiEntityServiceImpl.java b/src/main/java/neatlogic/module/cmdb/service/cientity/CiEntityServiceImpl.java index 8cc09608..49532e5b 100644 --- a/src/main/java/neatlogic/module/cmdb/service/cientity/CiEntityServiceImpl.java +++ b/src/main/java/neatlogic/module/cmdb/service/cientity/CiEntityServiceImpl.java @@ -1187,6 +1187,7 @@ public class CiEntityServiceImpl implements CiEntityService, ICiEntityCrossoverS //校验唯一规则 if (CollectionUtils.isNotEmpty(ciVo.getUniqueAttrIdList())) { + List valueList = new ArrayList<>(); CiEntityVo ciEntityConditionVo = new CiEntityVo(); ciEntityConditionVo.setCiId(ciEntityTransactionVo.getCiId()); for (Long attrId : ciVo.getUniqueAttrIdList()) { @@ -1209,6 +1210,7 @@ public class CiEntityServiceImpl implements CiEntityService, ICiEntityCrossoverS throw new CiUniqueAttrNotFoundException(op.get()); } }).collect(Collectors.toList())); + valueList.add(String.join(",", filterVo.getValueList())); ciEntityConditionVo.addAttrFilter(filterVo); } else { if (oldEntity != null) { @@ -1227,6 +1229,7 @@ public class CiEntityServiceImpl implements CiEntityService, ICiEntityCrossoverS throw new CiUniqueAttrNotFoundException(op.get()); } }).collect(Collectors.toList())); + valueList.add(String.join(",", filterVo.getValueList())); ciEntityConditionVo.addAttrFilter(filterVo); } } else { @@ -1246,7 +1249,7 @@ public class CiEntityServiceImpl implements CiEntityService, ICiEntityCrossoverS List checkList = this.searchCiEntity(ciEntityConditionVo); for (CiEntityVo checkCiEntity : checkList) { if (!checkCiEntity.getId().equals(ciEntityTransactionVo.getCiEntityId())) { - throw new CiUniqueRuleException(ciVo); + throw new CiUniqueRuleException(ciVo, String.join(",", valueList)); } } } -- Gitee