diff --git a/backend/src/main/java/org/raddatz/familienarchiv/person/relationship/RelationshipInferenceService.java b/backend/src/main/java/org/raddatz/familienarchiv/person/relationship/RelationshipInferenceService.java index 96d7fa50..3226f1b6 100644 --- a/backend/src/main/java/org/raddatz/familienarchiv/person/relationship/RelationshipInferenceService.java +++ b/backend/src/main/java/org/raddatz/familienarchiv/person/relationship/RelationshipInferenceService.java @@ -97,8 +97,8 @@ public class RelationshipInferenceService { List path = shortestPaths.get(id); PersonNodeDTO node = new PersonNodeDTO( p.getId(), p.getDisplayName(), - p.getBirthDate() != null ? p.getBirthDate().getYear() : null, - p.getDeathDate() != null ? p.getDeathDate().getYear() : null, + RelationshipService.yearOf(p.getBirthDate()), + RelationshipService.yearOf(p.getDeathDate()), p.getGeneration(), p.isFamilyMember()); out.add(new InferredRelationshipWithPersonDTO(node, labelFor(path), path.size())); } diff --git a/backend/src/main/java/org/raddatz/familienarchiv/person/relationship/RelationshipService.java b/backend/src/main/java/org/raddatz/familienarchiv/person/relationship/RelationshipService.java index e764da04..51b312c6 100644 --- a/backend/src/main/java/org/raddatz/familienarchiv/person/relationship/RelationshipService.java +++ b/backend/src/main/java/org/raddatz/familienarchiv/person/relationship/RelationshipService.java @@ -158,8 +158,9 @@ public class RelationshipService { } // Stammbaum DTOs stay year-shaped: derive the year from the LocalDate, null-safe - // for persons with no date entered (ADR-039, REQ-PERSON-DATE-01). - private static Integer yearOf(LocalDate date) { + // for persons with no date entered (ADR-039, REQ-PERSON-DATE-01). Package-private + // so RelationshipInferenceService shares the same derivation. + static Integer yearOf(LocalDate date) { return date != null ? date.getYear() : null; }