diff --git a/src/main/kotlin/kr/co/vividnext/sodalive/admin/live/signature/AdminSignatureCanController.kt b/src/main/kotlin/kr/co/vividnext/sodalive/admin/live/signature/AdminSignatureCanController.kt index 9734dac..1abe191 100644 --- a/src/main/kotlin/kr/co/vividnext/sodalive/admin/live/signature/AdminSignatureCanController.kt +++ b/src/main/kotlin/kr/co/vividnext/sodalive/admin/live/signature/AdminSignatureCanController.kt @@ -33,16 +33,17 @@ class AdminSignatureCanController(private val service: AdminSignatureCanService) @PutMapping fun modifySignatureCan( @RequestParam("id") id: Long, + @RequestParam("can", required = false) can: Int?, @RequestParam("image", required = false) image: MultipartFile?, @RequestParam("isActive", required = false) isActive: Boolean?, @RequestParam("isAdult", required = false) isAdult: Boolean? ) = run { - if (image == null && isActive == null) { + if (can == null && image == null && isActive == null && isAdult == null) { throw SodaException("변경사항이 없습니다.") } ApiResponse.ok( - service.modifySignatureCan(id = id, image = image, isActive = isActive, isAdult = isAdult), + service.modifySignatureCan(id = id, can = can, image = image, isActive = isActive, isAdult = isAdult), "수정되었습니다." ) } diff --git a/src/main/kotlin/kr/co/vividnext/sodalive/admin/live/signature/AdminSignatureCanService.kt b/src/main/kotlin/kr/co/vividnext/sodalive/admin/live/signature/AdminSignatureCanService.kt index 33a0225..d5028cd 100644 --- a/src/main/kotlin/kr/co/vividnext/sodalive/admin/live/signature/AdminSignatureCanService.kt +++ b/src/main/kotlin/kr/co/vividnext/sodalive/admin/live/signature/AdminSignatureCanService.kt @@ -60,10 +60,14 @@ class AdminSignatureCanService( } @Transactional - fun modifySignatureCan(id: Long, image: MultipartFile?, isActive: Boolean?, isAdult: Boolean?) { + fun modifySignatureCan(id: Long, can: Int?, image: MultipartFile?, isActive: Boolean?, isAdult: Boolean?) { val signatureCan = repository.findByIdOrNull(id = id) ?: throw SodaException("잘못된 요청입니다.") + if (can != null) { + signatureCan.can = can + } + if (isActive != null) { signatureCan.isActive = isActive } diff --git a/src/main/kotlin/kr/co/vividnext/sodalive/creator/admin/signature/CreatorAdminSignatureController.kt b/src/main/kotlin/kr/co/vividnext/sodalive/creator/admin/signature/CreatorAdminSignatureController.kt index 9a54ffd..df3115d 100644 --- a/src/main/kotlin/kr/co/vividnext/sodalive/creator/admin/signature/CreatorAdminSignatureController.kt +++ b/src/main/kotlin/kr/co/vividnext/sodalive/creator/admin/signature/CreatorAdminSignatureController.kt @@ -46,17 +46,21 @@ class CreatorAdminSignatureController(private val service: CreatorAdminSignature @PutMapping fun modifySignature( @RequestParam("id") id: Long, + @RequestParam("can", required = false) can: Int?, @RequestParam("image", required = false) image: MultipartFile?, @RequestParam("isActive", required = false) isActive: Boolean?, @RequestParam("isAdult", required = false) isAdult: Boolean?, @AuthenticationPrincipal(expression = "#this == 'anonymousUser' ? null : member") member: Member? ) = run { if (member == null) throw SodaException("로그인 정보를 확인해주세요.") - if (image == null && isActive == null) throw SodaException("변경사항이 없습니다.") + if (can == null && image == null && isActive == null && isAdult == null) { + throw SodaException("변경사항이 없습니다.") + } ApiResponse.ok( service.modifySignature( id = id, + can = can, image = image, isActive = isActive, isAdult = isAdult, diff --git a/src/main/kotlin/kr/co/vividnext/sodalive/creator/admin/signature/CreatorAdminSignatureService.kt b/src/main/kotlin/kr/co/vividnext/sodalive/creator/admin/signature/CreatorAdminSignatureService.kt index 2886f4b..9c1f57c 100644 --- a/src/main/kotlin/kr/co/vividnext/sodalive/creator/admin/signature/CreatorAdminSignatureService.kt +++ b/src/main/kotlin/kr/co/vividnext/sodalive/creator/admin/signature/CreatorAdminSignatureService.kt @@ -58,10 +58,21 @@ class CreatorAdminSignatureService( } @Transactional - fun modifySignature(id: Long, image: MultipartFile?, isActive: Boolean?, memberId: Long, isAdult: Boolean?) { + fun modifySignature( + id: Long, + can: Int?, + image: MultipartFile?, + isActive: Boolean?, + memberId: Long, + isAdult: Boolean? + ) { val signatureCan = repository.findSignatureByIdOrNull(id = id, memberId = memberId) ?: throw SodaException("잘못된 요청입니다.") + if (can != null) { + signatureCan.can = can + } + if (isActive != null) { signatureCan.isActive = isActive } diff --git a/src/main/kotlin/kr/co/vividnext/sodalive/live/signature/SignatureCan.kt b/src/main/kotlin/kr/co/vividnext/sodalive/live/signature/SignatureCan.kt index dc11fb6..c9ee36f 100644 --- a/src/main/kotlin/kr/co/vividnext/sodalive/live/signature/SignatureCan.kt +++ b/src/main/kotlin/kr/co/vividnext/sodalive/live/signature/SignatureCan.kt @@ -9,7 +9,7 @@ import javax.persistence.ManyToOne @Entity data class SignatureCan( - val can: Int, + var can: Int, var isAdult: Boolean = false, var isActive: Boolean = true ) : BaseEntity() {