generated from pricelees/issue-pr-template
refactor: DTO 명명 통일
This commit is contained in:
parent
85b1eb2f6f
commit
436418a12f
@ -66,14 +66,14 @@ class PaymentService(
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Transactional(readOnly = true)
|
@Transactional(readOnly = true)
|
||||||
fun findDetailByReservationId(reservationId: Long): PaymentRetrieveResponse? {
|
fun findDetailByReservationId(reservationId: Long): PaymentWithDetailResponse? {
|
||||||
log.info { "[PaymentService.findDetailByReservationId] 예약 결제 정보 조회 시작: reservationId=$reservationId" }
|
log.info { "[PaymentService.findDetailByReservationId] 예약 결제 정보 조회 시작: reservationId=$reservationId" }
|
||||||
|
|
||||||
val payment: PaymentEntity? = findByReservationIdOrNull(reservationId)
|
val payment: PaymentEntity? = findByReservationIdOrNull(reservationId)
|
||||||
val paymentDetail: PaymentDetailEntity? = payment?.let { findDetailByPaymentIdOrNull(it.id) }
|
val paymentDetail: PaymentDetailEntity? = payment?.let { findDetailByPaymentIdOrNull(it.id) }
|
||||||
val cancelDetail: CanceledPaymentEntity? = payment?.let { findCancelByPaymentIdOrNull(it.id) }
|
val cancelDetail: CanceledPaymentEntity? = payment?.let { findCancelByPaymentIdOrNull(it.id) }
|
||||||
|
|
||||||
return payment?.toRetrieveResponse(
|
return payment?.toDetailResponse(
|
||||||
detail = paymentDetail?.toPaymentDetailResponse(),
|
detail = paymentDetail?.toPaymentDetailResponse(),
|
||||||
cancel = cancelDetail?.toCancelDetailResponse()
|
cancel = cancelDetail?.toCancelDetailResponse()
|
||||||
)
|
)
|
||||||
|
|||||||
@ -27,7 +27,7 @@ data class PaymentCancelRequest(
|
|||||||
val requestedAt: LocalDateTime = LocalDateTime.now()
|
val requestedAt: LocalDateTime = LocalDateTime.now()
|
||||||
)
|
)
|
||||||
|
|
||||||
data class PaymentRetrieveResponse(
|
data class PaymentWithDetailResponse(
|
||||||
val orderId: String,
|
val orderId: String,
|
||||||
val totalAmount: Int,
|
val totalAmount: Int,
|
||||||
val method: String,
|
val method: String,
|
||||||
@ -38,11 +38,11 @@ data class PaymentRetrieveResponse(
|
|||||||
val cancel: PaymentCancelDetailResponse?,
|
val cancel: PaymentCancelDetailResponse?,
|
||||||
)
|
)
|
||||||
|
|
||||||
fun PaymentEntity.toRetrieveResponse(
|
fun PaymentEntity.toDetailResponse(
|
||||||
detail: PaymentDetailResponse?,
|
detail: PaymentDetailResponse?,
|
||||||
cancel: PaymentCancelDetailResponse?
|
cancel: PaymentCancelDetailResponse?
|
||||||
): PaymentRetrieveResponse {
|
): PaymentWithDetailResponse {
|
||||||
return PaymentRetrieveResponse(
|
return PaymentWithDetailResponse(
|
||||||
orderId = this.orderId,
|
orderId = this.orderId,
|
||||||
totalAmount = this.totalAmount,
|
totalAmount = this.totalAmount,
|
||||||
method = this.method.koreanName,
|
method = this.method.koreanName,
|
||||||
|
|||||||
@ -11,9 +11,9 @@ import roomescape.common.dto.CurrentUserContext
|
|||||||
import roomescape.common.dto.PrincipalType
|
import roomescape.common.dto.PrincipalType
|
||||||
import roomescape.common.util.DateUtils
|
import roomescape.common.util.DateUtils
|
||||||
import roomescape.user.business.UserService
|
import roomescape.user.business.UserService
|
||||||
import roomescape.user.web.UserContactRetrieveResponse
|
import roomescape.user.web.UserContactResponse
|
||||||
import roomescape.payment.business.PaymentService
|
import roomescape.payment.business.PaymentService
|
||||||
import roomescape.payment.web.PaymentRetrieveResponse
|
import roomescape.payment.web.PaymentWithDetailResponse
|
||||||
import roomescape.reservation.exception.ReservationErrorCode
|
import roomescape.reservation.exception.ReservationErrorCode
|
||||||
import roomescape.reservation.exception.ReservationException
|
import roomescape.reservation.exception.ReservationException
|
||||||
import roomescape.reservation.infrastructure.persistence.*
|
import roomescape.reservation.infrastructure.persistence.*
|
||||||
@ -23,7 +23,7 @@ import roomescape.schedule.infrastructure.persistence.ScheduleStatus
|
|||||||
import roomescape.schedule.web.ScheduleSummaryResponse
|
import roomescape.schedule.web.ScheduleSummaryResponse
|
||||||
import roomescape.schedule.web.ScheduleUpdateRequest
|
import roomescape.schedule.web.ScheduleUpdateRequest
|
||||||
import roomescape.theme.business.ThemeService
|
import roomescape.theme.business.ThemeService
|
||||||
import roomescape.theme.web.ThemeInfoRetrieveResponse
|
import roomescape.theme.web.ThemeInfoResponse
|
||||||
import java.time.LocalDate
|
import java.time.LocalDate
|
||||||
import java.time.LocalDateTime
|
import java.time.LocalDateTime
|
||||||
|
|
||||||
@ -91,7 +91,7 @@ class ReservationService(
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Transactional(readOnly = true)
|
@Transactional(readOnly = true)
|
||||||
fun findUserSummaryReservation(user: CurrentUserContext): ReservationSummaryRetrieveListResponse {
|
fun findUserSummaryReservation(user: CurrentUserContext): ReservationSummaryListResponse {
|
||||||
log.info { "[ReservationService.findSummaryByMemberId] 예약 조회 시작: userId=${user.id}" }
|
log.info { "[ReservationService.findSummaryByMemberId] 예약 조회 시작: userId=${user.id}" }
|
||||||
|
|
||||||
val reservations: List<ReservationEntity> = reservationRepository.findAllByUserIdAndStatusIsIn(
|
val reservations: List<ReservationEntity> = reservationRepository.findAllByUserIdAndStatusIsIn(
|
||||||
@ -99,11 +99,11 @@ class ReservationService(
|
|||||||
statuses = listOf(ReservationStatus.CONFIRMED, ReservationStatus.CANCELED)
|
statuses = listOf(ReservationStatus.CONFIRMED, ReservationStatus.CANCELED)
|
||||||
)
|
)
|
||||||
|
|
||||||
return ReservationSummaryRetrieveListResponse(reservations.map {
|
return ReservationSummaryListResponse(reservations.map {
|
||||||
val schedule: ScheduleSummaryResponse = scheduleService.findSummaryById(it.scheduleId)
|
val schedule: ScheduleSummaryResponse = scheduleService.findSummaryById(it.scheduleId)
|
||||||
val theme: ThemeInfoRetrieveResponse = themeService.findSummaryById(schedule.themeId)
|
val theme: ThemeInfoResponse = themeService.findSummaryById(schedule.themeId)
|
||||||
|
|
||||||
ReservationSummaryRetrieveResponse(
|
ReservationSummaryResponse(
|
||||||
id = it.id,
|
id = it.id,
|
||||||
themeName = theme.name,
|
themeName = theme.name,
|
||||||
date = schedule.date,
|
date = schedule.date,
|
||||||
@ -116,12 +116,12 @@ class ReservationService(
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Transactional(readOnly = true)
|
@Transactional(readOnly = true)
|
||||||
fun findDetailById(id: Long): ReservationDetailRetrieveResponse {
|
fun findDetailById(id: Long): ReservationDetailResponse {
|
||||||
log.info { "[ReservationService.findDetailById] 예약 상세 조회 시작: reservationId=${id}" }
|
log.info { "[ReservationService.findDetailById] 예약 상세 조회 시작: reservationId=${id}" }
|
||||||
|
|
||||||
val reservation: ReservationEntity = findOrThrow(id)
|
val reservation: ReservationEntity = findOrThrow(id)
|
||||||
val user: UserContactRetrieveResponse = userService.findContactById(reservation.userId)
|
val user: UserContactResponse = userService.findContactById(reservation.userId)
|
||||||
val paymentDetail: PaymentRetrieveResponse? = paymentService.findDetailByReservationId(id)
|
val paymentDetail: PaymentWithDetailResponse? = paymentService.findDetailByReservationId(id)
|
||||||
|
|
||||||
return reservation.toReservationDetailRetrieveResponse(
|
return reservation.toReservationDetailRetrieveResponse(
|
||||||
user = user,
|
user = user,
|
||||||
|
|||||||
@ -8,7 +8,7 @@ import roomescape.reservation.exception.ReservationException
|
|||||||
import roomescape.reservation.web.PendingReservationCreateRequest
|
import roomescape.reservation.web.PendingReservationCreateRequest
|
||||||
import roomescape.schedule.infrastructure.persistence.ScheduleStatus
|
import roomescape.schedule.infrastructure.persistence.ScheduleStatus
|
||||||
import roomescape.schedule.web.ScheduleSummaryResponse
|
import roomescape.schedule.web.ScheduleSummaryResponse
|
||||||
import roomescape.theme.web.ThemeInfoRetrieveResponse
|
import roomescape.theme.web.ThemeInfoResponse
|
||||||
|
|
||||||
private val log: KLogger = KotlinLogging.logger {}
|
private val log: KLogger = KotlinLogging.logger {}
|
||||||
|
|
||||||
@ -17,7 +17,7 @@ class ReservationValidator {
|
|||||||
|
|
||||||
fun validateCanCreate(
|
fun validateCanCreate(
|
||||||
schedule: ScheduleSummaryResponse,
|
schedule: ScheduleSummaryResponse,
|
||||||
theme: ThemeInfoRetrieveResponse,
|
theme: ThemeInfoResponse,
|
||||||
request: PendingReservationCreateRequest
|
request: PendingReservationCreateRequest
|
||||||
) {
|
) {
|
||||||
if (schedule.status != ScheduleStatus.HOLD) {
|
if (schedule.status != ScheduleStatus.HOLD) {
|
||||||
|
|||||||
@ -54,12 +54,12 @@ interface ReservationAPI {
|
|||||||
@ApiResponses(ApiResponse(responseCode = "200", description = "성공", useReturnTypeSchema = true))
|
@ApiResponses(ApiResponse(responseCode = "200", description = "성공", useReturnTypeSchema = true))
|
||||||
fun findSummaryByMemberId(
|
fun findSummaryByMemberId(
|
||||||
@CurrentUser user: CurrentUserContext,
|
@CurrentUser user: CurrentUserContext,
|
||||||
): ResponseEntity<CommonApiResponse<ReservationSummaryRetrieveListResponse>>
|
): ResponseEntity<CommonApiResponse<ReservationSummaryListResponse>>
|
||||||
|
|
||||||
@UserOnly
|
@UserOnly
|
||||||
@Operation(summary = "특정 예약에 대한 상세 조회", tags = ["로그인이 필요한 API"])
|
@Operation(summary = "특정 예약에 대한 상세 조회", tags = ["로그인이 필요한 API"])
|
||||||
@ApiResponses(ApiResponse(responseCode = "200", description = "성공", useReturnTypeSchema = true))
|
@ApiResponses(ApiResponse(responseCode = "200", description = "성공", useReturnTypeSchema = true))
|
||||||
fun findDetailById(
|
fun findDetailById(
|
||||||
@PathVariable("id") id: Long
|
@PathVariable("id") id: Long
|
||||||
): ResponseEntity<CommonApiResponse<ReservationDetailRetrieveResponse>>
|
): ResponseEntity<CommonApiResponse<ReservationDetailResponse>>
|
||||||
}
|
}
|
||||||
|
|||||||
@ -56,7 +56,7 @@ class ReservationController(
|
|||||||
@GetMapping("/reservations/summary")
|
@GetMapping("/reservations/summary")
|
||||||
override fun findSummaryByMemberId(
|
override fun findSummaryByMemberId(
|
||||||
@CurrentUser user: CurrentUserContext,
|
@CurrentUser user: CurrentUserContext,
|
||||||
): ResponseEntity<CommonApiResponse<ReservationSummaryRetrieveListResponse>> {
|
): ResponseEntity<CommonApiResponse<ReservationSummaryListResponse>> {
|
||||||
val response = reservationService.findUserSummaryReservation(user)
|
val response = reservationService.findUserSummaryReservation(user)
|
||||||
|
|
||||||
return ResponseEntity.ok(CommonApiResponse(response))
|
return ResponseEntity.ok(CommonApiResponse(response))
|
||||||
@ -65,7 +65,7 @@ class ReservationController(
|
|||||||
@GetMapping("/reservations/{id}/detail")
|
@GetMapping("/reservations/{id}/detail")
|
||||||
override fun findDetailById(
|
override fun findDetailById(
|
||||||
@PathVariable("id") id: Long
|
@PathVariable("id") id: Long
|
||||||
): ResponseEntity<CommonApiResponse<ReservationDetailRetrieveResponse>> {
|
): ResponseEntity<CommonApiResponse<ReservationDetailResponse>> {
|
||||||
val response = reservationService.findDetailById(id)
|
val response = reservationService.findDetailById(id)
|
||||||
|
|
||||||
return ResponseEntity.ok(CommonApiResponse(response))
|
return ResponseEntity.ok(CommonApiResponse(response))
|
||||||
|
|||||||
@ -1,8 +1,8 @@
|
|||||||
package roomescape.reservation.web
|
package roomescape.reservation.web
|
||||||
|
|
||||||
import jakarta.validation.constraints.NotEmpty
|
import jakarta.validation.constraints.NotEmpty
|
||||||
import roomescape.user.web.UserContactRetrieveResponse
|
import roomescape.user.web.UserContactResponse
|
||||||
import roomescape.payment.web.PaymentRetrieveResponse
|
import roomescape.payment.web.PaymentWithDetailResponse
|
||||||
import roomescape.reservation.infrastructure.persistence.ReservationEntity
|
import roomescape.reservation.infrastructure.persistence.ReservationEntity
|
||||||
import roomescape.reservation.infrastructure.persistence.ReservationStatus
|
import roomescape.reservation.infrastructure.persistence.ReservationStatus
|
||||||
import java.time.LocalDate
|
import java.time.LocalDate
|
||||||
@ -34,7 +34,7 @@ data class PendingReservationCreateResponse(
|
|||||||
val id: Long
|
val id: Long
|
||||||
)
|
)
|
||||||
|
|
||||||
data class ReservationSummaryRetrieveResponse(
|
data class ReservationSummaryResponse(
|
||||||
val id: Long,
|
val id: Long,
|
||||||
val themeName: String,
|
val themeName: String,
|
||||||
val date: LocalDate,
|
val date: LocalDate,
|
||||||
@ -42,22 +42,22 @@ data class ReservationSummaryRetrieveResponse(
|
|||||||
val status: ReservationStatus
|
val status: ReservationStatus
|
||||||
)
|
)
|
||||||
|
|
||||||
data class ReservationSummaryRetrieveListResponse(
|
data class ReservationSummaryListResponse(
|
||||||
val reservations: List<ReservationSummaryRetrieveResponse>
|
val reservations: List<ReservationSummaryResponse>
|
||||||
)
|
)
|
||||||
|
|
||||||
data class ReservationDetailRetrieveResponse(
|
data class ReservationDetailResponse(
|
||||||
val id: Long,
|
val id: Long,
|
||||||
val user: UserContactRetrieveResponse,
|
val user: UserContactResponse,
|
||||||
val applicationDateTime: LocalDateTime,
|
val applicationDateTime: LocalDateTime,
|
||||||
val payment: PaymentRetrieveResponse?,
|
val payment: PaymentWithDetailResponse?,
|
||||||
)
|
)
|
||||||
|
|
||||||
fun ReservationEntity.toReservationDetailRetrieveResponse(
|
fun ReservationEntity.toReservationDetailRetrieveResponse(
|
||||||
user: UserContactRetrieveResponse,
|
user: UserContactResponse,
|
||||||
payment: PaymentRetrieveResponse?,
|
payment: PaymentWithDetailResponse?,
|
||||||
): ReservationDetailRetrieveResponse {
|
): ReservationDetailResponse {
|
||||||
return ReservationDetailRetrieveResponse(
|
return ReservationDetailResponse(
|
||||||
id = this.id,
|
id = this.id,
|
||||||
user = user,
|
user = user,
|
||||||
applicationDateTime = this.createdAt,
|
applicationDateTime = this.createdAt,
|
||||||
|
|||||||
@ -37,18 +37,18 @@ class ScheduleService(
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Transactional(readOnly = true)
|
@Transactional(readOnly = true)
|
||||||
fun findSchedules(date: LocalDate, themeId: Long): ScheduleRetrieveListResponse {
|
fun findSchedules(date: LocalDate, themeId: Long): ScheduleListByDateResponse {
|
||||||
log.info { "[ScheduleService.findSchedules] 동일한 날짜와 테마인 모든 일정 조회: date=${date}, themeId=${themeId}" }
|
log.info { "[ScheduleService.findSchedules] 동일한 날짜와 테마인 모든 일정 조회: date=${date}, themeId=${themeId}" }
|
||||||
|
|
||||||
return scheduleRepository.findAllByDateAndThemeId(date, themeId)
|
return scheduleRepository.findAllByDateAndThemeId(date, themeId)
|
||||||
.toRetrieveListResponse()
|
.toListResponse()
|
||||||
.also {
|
.also {
|
||||||
log.info { "[ScheduleService.findSchedules] date=${date}, themeId=${themeId} 인 ${it.schedules.size}개 일정 조회 완료" }
|
log.info { "[ScheduleService.findSchedules] date=${date}, themeId=${themeId} 인 ${it.schedules.size}개 일정 조회 완료" }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Transactional(readOnly = true)
|
@Transactional(readOnly = true)
|
||||||
fun findDetail(id: Long): ScheduleDetailRetrieveResponse {
|
fun findDetail(id: Long): ScheduleDetailResponse {
|
||||||
log.info { "[ScheduleService.findDetail] 일정 상세 정보조회 시작: id=$id" }
|
log.info { "[ScheduleService.findDetail] 일정 상세 정보조회 시작: id=$id" }
|
||||||
|
|
||||||
val schedule: ScheduleEntity = findOrThrow(id)
|
val schedule: ScheduleEntity = findOrThrow(id)
|
||||||
@ -56,7 +56,7 @@ class ScheduleService(
|
|||||||
val createdBy = adminService.findOperatorById(schedule.createdBy)
|
val createdBy = adminService.findOperatorById(schedule.createdBy)
|
||||||
val updatedBy = adminService.findOperatorById(schedule.updatedBy)
|
val updatedBy = adminService.findOperatorById(schedule.updatedBy)
|
||||||
|
|
||||||
return schedule.toDetailRetrieveResponse(createdBy, updatedBy)
|
return schedule.toDetailResponse(createdBy, updatedBy)
|
||||||
.also {
|
.also {
|
||||||
log.info { "[ScheduleService.findDetail] 일정 상세 조회 완료: id=$id" }
|
log.info { "[ScheduleService.findDetail] 일정 상세 조회 완료: id=$id" }
|
||||||
}
|
}
|
||||||
|
|||||||
@ -38,7 +38,7 @@ interface ScheduleAPI {
|
|||||||
fun findAllTime(
|
fun findAllTime(
|
||||||
@RequestParam("date") @DateTimeFormat(pattern = "yyyy-MM-dd") date: LocalDate,
|
@RequestParam("date") @DateTimeFormat(pattern = "yyyy-MM-dd") date: LocalDate,
|
||||||
@RequestParam("themeId") themeId: Long
|
@RequestParam("themeId") themeId: Long
|
||||||
): ResponseEntity<CommonApiResponse<ScheduleRetrieveListResponse>>
|
): ResponseEntity<CommonApiResponse<ScheduleListByDateResponse>>
|
||||||
|
|
||||||
@UserOnly
|
@UserOnly
|
||||||
@Operation(summary = "일정을 Hold 상태로 변경", tags = ["로그인이 필요한 API"])
|
@Operation(summary = "일정을 Hold 상태로 변경", tags = ["로그인이 필요한 API"])
|
||||||
@ -58,7 +58,7 @@ interface ScheduleAPI {
|
|||||||
@ApiResponses(ApiResponse(responseCode = "200", description = "감사 정보를 포함하여 일정 상세 조회", useReturnTypeSchema = true))
|
@ApiResponses(ApiResponse(responseCode = "200", description = "감사 정보를 포함하여 일정 상세 조회", useReturnTypeSchema = true))
|
||||||
fun findScheduleDetail(
|
fun findScheduleDetail(
|
||||||
@PathVariable("id") id: Long
|
@PathVariable("id") id: Long
|
||||||
): ResponseEntity<CommonApiResponse<ScheduleDetailRetrieveResponse>>
|
): ResponseEntity<CommonApiResponse<ScheduleDetailResponse>>
|
||||||
|
|
||||||
@AdminOnly(privilege = Privilege.CREATE)
|
@AdminOnly(privilege = Privilege.CREATE)
|
||||||
@Operation(summary = "일정 생성", tags = ["관리자 로그인이 필요한 API"])
|
@Operation(summary = "일정 생성", tags = ["관리자 로그인이 필요한 API"])
|
||||||
|
|||||||
@ -26,7 +26,7 @@ class ScheduleController(
|
|||||||
override fun findAllTime(
|
override fun findAllTime(
|
||||||
@RequestParam("date") @DateTimeFormat(pattern = "yyyy-MM-dd") date: LocalDate,
|
@RequestParam("date") @DateTimeFormat(pattern = "yyyy-MM-dd") date: LocalDate,
|
||||||
@RequestParam("themeId") themeId: Long
|
@RequestParam("themeId") themeId: Long
|
||||||
): ResponseEntity<CommonApiResponse<ScheduleRetrieveListResponse>> {
|
): ResponseEntity<CommonApiResponse<ScheduleListByDateResponse>> {
|
||||||
val response = scheduleService.findSchedules(date, themeId)
|
val response = scheduleService.findSchedules(date, themeId)
|
||||||
|
|
||||||
return ResponseEntity.ok(CommonApiResponse(response))
|
return ResponseEntity.ok(CommonApiResponse(response))
|
||||||
@ -35,7 +35,7 @@ class ScheduleController(
|
|||||||
@GetMapping("/schedules/{id}")
|
@GetMapping("/schedules/{id}")
|
||||||
override fun findScheduleDetail(
|
override fun findScheduleDetail(
|
||||||
@PathVariable("id") id: Long
|
@PathVariable("id") id: Long
|
||||||
): ResponseEntity<CommonApiResponse<ScheduleDetailRetrieveResponse>> {
|
): ResponseEntity<CommonApiResponse<ScheduleDetailResponse>> {
|
||||||
val response = scheduleService.findDetail(id)
|
val response = scheduleService.findDetail(id)
|
||||||
|
|
||||||
return ResponseEntity.ok(CommonApiResponse(response))
|
return ResponseEntity.ok(CommonApiResponse(response))
|
||||||
|
|||||||
@ -11,18 +11,18 @@ data class AvailableThemeIdListResponse(
|
|||||||
val themeIds: List<Long>
|
val themeIds: List<Long>
|
||||||
)
|
)
|
||||||
|
|
||||||
data class ScheduleRetrieveResponse(
|
data class ScheduleByDateResponse(
|
||||||
val id: Long,
|
val id: Long,
|
||||||
val time: LocalTime,
|
val time: LocalTime,
|
||||||
val status: ScheduleStatus
|
val status: ScheduleStatus
|
||||||
)
|
)
|
||||||
|
|
||||||
data class ScheduleRetrieveListResponse(
|
data class ScheduleListByDateResponse(
|
||||||
val schedules: List<ScheduleRetrieveResponse>
|
val schedules: List<ScheduleByDateResponse>
|
||||||
)
|
)
|
||||||
|
|
||||||
fun List<ScheduleEntity>.toRetrieveListResponse() = ScheduleRetrieveListResponse(
|
fun List<ScheduleEntity>.toListResponse() = ScheduleListByDateResponse(
|
||||||
this.map { ScheduleRetrieveResponse(it.id, it.time, it.status) }
|
this.map { ScheduleByDateResponse(it.id, it.time, it.status) }
|
||||||
)
|
)
|
||||||
|
|
||||||
data class ScheduleCreateRequest(
|
data class ScheduleCreateRequest(
|
||||||
@ -44,7 +44,7 @@ data class ScheduleUpdateRequest(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
data class ScheduleDetailRetrieveResponse(
|
data class ScheduleDetailResponse(
|
||||||
val id: Long,
|
val id: Long,
|
||||||
val date: LocalDate,
|
val date: LocalDate,
|
||||||
val time: LocalTime,
|
val time: LocalTime,
|
||||||
@ -55,7 +55,7 @@ data class ScheduleDetailRetrieveResponse(
|
|||||||
val updatedBy: OperatorInfo,
|
val updatedBy: OperatorInfo,
|
||||||
)
|
)
|
||||||
|
|
||||||
fun ScheduleEntity.toDetailRetrieveResponse(createdBy: OperatorInfo, updatedBy: OperatorInfo) = ScheduleDetailRetrieveResponse(
|
fun ScheduleEntity.toDetailResponse(createdBy: OperatorInfo, updatedBy: OperatorInfo) = ScheduleDetailResponse(
|
||||||
id = this.id,
|
id = this.id,
|
||||||
date = this.date,
|
date = this.date,
|
||||||
time = this.time,
|
time = this.time,
|
||||||
|
|||||||
@ -24,7 +24,7 @@ class ThemeService(
|
|||||||
private val adminService: AdminService
|
private val adminService: AdminService
|
||||||
) {
|
) {
|
||||||
@Transactional(readOnly = true)
|
@Transactional(readOnly = true)
|
||||||
fun findThemesByIds(request: ThemeIdListRetrieveResponse): ThemeInfoListRetrieveResponse {
|
fun findThemesByIds(request: ThemeIdListResponse): ThemeInfoListResponse {
|
||||||
log.info { "[ThemeService.findThemesByIds] 예약 페이지에서의 테마 목록 조회 시작: themeIds=${request.themeIds}" }
|
log.info { "[ThemeService.findThemesByIds] 예약 페이지에서의 테마 목록 조회 시작: themeIds=${request.themeIds}" }
|
||||||
val result: MutableList<ThemeEntity> = mutableListOf()
|
val result: MutableList<ThemeEntity> = mutableListOf()
|
||||||
|
|
||||||
@ -37,22 +37,22 @@ class ThemeService(
|
|||||||
result.add(theme)
|
result.add(theme)
|
||||||
}
|
}
|
||||||
|
|
||||||
return result.toRetrieveListResponse().also {
|
return result.toListResponse().also {
|
||||||
log.info { "[ThemeService.findThemesByIds] ${it.themes.size} / ${request.themeIds.size} 개 테마 조회 완료" }
|
log.info { "[ThemeService.findThemesByIds] ${it.themes.size} / ${request.themeIds.size} 개 테마 조회 완료" }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Transactional(readOnly = true)
|
@Transactional(readOnly = true)
|
||||||
fun findThemesForReservation(): ThemeInfoListRetrieveResponse {
|
fun findThemesForReservation(): ThemeInfoListResponse {
|
||||||
log.info { "[ThemeService.findThemesForReservation] 예약 페이지에서의 테마 목록 조회 시작" }
|
log.info { "[ThemeService.findThemesForReservation] 예약 페이지에서의 테마 목록 조회 시작" }
|
||||||
|
|
||||||
return themeRepository.findOpenedThemes()
|
return themeRepository.findOpenedThemes()
|
||||||
.toRetrieveListResponse()
|
.toListResponse()
|
||||||
.also { log.info { "[ThemeService.findThemesForReservation] ${it.themes.size}개 테마 조회 완료" } }
|
.also { log.info { "[ThemeService.findThemesForReservation] ${it.themes.size}개 테마 조회 완료" } }
|
||||||
}
|
}
|
||||||
|
|
||||||
@Transactional(readOnly = true)
|
@Transactional(readOnly = true)
|
||||||
fun findAdminThemes(): AdminThemeSummaryListRetrieveResponse {
|
fun findAdminThemes(): AdminThemeSummaryListResponse {
|
||||||
log.info { "[ThemeService.findAdminThemes] 관리자 페이지에서의 테마 목록 조회 시작" }
|
log.info { "[ThemeService.findAdminThemes] 관리자 페이지에서의 테마 목록 조회 시작" }
|
||||||
|
|
||||||
return themeRepository.findAll()
|
return themeRepository.findAll()
|
||||||
@ -61,7 +61,7 @@ class ThemeService(
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Transactional(readOnly = true)
|
@Transactional(readOnly = true)
|
||||||
fun findAdminThemeDetail(id: Long): AdminThemeDetailRetrieveResponse {
|
fun findAdminThemeDetail(id: Long): AdminThemeDetailResponse {
|
||||||
log.info { "[ThemeService.findAdminThemeDetail] 관리자 페이지에서의 테마 상세 정보 조회 시작: id=${id}" }
|
log.info { "[ThemeService.findAdminThemeDetail] 관리자 페이지에서의 테마 상세 정보 조회 시작: id=${id}" }
|
||||||
|
|
||||||
val theme: ThemeEntity = findOrThrow(id)
|
val theme: ThemeEntity = findOrThrow(id)
|
||||||
@ -74,7 +74,7 @@ class ThemeService(
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Transactional(readOnly = true)
|
@Transactional(readOnly = true)
|
||||||
fun findSummaryById(id: Long): ThemeInfoRetrieveResponse {
|
fun findSummaryById(id: Long): ThemeInfoResponse {
|
||||||
log.info { "[ThemeService.findById] 테마 조회 시작: id=$id" }
|
log.info { "[ThemeService.findById] 테마 조회 시작: id=$id" }
|
||||||
|
|
||||||
return findOrThrow(id).toSummaryResponse()
|
return findOrThrow(id).toSummaryResponse()
|
||||||
|
|||||||
@ -20,12 +20,12 @@ interface ThemeAPIV2 {
|
|||||||
@AdminOnly(privilege = Privilege.READ_SUMMARY)
|
@AdminOnly(privilege = Privilege.READ_SUMMARY)
|
||||||
@Operation(summary = "모든 테마 조회", description = "관리자 페이지에서 요약된 테마 목록을 조회합니다.", tags = ["관리자 로그인이 필요한 API"])
|
@Operation(summary = "모든 테마 조회", description = "관리자 페이지에서 요약된 테마 목록을 조회합니다.", tags = ["관리자 로그인이 필요한 API"])
|
||||||
@ApiResponses(ApiResponse(responseCode = "200", description = "성공", useReturnTypeSchema = true))
|
@ApiResponses(ApiResponse(responseCode = "200", description = "성공", useReturnTypeSchema = true))
|
||||||
fun findAdminThemes(): ResponseEntity<CommonApiResponse<AdminThemeSummaryListRetrieveResponse>>
|
fun findAdminThemes(): ResponseEntity<CommonApiResponse<AdminThemeSummaryListResponse>>
|
||||||
|
|
||||||
@AdminOnly(privilege = Privilege.READ_DETAIL)
|
@AdminOnly(privilege = Privilege.READ_DETAIL)
|
||||||
@Operation(summary = "테마 상세 조회", description = "해당 테마의 상세 정보를 조회합니다.", tags = ["관리자 로그인이 필요한 API"])
|
@Operation(summary = "테마 상세 조회", description = "해당 테마의 상세 정보를 조회합니다.", tags = ["관리자 로그인이 필요한 API"])
|
||||||
@ApiResponses(ApiResponse(responseCode = "200", description = "성공", useReturnTypeSchema = true))
|
@ApiResponses(ApiResponse(responseCode = "200", description = "성공", useReturnTypeSchema = true))
|
||||||
fun findAdminThemeDetail(@PathVariable("id") id: Long): ResponseEntity<CommonApiResponse<AdminThemeDetailRetrieveResponse>>
|
fun findAdminThemeDetail(@PathVariable("id") id: Long): ResponseEntity<CommonApiResponse<AdminThemeDetailResponse>>
|
||||||
|
|
||||||
@AdminOnly(privilege = Privilege.CREATE)
|
@AdminOnly(privilege = Privilege.CREATE)
|
||||||
@Operation(summary = "테마 추가", tags = ["관리자 로그인이 필요한 API"])
|
@Operation(summary = "테마 추가", tags = ["관리자 로그인이 필요한 API"])
|
||||||
@ -48,10 +48,10 @@ interface ThemeAPIV2 {
|
|||||||
@Public
|
@Public
|
||||||
@Operation(summary = "예약 페이지에서 모든 테마 조회", description = "모든 테마를 조회합니다.")
|
@Operation(summary = "예약 페이지에서 모든 테마 조회", description = "모든 테마를 조회합니다.")
|
||||||
@ApiResponses(ApiResponse(responseCode = "200", description = "성공", useReturnTypeSchema = true))
|
@ApiResponses(ApiResponse(responseCode = "200", description = "성공", useReturnTypeSchema = true))
|
||||||
fun findUserThemes(): ResponseEntity<CommonApiResponse<ThemeInfoListRetrieveResponse>>
|
fun findUserThemes(): ResponseEntity<CommonApiResponse<ThemeInfoListResponse>>
|
||||||
|
|
||||||
@Public
|
@Public
|
||||||
@Operation(summary = "예약 페이지에서 입력한 날짜에 가능한 테마 조회", description = "입력한 날짜에 가능한 테마를 조회합니다.")
|
@Operation(summary = "예약 페이지에서 입력한 날짜에 가능한 테마 조회", description = "입력한 날짜에 가능한 테마를 조회합니다.")
|
||||||
@ApiResponses(ApiResponse(responseCode = "200", description = "성공", useReturnTypeSchema = true))
|
@ApiResponses(ApiResponse(responseCode = "200", description = "성공", useReturnTypeSchema = true))
|
||||||
fun findThemesByIds(request: ThemeIdListRetrieveResponse): ResponseEntity<CommonApiResponse<ThemeInfoListRetrieveResponse>>
|
fun findThemesByIds(request: ThemeIdListResponse): ResponseEntity<CommonApiResponse<ThemeInfoListResponse>>
|
||||||
}
|
}
|
||||||
|
|||||||
@ -14,29 +14,29 @@ class ThemeController(
|
|||||||
|
|
||||||
@PostMapping("/themes/retrieve")
|
@PostMapping("/themes/retrieve")
|
||||||
override fun findThemesByIds(
|
override fun findThemesByIds(
|
||||||
@RequestBody request: ThemeIdListRetrieveResponse
|
@RequestBody request: ThemeIdListResponse
|
||||||
): ResponseEntity<CommonApiResponse<ThemeInfoListRetrieveResponse>> {
|
): ResponseEntity<CommonApiResponse<ThemeInfoListResponse>> {
|
||||||
val response = themeService.findThemesByIds(request)
|
val response = themeService.findThemesByIds(request)
|
||||||
|
|
||||||
return ResponseEntity.ok(CommonApiResponse(response))
|
return ResponseEntity.ok(CommonApiResponse(response))
|
||||||
}
|
}
|
||||||
|
|
||||||
@GetMapping("/v2/themes")
|
@GetMapping("/v2/themes")
|
||||||
override fun findUserThemes(): ResponseEntity<CommonApiResponse<ThemeInfoListRetrieveResponse>> {
|
override fun findUserThemes(): ResponseEntity<CommonApiResponse<ThemeInfoListResponse>> {
|
||||||
val response = themeService.findThemesForReservation()
|
val response = themeService.findThemesForReservation()
|
||||||
|
|
||||||
return ResponseEntity.ok(CommonApiResponse(response))
|
return ResponseEntity.ok(CommonApiResponse(response))
|
||||||
}
|
}
|
||||||
|
|
||||||
@GetMapping("/admin/themes")
|
@GetMapping("/admin/themes")
|
||||||
override fun findAdminThemes(): ResponseEntity<CommonApiResponse<AdminThemeSummaryListRetrieveResponse>> {
|
override fun findAdminThemes(): ResponseEntity<CommonApiResponse<AdminThemeSummaryListResponse>> {
|
||||||
val response = themeService.findAdminThemes()
|
val response = themeService.findAdminThemes()
|
||||||
|
|
||||||
return ResponseEntity.ok(CommonApiResponse(response))
|
return ResponseEntity.ok(CommonApiResponse(response))
|
||||||
}
|
}
|
||||||
|
|
||||||
@GetMapping("/admin/themes/{id}")
|
@GetMapping("/admin/themes/{id}")
|
||||||
override fun findAdminThemeDetail(@PathVariable id: Long): ResponseEntity<CommonApiResponse<AdminThemeDetailRetrieveResponse>> {
|
override fun findAdminThemeDetail(@PathVariable id: Long): ResponseEntity<CommonApiResponse<AdminThemeDetailResponse>> {
|
||||||
val response = themeService.findAdminThemeDetail(id)
|
val response = themeService.findAdminThemeDetail(id)
|
||||||
|
|
||||||
return ResponseEntity.ok(CommonApiResponse(response))
|
return ResponseEntity.ok(CommonApiResponse(response))
|
||||||
|
|||||||
@ -66,7 +66,7 @@ data class ThemeUpdateRequest(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
data class AdminThemeSummaryRetrieveResponse(
|
data class AdminThemeSummaryResponse(
|
||||||
val id: Long,
|
val id: Long,
|
||||||
val name: String,
|
val name: String,
|
||||||
val difficulty: Difficulty,
|
val difficulty: Difficulty,
|
||||||
@ -74,7 +74,7 @@ data class AdminThemeSummaryRetrieveResponse(
|
|||||||
val isOpen: Boolean
|
val isOpen: Boolean
|
||||||
)
|
)
|
||||||
|
|
||||||
fun ThemeEntity.toAdminThemeSummaryResponse() = AdminThemeSummaryRetrieveResponse(
|
fun ThemeEntity.toAdminThemeSummaryResponse() = AdminThemeSummaryResponse(
|
||||||
id = this.id,
|
id = this.id,
|
||||||
name = this.name,
|
name = this.name,
|
||||||
difficulty = this.difficulty,
|
difficulty = this.difficulty,
|
||||||
@ -82,15 +82,15 @@ fun ThemeEntity.toAdminThemeSummaryResponse() = AdminThemeSummaryRetrieveRespons
|
|||||||
isOpen = this.isOpen
|
isOpen = this.isOpen
|
||||||
)
|
)
|
||||||
|
|
||||||
data class AdminThemeSummaryListRetrieveResponse(
|
data class AdminThemeSummaryListResponse(
|
||||||
val themes: List<AdminThemeSummaryRetrieveResponse>
|
val themes: List<AdminThemeSummaryResponse>
|
||||||
)
|
)
|
||||||
|
|
||||||
fun List<ThemeEntity>.toAdminThemeSummaryListResponse() = AdminThemeSummaryListRetrieveResponse(
|
fun List<ThemeEntity>.toAdminThemeSummaryListResponse() = AdminThemeSummaryListResponse(
|
||||||
themes = this.map { it.toAdminThemeSummaryResponse() }
|
themes = this.map { it.toAdminThemeSummaryResponse() }
|
||||||
)
|
)
|
||||||
|
|
||||||
data class AdminThemeDetailRetrieveResponse(
|
data class AdminThemeDetailResponse(
|
||||||
val id: Long,
|
val id: Long,
|
||||||
val name: String,
|
val name: String,
|
||||||
val description: String,
|
val description: String,
|
||||||
@ -110,7 +110,7 @@ data class AdminThemeDetailRetrieveResponse(
|
|||||||
)
|
)
|
||||||
|
|
||||||
fun ThemeEntity.toAdminThemeDetailResponse(createdBy: OperatorInfo, updatedBy: OperatorInfo) =
|
fun ThemeEntity.toAdminThemeDetailResponse(createdBy: OperatorInfo, updatedBy: OperatorInfo) =
|
||||||
AdminThemeDetailRetrieveResponse(
|
AdminThemeDetailResponse(
|
||||||
id = this.id,
|
id = this.id,
|
||||||
name = this.name,
|
name = this.name,
|
||||||
description = this.description,
|
description = this.description,
|
||||||
@ -129,11 +129,11 @@ fun ThemeEntity.toAdminThemeDetailResponse(createdBy: OperatorInfo, updatedBy: O
|
|||||||
updatedBy = updatedBy
|
updatedBy = updatedBy
|
||||||
)
|
)
|
||||||
|
|
||||||
data class ThemeIdListRetrieveResponse(
|
data class ThemeIdListResponse(
|
||||||
val themeIds: List<Long>
|
val themeIds: List<Long>
|
||||||
)
|
)
|
||||||
|
|
||||||
data class ThemeInfoRetrieveResponse(
|
data class ThemeInfoResponse(
|
||||||
val id: Long,
|
val id: Long,
|
||||||
val name: String,
|
val name: String,
|
||||||
val thumbnailUrl: String,
|
val thumbnailUrl: String,
|
||||||
@ -147,7 +147,7 @@ data class ThemeInfoRetrieveResponse(
|
|||||||
val expectedMinutesTo: Short
|
val expectedMinutesTo: Short
|
||||||
)
|
)
|
||||||
|
|
||||||
fun ThemeEntity.toSummaryResponse() = ThemeInfoRetrieveResponse(
|
fun ThemeEntity.toSummaryResponse() = ThemeInfoResponse(
|
||||||
id = this.id,
|
id = this.id,
|
||||||
name = this.name,
|
name = this.name,
|
||||||
thumbnailUrl = this.thumbnailUrl,
|
thumbnailUrl = this.thumbnailUrl,
|
||||||
@ -161,10 +161,10 @@ fun ThemeEntity.toSummaryResponse() = ThemeInfoRetrieveResponse(
|
|||||||
expectedMinutesTo = this.expectedMinutesTo
|
expectedMinutesTo = this.expectedMinutesTo
|
||||||
)
|
)
|
||||||
|
|
||||||
data class ThemeInfoListRetrieveResponse(
|
data class ThemeInfoListResponse(
|
||||||
val themes: List<ThemeInfoRetrieveResponse>
|
val themes: List<ThemeInfoResponse>
|
||||||
)
|
)
|
||||||
|
|
||||||
fun List<ThemeEntity>.toRetrieveListResponse() = ThemeInfoListRetrieveResponse(
|
fun List<ThemeEntity>.toListResponse() = ThemeInfoListResponse(
|
||||||
themes = this.map { it.toSummaryResponse() }
|
themes = this.map { it.toSummaryResponse() }
|
||||||
)
|
)
|
||||||
|
|||||||
@ -13,7 +13,7 @@ import roomescape.common.dto.UserLoginCredentials
|
|||||||
import roomescape.user.exception.UserErrorCode
|
import roomescape.user.exception.UserErrorCode
|
||||||
import roomescape.user.exception.UserException
|
import roomescape.user.exception.UserException
|
||||||
import roomescape.user.infrastructure.persistence.*
|
import roomescape.user.infrastructure.persistence.*
|
||||||
import roomescape.user.web.UserContactRetrieveResponse
|
import roomescape.user.web.UserContactResponse
|
||||||
import roomescape.user.web.UserCreateRequest
|
import roomescape.user.web.UserCreateRequest
|
||||||
import roomescape.user.web.UserCreateResponse
|
import roomescape.user.web.UserCreateResponse
|
||||||
import roomescape.user.web.toEntity
|
import roomescape.user.web.toEntity
|
||||||
@ -56,12 +56,12 @@ class UserService(
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Transactional(readOnly = true)
|
@Transactional(readOnly = true)
|
||||||
fun findContactById(id: Long) : UserContactRetrieveResponse {
|
fun findContactById(id: Long) : UserContactResponse {
|
||||||
log.info { "[UserService.findContactById] 회원 연락 정보 조회 시작: id=${id}" }
|
log.info { "[UserService.findContactById] 회원 연락 정보 조회 시작: id=${id}" }
|
||||||
|
|
||||||
val user = findOrThrow(id)
|
val user = findOrThrow(id)
|
||||||
|
|
||||||
return UserContactRetrieveResponse(user.id, user.name, user.phone)
|
return UserContactResponse(user.id, user.name, user.phone)
|
||||||
.also {
|
.also {
|
||||||
log.info { "[UserService.findContactById] 회원 연락 정보 조회 완료: id=${id}, name=${it.name}" }
|
log.info { "[UserService.findContactById] 회원 연락 정보 조회 완료: id=${id}, name=${it.name}" }
|
||||||
}
|
}
|
||||||
|
|||||||
@ -12,7 +12,7 @@ import roomescape.auth.web.support.Public
|
|||||||
import roomescape.auth.web.support.UserOnly
|
import roomescape.auth.web.support.UserOnly
|
||||||
import roomescape.common.dto.CurrentUserContext
|
import roomescape.common.dto.CurrentUserContext
|
||||||
import roomescape.common.dto.response.CommonApiResponse
|
import roomescape.common.dto.response.CommonApiResponse
|
||||||
import roomescape.user.web.UserContactRetrieveResponse
|
import roomescape.user.web.UserContactResponse
|
||||||
import roomescape.user.web.UserCreateRequest
|
import roomescape.user.web.UserCreateRequest
|
||||||
import roomescape.user.web.UserCreateResponse
|
import roomescape.user.web.UserCreateResponse
|
||||||
|
|
||||||
@ -43,6 +43,6 @@ interface UserAPI {
|
|||||||
)
|
)
|
||||||
fun findContact(
|
fun findContact(
|
||||||
@CurrentUser user: CurrentUserContext
|
@CurrentUser user: CurrentUserContext
|
||||||
): ResponseEntity<CommonApiResponse<UserContactRetrieveResponse>>
|
): ResponseEntity<CommonApiResponse<UserContactResponse>>
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -29,7 +29,7 @@ class UserController(
|
|||||||
@GetMapping("/users/contact")
|
@GetMapping("/users/contact")
|
||||||
override fun findContact(
|
override fun findContact(
|
||||||
@CurrentUser user: CurrentUserContext
|
@CurrentUser user: CurrentUserContext
|
||||||
): ResponseEntity<CommonApiResponse<UserContactRetrieveResponse>> {
|
): ResponseEntity<CommonApiResponse<UserContactResponse>> {
|
||||||
val response = userService.findContactById(user.id)
|
val response = userService.findContactById(user.id)
|
||||||
|
|
||||||
return ResponseEntity.ok(CommonApiResponse(response))
|
return ResponseEntity.ok(CommonApiResponse(response))
|
||||||
|
|||||||
@ -42,7 +42,7 @@ data class UserCreateResponse(
|
|||||||
val name: String
|
val name: String
|
||||||
)
|
)
|
||||||
|
|
||||||
data class UserContactRetrieveResponse(
|
data class UserContactResponse(
|
||||||
val id: Long,
|
val id: Long,
|
||||||
val name: String,
|
val name: String,
|
||||||
val phone: String
|
val phone: String
|
||||||
|
|||||||
@ -14,9 +14,9 @@ import roomescape.payment.infrastructure.persistence.CanceledPaymentEntity
|
|||||||
import roomescape.payment.infrastructure.persistence.PaymentEntity
|
import roomescape.payment.infrastructure.persistence.PaymentEntity
|
||||||
import roomescape.payment.infrastructure.persistence.PaymentRepository
|
import roomescape.payment.infrastructure.persistence.PaymentRepository
|
||||||
import roomescape.payment.web.PaymentConfirmRequest
|
import roomescape.payment.web.PaymentConfirmRequest
|
||||||
import roomescape.payment.web.PaymentRetrieveResponse
|
import roomescape.payment.web.PaymentWithDetailResponse
|
||||||
import roomescape.payment.web.toPaymentDetailResponse
|
import roomescape.payment.web.toPaymentDetailResponse
|
||||||
import roomescape.payment.web.toRetrieveResponse
|
import roomescape.payment.web.toDetailResponse
|
||||||
import roomescape.reservation.infrastructure.persistence.ReservationEntity
|
import roomescape.reservation.infrastructure.persistence.ReservationEntity
|
||||||
import roomescape.reservation.infrastructure.persistence.ReservationRepository
|
import roomescape.reservation.infrastructure.persistence.ReservationRepository
|
||||||
import roomescape.reservation.web.PendingReservationCreateRequest
|
import roomescape.reservation.web.PendingReservationCreateRequest
|
||||||
@ -171,7 +171,7 @@ class DummyInitializer(
|
|||||||
cardDetail: CardDetail? = null,
|
cardDetail: CardDetail? = null,
|
||||||
easyPayDetail: EasyPayDetail? = null,
|
easyPayDetail: EasyPayDetail? = null,
|
||||||
transferDetail: TransferDetail? = null,
|
transferDetail: TransferDetail? = null,
|
||||||
): PaymentRetrieveResponse {
|
): PaymentWithDetailResponse {
|
||||||
val method = if (easyPayDetail != null) {
|
val method = if (easyPayDetail != null) {
|
||||||
PaymentMethod.EASY_PAY
|
PaymentMethod.EASY_PAY
|
||||||
} else if (cardDetail != null) {
|
} else if (cardDetail != null) {
|
||||||
@ -200,7 +200,7 @@ class DummyInitializer(
|
|||||||
|
|
||||||
val detail = paymentWriter.createDetail(clientConfirmResponse, payment.id)
|
val detail = paymentWriter.createDetail(clientConfirmResponse, payment.id)
|
||||||
|
|
||||||
return payment.toRetrieveResponse(detail = detail.toPaymentDetailResponse(), cancel = null)
|
return payment.toDetailResponse(detail = detail.toPaymentDetailResponse(), cancel = null)
|
||||||
}
|
}
|
||||||
|
|
||||||
fun cancelPayment(
|
fun cancelPayment(
|
||||||
|
|||||||
@ -18,7 +18,7 @@ import roomescape.theme.business.MIN_PRICE
|
|||||||
import roomescape.theme.exception.ThemeErrorCode
|
import roomescape.theme.exception.ThemeErrorCode
|
||||||
import roomescape.theme.infrastructure.persistence.ThemeEntity
|
import roomescape.theme.infrastructure.persistence.ThemeEntity
|
||||||
import roomescape.theme.infrastructure.persistence.ThemeRepository
|
import roomescape.theme.infrastructure.persistence.ThemeRepository
|
||||||
import roomescape.theme.web.ThemeIdListRetrieveResponse
|
import roomescape.theme.web.ThemeIdListResponse
|
||||||
import roomescape.theme.web.ThemeUpdateRequest
|
import roomescape.theme.web.ThemeUpdateRequest
|
||||||
import roomescape.supports.*
|
import roomescape.supports.*
|
||||||
import roomescape.supports.ThemeFixture.createRequest
|
import roomescape.supports.ThemeFixture.createRequest
|
||||||
@ -296,7 +296,7 @@ class ThemeApiTest(
|
|||||||
runTest(
|
runTest(
|
||||||
token = authUtil.defaultUserLogin(),
|
token = authUtil.defaultUserLogin(),
|
||||||
using = {
|
using = {
|
||||||
body(ThemeIdListRetrieveResponse(themeIds))
|
body(ThemeIdListResponse(themeIds))
|
||||||
},
|
},
|
||||||
on = {
|
on = {
|
||||||
post("/themes/retrieve")
|
post("/themes/retrieve")
|
||||||
@ -322,7 +322,7 @@ class ThemeApiTest(
|
|||||||
runTest(
|
runTest(
|
||||||
token = authUtil.defaultUserLogin(),
|
token = authUtil.defaultUserLogin(),
|
||||||
using = {
|
using = {
|
||||||
body(ThemeIdListRetrieveResponse(themeIds))
|
body(ThemeIdListResponse(themeIds))
|
||||||
},
|
},
|
||||||
on = {
|
on = {
|
||||||
post("/themes/retrieve")
|
post("/themes/retrieve")
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user