Files
isp-tycoon/handlers/stats.py
2026-02-23 15:41:59 +07:00

43 lines
1.6 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
from aiogram import types, Router
from database import get_player
from economy import (
calculate_effective_bandwidth,
calculate_rating,
calculate_daily_income # ← ВОТ ЭТОТ ИМПОРТ НУЖЕН!
)
router = Router()
@router.callback_query(lambda c: c.data == "stats")
async def stats(callback: types.CallbackQuery):
player = get_player(callback.from_user.id)
if not player:
await callback.answer("❌ Игрок не найден", show_alert=True)
return
bw = calculate_effective_bandwidth(player)
daily = calculate_daily_income(player)
text = (
f"📊 *Ваша статистика*\n\n"
f"🔹 Канал: {player['network_channel_level']}{bw} Мбит/с\n"
f"🔹 Серверы: {player['servers']} шт. (ёмкость: {player['max_customers']})\n"
f"🔹 Клиенты: {player['coverage_customers']} / {player['max_customers']}\n"
f"🔹 Доход/день: {daily:,.0f}\n"
f"🔹 Общий доход: {player['total_income']:,.0f}\n"
f"🔹 Рейтинг: {calculate_rating(player)} 🌟"
)
await callback.message.edit_text(
text,
reply_markup=types.InlineKeyboardMarkup(inline_keyboard=[
[types.InlineKeyboardButton(text="⬅️ Назад", callback_data="back_menu")]
]),
parse_mode="Markdown"
)
@router.callback_query(lambda c: c.data == "back_menu")
async def back_to_menu(callback: types.CallbackQuery):
await callback.message.delete()
from handlers.start import cmd_start
await cmd_start(callback.message)