From 22e3ae6cba907801cbbbacb04dc8b57db614ab94 Mon Sep 17 00:00:00 2001 From: hajeu Date: Tue, 21 Nov 2023 11:37:46 +0900 Subject: [PATCH] =?UTF-8?q?:bug:=20pathVariable=EC=97=90=EC=84=9C=20?= =?UTF-8?q?=ED=95=B4=EA=B2=B0=ED=95=98=EC=A7=80=20=EB=AA=BB=ED=95=98?= =?UTF-8?q?=EB=8A=94=20=EB=B6=80=EB=B6=84=EC=9D=84=20RequestBody=EB=A1=9C?= =?UTF-8?q?=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../domain/user/controller/UserController.kt | 8 +++++--- .../domain/user/dto/ProfileUrlRegistrationDto.kt | 5 +++++ .../domain/user/service/ProfileUrlRegistrationService.kt | 7 ++++--- 3 files changed, 14 insertions(+), 6 deletions(-) create mode 100644 src/main/kotlin/team/themoment/gsmNetworking/domain/user/dto/ProfileUrlRegistrationDto.kt diff --git a/src/main/kotlin/team/themoment/gsmNetworking/domain/user/controller/UserController.kt b/src/main/kotlin/team/themoment/gsmNetworking/domain/user/controller/UserController.kt index 06340f4a..c3286aab 100644 --- a/src/main/kotlin/team/themoment/gsmNetworking/domain/user/controller/UserController.kt +++ b/src/main/kotlin/team/themoment/gsmNetworking/domain/user/controller/UserController.kt @@ -4,9 +4,11 @@ import org.springframework.http.HttpStatus import org.springframework.http.ResponseEntity import org.springframework.web.bind.annotation.PathVariable import org.springframework.web.bind.annotation.PostMapping +import org.springframework.web.bind.annotation.RequestBody import org.springframework.web.bind.annotation.RequestMapping import org.springframework.web.bind.annotation.RestController import team.themoment.gsmNetworking.common.manager.AuthenticatedUserManager +import team.themoment.gsmNetworking.domain.user.dto.ProfileUrlRegistrationDto import team.themoment.gsmNetworking.domain.user.service.ProfileUrlRegistrationService @RestController @@ -16,10 +18,10 @@ class UserController( private val profileUrlRegistrationService: ProfileUrlRegistrationService ) { - @PostMapping("/profile/{profileUrl}") - fun profileUrlRegistration(@PathVariable profileUrl: String): ResponseEntity { + @PostMapping("/profile-url") + fun profileUrlRegistration(@RequestBody dto: ProfileUrlRegistrationDto): ResponseEntity { val authenticationId = authenticatedUserManager.getName() - profileUrlRegistrationService.execute(authenticationId, profileUrl) + profileUrlRegistrationService.execute(authenticationId, dto) return ResponseEntity.status(HttpStatus.CREATED).build() } } diff --git a/src/main/kotlin/team/themoment/gsmNetworking/domain/user/dto/ProfileUrlRegistrationDto.kt b/src/main/kotlin/team/themoment/gsmNetworking/domain/user/dto/ProfileUrlRegistrationDto.kt new file mode 100644 index 00000000..2069f29f --- /dev/null +++ b/src/main/kotlin/team/themoment/gsmNetworking/domain/user/dto/ProfileUrlRegistrationDto.kt @@ -0,0 +1,5 @@ +package team.themoment.gsmNetworking.domain.user.dto + +data class ProfileUrlRegistrationDto( + val profileUrl: String? +) \ No newline at end of file diff --git a/src/main/kotlin/team/themoment/gsmNetworking/domain/user/service/ProfileUrlRegistrationService.kt b/src/main/kotlin/team/themoment/gsmNetworking/domain/user/service/ProfileUrlRegistrationService.kt index dba2253f..d159a853 100644 --- a/src/main/kotlin/team/themoment/gsmNetworking/domain/user/service/ProfileUrlRegistrationService.kt +++ b/src/main/kotlin/team/themoment/gsmNetworking/domain/user/service/ProfileUrlRegistrationService.kt @@ -5,6 +5,7 @@ import org.springframework.stereotype.Service import org.springframework.transaction.annotation.Transactional import team.themoment.gsmNetworking.common.exception.ExpectedException import team.themoment.gsmNetworking.domain.user.domain.User +import team.themoment.gsmNetworking.domain.user.dto.ProfileUrlRegistrationDto import team.themoment.gsmNetworking.domain.user.repository.UserRepository @Service @@ -13,14 +14,14 @@ class ProfileUrlRegistrationService( private val userRepository: UserRepository ) { - fun execute(authenticationId: Long, profileUrl: String) { + fun execute(authenticationId: Long, dto: ProfileUrlRegistrationDto) { val user = userRepository.findByAuthenticationId(authenticationId) ?: throw ExpectedException("user를 찾을 수 없습니다.", HttpStatus.NOT_FOUND) - profileUrlRegistered(user, profileUrl) + profileUrlRegistered(user, dto.profileUrl) } - fun profileUrlRegistered(user: User, profileUrl: String) { + fun profileUrlRegistered(user: User, profileUrl: String?) { val userUpdatedProfileUrl = User( user.userId, user.authenticationId,