11package by.jprof.telegram.bot.shop
22
33import by.jprof.telegram.bot.core.UpdateProcessor
4+ import by.jprof.telegram.bot.monies.dao.MoniesDAO
5+ import by.jprof.telegram.bot.monies.model.Monies
46import by.jprof.telegram.bot.shop.payload.PinsPayload
7+ import by.jprof.telegram.bot.shop.utils.tooManyPins
58import dev.inmo.tgbotapi.bot.RequestsExecutor
69import dev.inmo.tgbotapi.extensions.api.answers.payments.answerPreCheckoutQueryError
10+ import dev.inmo.tgbotapi.extensions.api.answers.payments.answerPreCheckoutQueryOk
711import dev.inmo.tgbotapi.extensions.utils.asPreCheckoutQueryUpdate
812import dev.inmo.tgbotapi.types.update.abstracts.Update
913import dev.inmo.tgbotapi.utils.PreviewFeature
@@ -15,6 +19,7 @@ import org.apache.logging.log4j.LogManager
1519class PinsPreCheckoutQueryUpdateProcessor (
1620 private val bot : RequestsExecutor ,
1721 private val json : Json ,
22+ private val moniesDAO : MoniesDAO ,
1823) : UpdateProcessor {
1924 companion object {
2025 private val logger = LogManager .getLogger(PinsPreCheckoutQueryUpdateProcessor ::class .java)!!
@@ -33,6 +38,13 @@ class PinsPreCheckoutQueryUpdateProcessor(
3338
3439 logger.debug(payload)
3540
36- bot.answerPreCheckoutQueryError(preCheckoutQuery, " Not implemented yet" )
41+ val monies = moniesDAO.get(preCheckoutQuery.user.id.chatId, payload.chat) ? : Monies (preCheckoutQuery.user.id.chatId, payload.chat)
42+ val pins = monies.pins ? : 0
43+
44+ if (pins > 9999 ) {
45+ bot.answerPreCheckoutQueryError(preCheckoutQuery, tooManyPins())
46+ }
47+
48+ bot.answerPreCheckoutQueryOk(preCheckoutQuery)
3749 }
3850}
0 commit comments