diff --git a/backend/src/main/java/org/raddatz/familienarchiv/relationship/PersonRelationshipRepository.java b/backend/src/main/java/org/raddatz/familienarchiv/relationship/PersonRelationshipRepository.java index 14a70fd3..4f204505 100644 --- a/backend/src/main/java/org/raddatz/familienarchiv/relationship/PersonRelationshipRepository.java +++ b/backend/src/main/java/org/raddatz/familienarchiv/relationship/PersonRelationshipRepository.java @@ -16,7 +16,11 @@ public interface PersonRelationshipRepository extends JpaRepository findAllByRelationTypeIn(Collection types); + @Query("SELECT r FROM PersonRelationship r " + + "JOIN FETCH r.person " + + "JOIN FETCH r.relatedPerson " + + "WHERE r.relationType IN :types") + List findAllByRelationTypeIn(@Param("types") Collection types); /** Used for the circular-PARENT_OF check in {@code addRelationship}. */ boolean existsByPersonIdAndRelatedPersonIdAndRelationType( @@ -38,6 +42,8 @@ public interface PersonRelationshipRepository extends JpaRepository findAllByPersonIdOrRelatedPersonId(@Param("personId") UUID personId); }