test #108

Merged
klaus merged 4 commits from test into main 2024-01-03 15:19:43 +00:00
1 changed files with 13 additions and 0 deletions
Showing only changes of commit 5a0bf61a36 - Show all commits

View File

@ -2,6 +2,7 @@ package kr.co.vividnext.sodalive.can.coupon
import kr.co.vividnext.sodalive.common.SodaException
import org.springframework.stereotype.Service
import java.time.LocalDateTime
@Service
class CanCouponIssueService(private val couponNumberRepository: CanCouponNumberRepository) {
@ -14,6 +15,8 @@ class CanCouponIssueService(private val couponNumberRepository: CanCouponNumberR
throw SodaException("해당 쿠폰은 1회만 충전이 가능합니다.")
}
}
validateCoupon(canCouponNumber.canCoupon!!)
}
private fun checkCanCouponNumber(couponNumber: String): CanCouponNumber {
@ -29,6 +32,16 @@ class CanCouponIssueService(private val couponNumberRepository: CanCouponNumberR
private fun isMultipleUse(canCouponNumber: CanCouponNumber) = canCouponNumber.canCoupon!!.isMultipleUse
private fun validateCoupon(canCoupon: CanCoupon) {
if (canCoupon.validity < LocalDateTime.now()) {
throw SodaException("유효기간이 경과된 쿠폰입니다.")
}
if (!canCoupon.isActive) {
throw SodaException("이용이 불가능한 쿠폰입니다.")
}
}
fun checkAnyChanges(request: ModifyCanCouponRequest) {
if (request.isMultipleUse == null && request.isActive == null && request.validity == null) {
throw SodaException("변경사항이 없습니다.")