Files
no-copy/referral/src/main/kotlin/ReferralRepo.kt
T

33 lines
1.1 KiB
Kotlin
Raw Normal View History

2026-02-05 15:43:33 +07:00
package ru.soune
interface ReferralRepo {
fun getUserReferralLink(userId: String): String
fun getUserIdByLink(link: String): String
fun getInviterIdForUser(userId: String): String?
fun getReferralLevelForUser(userId: String): String
fun getReferralByUserId(userId: String): Referral
fun getReferralInvitees(userId: String, pageSize: Int, pageNumber: Int): List<ReferralInvitee>
// создаем новую запись в БД
fun createReferralEntity(entity: Referral)
// прибавить к totalIncome и availableIncome значение transferAmount
fun increaseIncome(userId: String, transferAmount: Int)
// установить active в true
fun activateUser(userId: String): Boolean
// посчитать записи, у которых inviter == userId и active == true
fun getActiveInviteeForUser(userId: String): Int
// посчитать записи, у которых inviter == userId
fun getTotalInviteeForUser(userId: String): Int
fun upgradeReferralLevelForUser(userId: String, newLevelId: String)
}