diff --git a/service/src/main/kotlin/com/sangdol/roomescape/payment/business/PaymentWriter.kt b/service/src/main/kotlin/com/sangdol/roomescape/payment/business/PaymentWriter.kt index 06226ec4..bbeda832 100644 --- a/service/src/main/kotlin/com/sangdol/roomescape/payment/business/PaymentWriter.kt +++ b/service/src/main/kotlin/com/sangdol/roomescape/payment/business/PaymentWriter.kt @@ -10,7 +10,7 @@ import com.sangdol.roomescape.payment.infrastructure.persistence.* import io.github.oshai.kotlinlogging.KLogger import io.github.oshai.kotlinlogging.KotlinLogging import org.springframework.stereotype.Component -import java.time.LocalDateTime +import java.time.Instant private val log: KLogger = KotlinLogging.logger {} @@ -60,7 +60,7 @@ class PaymentWriter( fun cancel( userId: Long, payment: PaymentEntity, - requestedAt: LocalDateTime, + requestedAt: Instant, cancelResponse: PaymentClientCancelResponse ): CanceledPaymentEntity { log.debug { "[PaymentWriterV2.cancelPayment] 결제 취소 정보 저장 시작: payment.id=${payment.id}" } diff --git a/service/src/main/kotlin/com/sangdol/roomescape/payment/infrastructure/client/TosspayCancelDTO.kt b/service/src/main/kotlin/com/sangdol/roomescape/payment/infrastructure/client/TosspayCancelDTO.kt index a4077b27..2ba4f6a1 100644 --- a/service/src/main/kotlin/com/sangdol/roomescape/payment/infrastructure/client/TosspayCancelDTO.kt +++ b/service/src/main/kotlin/com/sangdol/roomescape/payment/infrastructure/client/TosspayCancelDTO.kt @@ -6,7 +6,7 @@ import com.fasterxml.jackson.databind.JsonNode import com.fasterxml.jackson.databind.annotation.JsonDeserialize import com.sangdol.roomescape.payment.infrastructure.common.PaymentStatus import com.sangdol.roomescape.payment.infrastructure.persistence.CanceledPaymentEntity -import java.time.LocalDateTime +import java.time.Instant import java.time.OffsetDateTime data class PaymentClientCancelResponse( @@ -28,10 +28,10 @@ fun CancelDetail.toEntity( id: Long, paymentId: Long, canceledBy: Long, - cancelRequestedAt: LocalDateTime + cancelRequestedAt: Instant ) = CanceledPaymentEntity( id = id, - canceledAt = this.canceledAt, + canceledAt = this.canceledAt.toInstant(), requestedAt = cancelRequestedAt, paymentId = paymentId, canceledBy = canceledBy, diff --git a/service/src/main/kotlin/com/sangdol/roomescape/payment/infrastructure/client/TosspayConfirmDTO.kt b/service/src/main/kotlin/com/sangdol/roomescape/payment/infrastructure/client/TosspayConfirmDTO.kt index ebcf0719..ca8f549a 100644 --- a/service/src/main/kotlin/com/sangdol/roomescape/payment/infrastructure/client/TosspayConfirmDTO.kt +++ b/service/src/main/kotlin/com/sangdol/roomescape/payment/infrastructure/client/TosspayConfirmDTO.kt @@ -34,8 +34,8 @@ fun PaymentClientConfirmResponse.toEntity( paymentKey = this.paymentKey, orderId = orderId, totalAmount = this.totalAmount, - requestedAt = this.requestedAt, - approvedAt = this.approvedAt, + requestedAt = this.requestedAt.toInstant(), + approvedAt = this.approvedAt.toInstant(), type = paymentType, method = this.method, status = this.status, diff --git a/service/src/main/kotlin/com/sangdol/roomescape/payment/infrastructure/persistence/CanceledPaymentEntity.kt b/service/src/main/kotlin/com/sangdol/roomescape/payment/infrastructure/persistence/CanceledPaymentEntity.kt index 4db2e14d..d85a26ce 100644 --- a/service/src/main/kotlin/com/sangdol/roomescape/payment/infrastructure/persistence/CanceledPaymentEntity.kt +++ b/service/src/main/kotlin/com/sangdol/roomescape/payment/infrastructure/persistence/CanceledPaymentEntity.kt @@ -3,8 +3,7 @@ package com.sangdol.roomescape.payment.infrastructure.persistence import com.sangdol.common.persistence.PersistableBaseEntity import jakarta.persistence.Entity import jakarta.persistence.Table -import java.time.LocalDateTime -import java.time.OffsetDateTime +import java.time.Instant @Entity @Table(name = "canceled_payment") @@ -12,8 +11,8 @@ class CanceledPaymentEntity( id: Long, val paymentId: Long, - val requestedAt: LocalDateTime, - val canceledAt: OffsetDateTime, + val requestedAt: Instant, + val canceledAt: Instant, val canceledBy: Long, val cancelReason: String, val cancelAmount: Int, diff --git a/service/src/main/kotlin/com/sangdol/roomescape/payment/infrastructure/persistence/PaymentEntity.kt b/service/src/main/kotlin/com/sangdol/roomescape/payment/infrastructure/persistence/PaymentEntity.kt index 48aa5587..1571e15e 100644 --- a/service/src/main/kotlin/com/sangdol/roomescape/payment/infrastructure/persistence/PaymentEntity.kt +++ b/service/src/main/kotlin/com/sangdol/roomescape/payment/infrastructure/persistence/PaymentEntity.kt @@ -8,7 +8,7 @@ import jakarta.persistence.Entity import jakarta.persistence.EnumType import jakarta.persistence.Enumerated import jakarta.persistence.Table -import java.time.OffsetDateTime +import java.time.Instant @Entity @Table(name = "payment") @@ -19,8 +19,8 @@ class PaymentEntity( val paymentKey: String, val orderId: String, val totalAmount: Int, - val requestedAt: OffsetDateTime, - val approvedAt: OffsetDateTime, + val requestedAt: Instant, + val approvedAt: Instant, @Enumerated(EnumType.STRING) val type: PaymentType, diff --git a/service/src/main/kotlin/com/sangdol/roomescape/payment/web/PaymentDTO.kt b/service/src/main/kotlin/com/sangdol/roomescape/payment/web/PaymentDTO.kt index 1e39f186..0ed997b0 100644 --- a/service/src/main/kotlin/com/sangdol/roomescape/payment/web/PaymentDTO.kt +++ b/service/src/main/kotlin/com/sangdol/roomescape/payment/web/PaymentDTO.kt @@ -6,8 +6,7 @@ import com.sangdol.roomescape.payment.infrastructure.common.PaymentStatus import com.sangdol.roomescape.payment.infrastructure.common.PaymentType import com.sangdol.roomescape.payment.infrastructure.persistence.* import com.sangdol.roomescape.payment.web.PaymentDetailResponse.* -import java.time.LocalDateTime -import java.time.OffsetDateTime +import java.time.Instant data class PaymentConfirmRequest( val paymentKey: String, @@ -24,7 +23,7 @@ data class PaymentCreateResponse( data class PaymentCancelRequest( val reservationId: Long, val cancelReason: String, - val requestedAt: LocalDateTime = LocalDateTime.now() + val requestedAt: Instant = Instant.now() ) data class PaymentWithDetailResponse( @@ -32,8 +31,8 @@ data class PaymentWithDetailResponse( val totalAmount: Int, val method: String, val status: PaymentStatus, - val requestedAt: OffsetDateTime, - val approvedAt: OffsetDateTime, + val requestedAt: Instant, + val approvedAt: Instant, val detail: PaymentDetailResponse?, val cancel: PaymentCancelDetailResponse?, ) @@ -120,8 +119,8 @@ fun PaymentEasypayPrepaidDetailEntity.toEasyPayPrepaidDetailResponse(): EasyPayP } data class PaymentCancelDetailResponse( - val cancellationRequestedAt: LocalDateTime, - val cancellationApprovedAt: OffsetDateTime?, + val cancellationRequestedAt: Instant, + val cancellationApprovedAt: Instant?, val cancelReason: String, val canceledBy: Long, ) diff --git a/service/src/test/kotlin/com/sangdol/roomescape/supports/DummyInitializer.kt b/service/src/test/kotlin/com/sangdol/roomescape/supports/DummyInitializer.kt index f1252bc3..3e71288a 100644 --- a/service/src/test/kotlin/com/sangdol/roomescape/supports/DummyInitializer.kt +++ b/service/src/test/kotlin/com/sangdol/roomescape/supports/DummyInitializer.kt @@ -30,7 +30,7 @@ import com.sangdol.roomescape.theme.web.ThemeCreateRequest import com.sangdol.roomescape.theme.web.toEntity import com.sangdol.roomescape.user.infrastructure.persistence.UserEntity import org.springframework.data.repository.findByIdOrNull -import java.time.LocalDateTime +import java.time.Instant class DummyInitializer( private val storeRepository: StoreRepository, @@ -206,7 +206,7 @@ class DummyInitializer( return paymentWriter.cancel( userId, payment, - requestedAt = LocalDateTime.now(), + requestedAt = Instant.now(), clientCancelResponse ) } diff --git a/service/src/test/kotlin/com/sangdol/roomescape/supports/Fixtures.kt b/service/src/test/kotlin/com/sangdol/roomescape/supports/Fixtures.kt index 3833b24c..27ef1215 100644 --- a/service/src/test/kotlin/com/sangdol/roomescape/supports/Fixtures.kt +++ b/service/src/test/kotlin/com/sangdol/roomescape/supports/Fixtures.kt @@ -26,7 +26,6 @@ import com.sangdol.roomescape.user.web.MIN_PASSWORD_LENGTH import com.sangdol.roomescape.user.web.UserCreateRequest import java.time.LocalDate import java.time.LocalTime -import java.time.OffsetDateTime const val INVALID_PK: Long = 9999L val IDGenerator = TsidIDGenerator(TsidFactory(0))