feat: 결제 처리 요청/응답 DTO 정의

This commit is contained in:
이상진 2025-10-01 10:50:41 +09:00
parent 466b73e5b2
commit cef306a918
2 changed files with 106 additions and 0 deletions

View File

@ -0,0 +1,15 @@
package com.sangdol.tosspaymock.web.dto
import java.time.OffsetDateTime
data class PaymentConfirmRequest(
val paymentKey: String,
val orderId: String,
val amount: Int,
val requestedAt: OffsetDateTime = OffsetDateTime.now()
)
data class PaymentCancelRequest(
val cancelAmount: Int?,
val cancelReason: String
)

View File

@ -0,0 +1,91 @@
package com.sangdol.tosspaymock.web.dto
import com.sangdol.tosspaymock.business.domain.Payment
import com.sangdol.tosspaymock.business.domain.PaymentType
import com.sangdol.tosspaymock.business.domain.cancel.Cancellation
import com.sangdol.tosspaymock.business.domain.card.Card
import com.sangdol.tosspaymock.business.domain.easypay.Easypay
import com.sangdol.tosspaymock.business.domain.transfer.BankTransfer
import java.time.OffsetDateTime
data class PaymentResponse(
val mid: String,
val lastTransactionKey: String,
val paymentKey: String,
val orderId: String,
val orderName: String,
val taxExemptionAmount: Int,
var status: String,
val requestedAt: OffsetDateTime,
val approvedAt: OffsetDateTime,
val useEscrow: Boolean,
val cultureExpense: Boolean,
val card: CardResponse?,
val virtualAccount: String?,
val transfer: BankTransferResponse?,
val mobilePhone: String?,
val giftCertificate: String?,
val cashReceipt: String?,
val cashReceipts: String?,
val discount: String?,
var cancels: CancelResponse?,
val secret: String?,
val type: PaymentType,
val easyPay: EasypayResponse?,
val country: String,
val failure: String?,
val isPartialCancelable: Boolean,
val receipt: String?,
val checkout: String?,
val currency: String,
val totalAmount: Int,
val balanceAmount: Int,
val suppliedAmount: Int,
val vat: Int,
val taxFreeAmount: Int,
val method: String,
val version: String,
val metadata: String?,
)
data class CardResponse(
val issuerCode: String,
val acquirerCode: String,
val number: String,
val installmentPlanMonths: Int,
val isInterestFree: Boolean,
val interestPayer: String?,
val approveNo: String,
val useCardPoint: Boolean,
val cardType: String,
val ownerType: String,
val acquireStatus: String,
val amount: Int,
)
data class EasypayResponse(
val provider: String,
val amount: Int,
val discountAmount: Int
)
data class BankTransferResponse(
val bankCode: String,
val settlementStatus: String,
)
data class CancelResponse(
val transactionKey: String,
val cancelReason: String,
val taxExemptionAmount: Int,
val canceledAt: OffsetDateTime,
val cardDiscountAmount: Int,
val transferDiscountAmount: Int,
val easyPayDiscountAmount: Int,
val receiptKey: String?,
val cancelStatus: String,
val cancelRequestId: String?,
val cancelAmount: Int,
val taxFreeAmount: Int,
val refundableAmount: Int,
)