diff --git a/tyr-server/src/main/java/cn/axzo/tyr/server/service/impl/SaasPageElementServiceImpl.java b/tyr-server/src/main/java/cn/axzo/tyr/server/service/impl/SaasPageElementServiceImpl.java index 3f6eaa60..57d510e5 100644 --- a/tyr-server/src/main/java/cn/axzo/tyr/server/service/impl/SaasPageElementServiceImpl.java +++ b/tyr-server/src/main/java/cn/axzo/tyr/server/service/impl/SaasPageElementServiceImpl.java @@ -671,8 +671,18 @@ public class SaasPageElementServiceImpl extends ServiceImpl uniCodeRelationMap = relations.stream() - .collect(Collectors.toMap(SaasPageElementFeatureResourceRelation::getFeatureResourceUniCode, Function.identity(), (v1, v2) -> v1)); + Map uniCodeRelationMap = Maps.newHashMap(); + List pageRouteUniCodes = Lists.newArrayList(); + for(SaasPageElementFeatureResourceRelation relation : relations) { + if (pageRouteUniCodes.contains(relation.getFeatureResourceUniCode())) { + continue; + } + uniCodeRelationMap.put(relation.getFeatureResourceUniCode(), relation); + if (PageElementFeatureResourceRelationTypeEnum.PAGE_ROUTE.getValue().equals(relation.getType())) { + pageRouteUniCodes.add(relation.getFeatureResourceUniCode()); + } + } + List reps = allFeatureResources.stream().map(e -> PageElementRelationFeatureResourceResp.builder() .id(e.getId()) .parentId(e.getParentId())