From 637a6837237318e5d99e192ec29979281d0a6d12 Mon Sep 17 00:00:00 2001 From: "michele.artini" Date: Wed, 21 Oct 2020 09:49:11 +0200 Subject: [PATCH] fix a jpa exception --- .../eu/dnetlib/organizations/model/OpenaireDuplicate.java | 8 ++++++++ .../eu/dnetlib/organizations/utils/DatabaseUtils.java | 3 ++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/OpenaireDuplicate.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/OpenaireDuplicate.java index de546cc0..10b7129f 100644 --- a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/OpenaireDuplicate.java +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/OpenaireDuplicate.java @@ -29,6 +29,14 @@ public class OpenaireDuplicate implements Serializable { @Column(name = "reltype") private String relType; + public OpenaireDuplicate() {} + + public OpenaireDuplicate(final String localId, final String oaOriginalId, final String relType) { + this.localId = localId; + this.oaOriginalId = oaOriginalId; + this.relType = relType; + } + public String getLocalId() { return localId; } diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/utils/DatabaseUtils.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/utils/DatabaseUtils.java index 76d6b802..d22af615 100644 --- a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/utils/DatabaseUtils.java +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/utils/DatabaseUtils.java @@ -410,9 +410,10 @@ public class DatabaseUtils { final List newDuplicates = ids.stream() .map(openaireDuplicateRepository::findByLocalId) .flatMap(l -> l.stream()) + .filter(d -> d.getRelType().equals(SimilarityType.is_similar.toString())) + .map(d -> new OpenaireDuplicate(masterId, d.getOaOriginalId(), d.getRelType())) .collect(Collectors.toList()); newDuplicates.forEach(d -> d.setLocalId(masterId)); - saveDuplicates(newDuplicates, user); final OffsetDateTime now = OffsetDateTime.now();