From 38bab59e0fd9ea03c56fcd65a52a9c0e0545e4d3 Mon Sep 17 00:00:00 2001 From: Josha von Gizycki Date: Mon, 29 Dec 2025 18:43:03 +0100 Subject: [PATCH] update updatedAt when tagging --- src/main/kotlin/wanijo/wanijo2/domain/document.kt | 5 +++++ .../wanijo2/domain/handler/AssignTaggingHandler.kt | 10 +++++++++- .../wanijo2/domain/handler/DeleteTaggingHandler.kt | 10 +++++++++- 3 files changed, 23 insertions(+), 2 deletions(-) diff --git a/src/main/kotlin/wanijo/wanijo2/domain/document.kt b/src/main/kotlin/wanijo/wanijo2/domain/document.kt index 951f6eb..87eb19f 100644 --- a/src/main/kotlin/wanijo/wanijo2/domain/document.kt +++ b/src/main/kotlin/wanijo/wanijo2/domain/document.kt @@ -53,6 +53,11 @@ data class Document( updatedAt = Instant.now(), dateFields = dateFields.filter { it.id != fieldId }.toSet() ) + + fun updated() = + copy( + updatedAt = Instant.now() + ) } @Table("T_DOCUMENT") diff --git a/src/main/kotlin/wanijo/wanijo2/domain/handler/AssignTaggingHandler.kt b/src/main/kotlin/wanijo/wanijo2/domain/handler/AssignTaggingHandler.kt index f3b154d..56f43e8 100644 --- a/src/main/kotlin/wanijo/wanijo2/domain/handler/AssignTaggingHandler.kt +++ b/src/main/kotlin/wanijo/wanijo2/domain/handler/AssignTaggingHandler.kt @@ -1,13 +1,16 @@ package wanijo.wanijo2.domain.handler import org.springframework.stereotype.Service +import wanijo.wanijo2.domain.DocumentDao import wanijo.wanijo2.domain.DocumentTagging import wanijo.wanijo2.domain.DocumentTaggingDao import wanijo.wanijo2.domain.event.AssignTaggingCommand +import wanijo.wanijo2.http.DocumentNotFound @Service class AssignTaggingHandler( - val taggingDao: DocumentTaggingDao + val taggingDao: DocumentTaggingDao, + val documentDao: DocumentDao ) { fun exec(command: AssignTaggingCommand) { @@ -17,6 +20,11 @@ class AssignTaggingHandler( command.tagId ) ) + documentDao.save( + (documentDao + .findById(command.documentId) ?: throw DocumentNotFound()) + .updated() + ) } } diff --git a/src/main/kotlin/wanijo/wanijo2/domain/handler/DeleteTaggingHandler.kt b/src/main/kotlin/wanijo/wanijo2/domain/handler/DeleteTaggingHandler.kt index 2a770f8..1b75946 100644 --- a/src/main/kotlin/wanijo/wanijo2/domain/handler/DeleteTaggingHandler.kt +++ b/src/main/kotlin/wanijo/wanijo2/domain/handler/DeleteTaggingHandler.kt @@ -1,12 +1,15 @@ package wanijo.wanijo2.domain.handler import org.springframework.stereotype.Service +import wanijo.wanijo2.domain.DocumentDao import wanijo.wanijo2.domain.DocumentTaggingDao import wanijo.wanijo2.domain.event.DeleteTaggingCommand +import wanijo.wanijo2.http.DocumentNotFound @Service class DeleteTaggingHandler( - val taggingDao: DocumentTaggingDao + val taggingDao: DocumentTaggingDao, + val documentDao: DocumentDao ) { fun exec(command: DeleteTaggingCommand) { @@ -14,6 +17,11 @@ class DeleteTaggingHandler( command.documentId, command.tagId ) + documentDao.save( + (documentDao + .findById(command.documentId) ?: throw DocumentNotFound()) + .updated() + ) } }