Не могу сделать функцию анонимный ли пользователь или нет.
Код:
[/CENTER]
@dp.message_handler(commands=['top'])
async def top(message: types.Message):
conn = sqlite3.connect(bd)
cursor = conn.cursor()
text = ''
position = 0
r = cursor.execute("SELECT id, SUM(amount), COUNT(*) FROM profits GROUP BY id ORDER BY SUM(amount) DESC")
msg = r.fetchall()
title = 'Топ воркеров за все время:'
total_profit = cursor.execute("SELECT SUM(amount) FROM profits").fetchone()[0]
if not msg:
await message.reply(f'<b>👉 {title}</b>\n\n💸 Топ пуст', parse_mode='HTML')
else:
nickname = ''
for i in msg:
position += 1
if position == 1:
place = '🥇'
elif position == 2:
place = '🥈'
elif position == 3:
place = '🥉'
else:
place = '🔹'
try:
user = await bot.get_chat(i[0])
with sqlite3.connect(bd) as connection:
worker = connection.execute("SELECT * FROM workers WHERE id = ?", (user.id,)).fetchone()
if worker[9] == 1:
nickname = 'Скрытый'
elif worker[9] == 0:
nickname = f'<a href="tg://user?id={user.id}">{user.full_name}</a>'
text += f"<b>{place} {nickname} - {i[1]} RUB</b> - {i[2]} профитов\n"
except Exception as e:
text += f"<b>{place} Скрытый - {i[1]} RUB</b> - {i[2]} профитов\n"
await message.reply(
f'👉 {title}\n\n' + (text) + f'\n<b>💸 Общий профит за все время - {total_profit} RUB</b>',
parse_mode='HTML')