fix(calculate): 콘텐츠 후원 정산 비율을 70퍼센트로 통일한다
This commit is contained in:
@@ -20,33 +20,32 @@ data class GetCalculateContentDonationQueryData @QueryProjection constructor(
|
||||
// 합계
|
||||
val totalCan: Int
|
||||
) {
|
||||
companion object {
|
||||
private val KRW_PER_CAN = BigDecimal("100")
|
||||
private val PAYMENT_FEE_RATE = BigDecimal("0.066")
|
||||
private val SETTLEMENT_RATE = BigDecimal("0.7")
|
||||
private val TAX_RATE = BigDecimal("0.033")
|
||||
}
|
||||
|
||||
fun toGetCalculateContentDonationResponse(): GetCalculateContentDonationResponse {
|
||||
// 원화 = totalCoin * 100 ( 캔 1개 = 100원 )
|
||||
val totalKrw = BigDecimal(totalCan).multiply(BigDecimal(100))
|
||||
val totalKrw = BigDecimal(totalCan).multiply(KRW_PER_CAN)
|
||||
|
||||
// 결제수수료 : 6.6%
|
||||
val paymentFee = totalKrw.multiply(BigDecimal(0.066))
|
||||
val paymentFee = totalKrw.multiply(PAYMENT_FEE_RATE)
|
||||
|
||||
// 정산금액
|
||||
// 유료콘텐츠 (원화 - 결제수수료) 의 90%
|
||||
// 유료콘텐츠 (원화 - 결제수수료) 의 70%
|
||||
// 무료콘텐츠 (원화 - 결제수수료) 의 70%
|
||||
val settlementAmount = if (price > 0) {
|
||||
totalKrw.subtract(paymentFee).multiply(BigDecimal(0.9))
|
||||
} else {
|
||||
totalKrw.subtract(paymentFee).multiply(BigDecimal(0.7))
|
||||
}
|
||||
val settlementAmount = totalKrw.subtract(paymentFee).multiply(SETTLEMENT_RATE)
|
||||
|
||||
// 원천세 = 정산금액의 3.3%
|
||||
val tax = settlementAmount.multiply(BigDecimal(0.033))
|
||||
val tax = settlementAmount.multiply(TAX_RATE)
|
||||
|
||||
// 입금액
|
||||
val depositAmount = settlementAmount.subtract(tax)
|
||||
|
||||
val paidOrFree = if (price > 0) {
|
||||
"유료"
|
||||
} else {
|
||||
"무료"
|
||||
}
|
||||
val paidOrFree = if (price > 0) "유료" else "무료"
|
||||
|
||||
return GetCalculateContentDonationResponse(
|
||||
nickname = nickname,
|
||||
|
||||
Reference in New Issue
Block a user