feat: 회원의 예약 페이지에서 본인의 정보(이름, 전화번호)를 조회할 때 사용할 별도의 DTO 및 로직 정의

This commit is contained in:
이상진 2025-09-12 21:22:43 +09:00
parent 87a273971e
commit 3b6e7ba7a6
2 changed files with 19 additions and 0 deletions

View File

@ -13,6 +13,7 @@ import roomescape.common.dto.UserLoginCredentials
import roomescape.member.exception.UserErrorCode
import roomescape.member.exception.UserException
import roomescape.member.infrastructure.persistence.*
import roomescape.member.web.UserContactRetrieveResponse
import roomescape.member.web.UserCreateRequest
import roomescape.member.web.UserCreateResponse
import roomescape.member.web.toEntity
@ -54,6 +55,18 @@ class UserService(
}
}
@Transactional(readOnly = true)
fun findContactById(id: Long) : UserContactRetrieveResponse {
log.info { "[UserService.findContactById] 회원 연락 정보 조회 시작: id=${id}" }
val user = findOrThrow(id)
return UserContactRetrieveResponse(user.id, user.name, user.phone)
.also {
log.info { "[UserService.findContactById] 회원 연락 정보 조회 완료: id=${id}, name=${it.name}" }
}
}
@Transactional
fun signup(request: UserCreateRequest): UserCreateResponse {
log.info { "[UserService.signup] 회원가입 시작: request:$request" }

View File

@ -41,3 +41,9 @@ data class UserCreateResponse(
val id: Long,
val name: String
)
data class UserContactRetrieveResponse(
val id: Long,
val name: String,
val phone: String
)