diff --git a/backend/src/main/java/org/raddatz/familienarchiv/model/Document.java b/backend/src/main/java/org/raddatz/familienarchiv/model/Document.java index 5fb3c3b2..dcdd1a2e 100644 --- a/backend/src/main/java/org/raddatz/familienarchiv/model/Document.java +++ b/backend/src/main/java/org/raddatz/familienarchiv/model/Document.java @@ -126,6 +126,7 @@ public class Document { private Set trainingLabels = new HashSet<>(); public String getThumbnailUrl() { - return null; + if (thumbnailKey == null) return null; + return "/api/documents/" + id + "/thumbnail"; } } diff --git a/backend/src/test/java/org/raddatz/familienarchiv/model/DocumentTest.java b/backend/src/test/java/org/raddatz/familienarchiv/model/DocumentTest.java index c6e82fb3..29071779 100644 --- a/backend/src/test/java/org/raddatz/familienarchiv/model/DocumentTest.java +++ b/backend/src/test/java/org/raddatz/familienarchiv/model/DocumentTest.java @@ -20,4 +20,20 @@ class DocumentTest { assertThat(doc.getThumbnailUrl()).isNull(); } + + @Test + void getThumbnailUrl_omitsCacheBuster_whenThumbnailKeyPresentButGeneratedAtNull() { + UUID id = UUID.fromString("11111111-2222-3333-4444-555555555555"); + Document doc = Document.builder() + .id(id) + .title("Brief") + .originalFilename("brief.pdf") + .status(DocumentStatus.UPLOADED) + .thumbnailKey("thumbnails/" + id + ".jpg") + .thumbnailGeneratedAt(null) + .build(); + + assertThat(doc.getThumbnailUrl()) + .isEqualTo("/api/documents/" + id + "/thumbnail"); + } }