async def send_clan_member_result(clan, result_balance): from bot.db import User clan_members = User.select().where(User.clan == clan) if clan_members.count() > 0: for member in clan_members: await bot.send_message( member.user_id, texts['user_round_result']['clan_result'].format( result_balance, clan.color))
def calculate_tree_reward(user, deel_balance=Decimal(str(0))): from bot.db import User refferals = User.select().where(User.inviter_id == user.user_id) if refferals.count() == 0: # print('last rekursion', user.user_id, f'balance = {deel_balance}') return Decimal(str(user.balance)) else: # deel_balance += Decimal(str(user.balance)) for refferall in refferals: # print('recursion to', refferall.user_id, f'balance = {deel_balance}') deel_balance += calculate_tree_reward(refferall, deel_balance=deel_balance) # print('for balance', deel_balance) return deel_balance + Decimal(str(user.balance))