fix(can-coupon): 쿠폰 사용 본인인증 예외를 성인 노출 정책에 맞춘다

This commit is contained in:
2026-04-02 11:28:21 +09:00
parent 38fd826fe4
commit 8705389ddd
3 changed files with 136 additions and 1 deletions

View File

@@ -8,6 +8,7 @@ import kr.co.vividnext.sodalive.common.SodaException
import kr.co.vividnext.sodalive.i18n.LangContext
import kr.co.vividnext.sodalive.i18n.SodaMessageSource
import kr.co.vividnext.sodalive.member.MemberRepository
import kr.co.vividnext.sodalive.member.contentpreference.MemberContentPreferenceService
import org.apache.poi.xssf.usermodel.XSSFWorkbook
import org.springframework.context.ApplicationEventPublisher
import org.springframework.data.repository.findByIdOrNull
@@ -29,6 +30,7 @@ class CanCouponService(
private val couponNumberRepository: CanCouponNumberRepository,
private val memberRepository: MemberRepository,
private val memberContentPreferenceService: MemberContentPreferenceService,
private val objectMapper: ObjectMapper,
private val applicationEventPublisher: ApplicationEventPublisher,
@@ -133,7 +135,8 @@ class CanCouponService(
val member = memberRepository.findByIdOrNull(id = memberId)
?: throw SodaException(messageKey = "common.error.bad_credentials")
if (member.auth == null) throw SodaException(messageKey = "can.coupon.auth_required")
val viewerContentPreference = memberContentPreferenceService.getStoredPreference(member)
if (!viewerContentPreference.isAdult) throw SodaException(messageKey = "can.coupon.auth_required")
issueService.validateAvailableUseCoupon(couponNumber, memberId)