From 47b2c1cb934675eac5eabbc0dfbd78c74aae254d Mon Sep 17 00:00:00 2001 From: Klaus Date: Mon, 15 Sep 2025 06:17:55 +0900 Subject: [PATCH] =?UTF-8?q?fix(original):=20=EC=BA=90=EB=A6=AD=ED=84=B0=20?= =?UTF-8?q?=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 원작 ID가 0이 들어오면 캐릭터의 원작을 null로 처리한다. --- .../original/service/AdminOriginalWorkService.kt | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/main/kotlin/kr/co/vividnext/sodalive/admin/chat/original/service/AdminOriginalWorkService.kt b/src/main/kotlin/kr/co/vividnext/sodalive/admin/chat/original/service/AdminOriginalWorkService.kt index 288ddf5..57dcce7 100644 --- a/src/main/kotlin/kr/co/vividnext/sodalive/admin/chat/original/service/AdminOriginalWorkService.kt +++ b/src/main/kotlin/kr/co/vividnext/sodalive/admin/chat/original/service/AdminOriginalWorkService.kt @@ -145,11 +145,17 @@ class AdminOriginalWorkService( /** 단일 캐릭터를 지정 원작에 배정 */ @Transactional fun assignOneCharacter(originalWorkId: Long, characterId: Long) { - val ow = originalWorkRepository.findByIdAndIsDeletedFalse(originalWorkId) - .orElseThrow { SodaException("해당 원작을 찾을 수 없습니다") } val character = chatCharacterRepository.findById(characterId) .orElseThrow { SodaException("해당 캐릭터를 찾을 수 없습니다") } - character.originalWork = ow + + if (characterId == 0L) { + character.originalWork = null + } else { + val ow = originalWorkRepository.findByIdAndIsDeletedFalse(originalWorkId) + .orElseThrow { SodaException("해당 원작을 찾을 수 없습니다") } + character.originalWork = ow + } + chatCharacterRepository.save(character) } }