11package org.gitanimals.quiz.app
22
33import org.gitanimals.core.IdGenerator
4+ import org.gitanimals.core.clock
5+ import org.gitanimals.inbox.domain.InboxType
46import org.gitanimals.quiz.app.CreateQuizFacade.Companion.CREATE_QUIZ_PRICE
57import org.gitanimals.quiz.domain.not_approved.NotApprovedQuizService
68import org.slf4j.LoggerFactory
@@ -9,6 +11,7 @@ import org.springframework.stereotype.Service
911
1012@Service
1113class DenyQuizFacade (
14+ private val inboxApi : InboxApi ,
1215 private val identityApi : IdentityApi ,
1316 private val notApprovedQuizService : NotApprovedQuizService ,
1417 @Value(" \$ {quiz.approve.token}" ) private val approveToken : String ,
@@ -35,6 +38,23 @@ class DenyQuizFacade(
3538 point = CREATE_QUIZ_PRICE ,
3639 idempotencyKey = IdGenerator .generate().toString(),
3740 )
41+
42+ inboxApi.inputInbox(
43+ InboxApi .InboxInputRequest (
44+ publisher = InboxApi .InboxInputRequest .Publisher (
45+ publisher = " QUIZ" ,
46+ publishedAt = clock.instant(),
47+ ),
48+ inboxData = InboxApi .InboxInputRequest .InboxData (
49+ userId = notApprovedQuiz.userId,
50+ type = InboxType .INBOX ,
51+ title = " Revoked Quiz create point." ,
52+ body = " Since your quiz was judged to be a duplicate, 5,000 points have been rolled back." ,
53+ image = " https://avatars.githubusercontent.com/u/171903401?s=200&v=4" ,
54+ redirectTo = " NO_REDIRECT" ,
55+ )
56+ )
57+ )
3858 }.getOrElse {
3959 logger.error(" [DenyQuizFacade] Cannot decrease point. userId: \" ${notApprovedQuiz.userId} \" , point: \" $CREATE_QUIZ_PRICE \" " )
4060 }
0 commit comments