fix: 콘텐츠 주문 - 포인트 결제 후 추가 결제를 해야하는 캔이 남아 있는 경우에만 캔을 결제하도록 수정 (남아 있는 캔이 없는데 결제 처리가 되서 0캔으로 데이터가 쌓이는 것 방지)

This commit is contained in:
Klaus 2025-04-22 23:39:48 +09:00
parent 775391f590
commit 7c3b7cffc2
1 changed files with 14 additions and 7 deletions

View File

@ -50,13 +50,20 @@ class OrderService(
}
order.point = usedPoint
canPaymentService.spendCan(
memberId = member.id!!,
needCan = order.can - (usedPoint / 10),
canUsage = CanUsage.ORDER_CONTENT,
order = order,
container = container
)
val remainingCan = order.can - (usedPoint / 10)
if (order.type == OrderType.RENTAL && content.isPointAvailable && usedPoint > 0) {
order.can = remainingCan
}
if (remainingCan > 0) {
canPaymentService.spendCan(
memberId = member.id!!,
needCan = remainingCan,
canUsage = CanUsage.ORDER_CONTENT,
order = order,
container = container
)
}
}
private fun orderContent(orderType: OrderType, content: AudioContent, member: Member): Order {