diff --git a/handlers/admin/admin_stats.py b/handlers/admin/admin_stats.py index 09dde769..26528067 100644 --- a/handlers/admin/admin_stats.py +++ b/handlers/admin/admin_stats.py @@ -2,6 +2,7 @@ from datetime import datetime from typing import Any from aiogram import F, Router +from aiogram.exceptions import TelegramBadRequest from aiogram.types import CallbackQuery from filters.admin import IsAdminFilter @@ -54,6 +55,8 @@ async def handle_stats(callback_query: CallbackQuery, session: Any): ) expired_keys = total_keys - active_keys + update_time = datetime.now().strftime("%d.%m.%y %H:%M:%S") + stats_message = ( f"📊 Подробная статистика проекта:\n\n" f"👥 Пользователи:\n" @@ -73,10 +76,14 @@ async def handle_stats(callback_query: CallbackQuery, session: Any): f" 📅 За день: {total_payments_today} ₽\n" f" 📆 За неделю: {total_payments_week} ₽\n" f" 📆 За месяц: {total_payments_month} ₽\n" - f" 🏦 За все время: {total_payments_all_time} ₽\n" + f" 🏦 За все время: {total_payments_all_time} ₽\n\n" + f" ⏳ Последнее обновление: {update_time}" ) await callback_query.message.edit_text(text=stats_message, reply_markup=build_stats_kb()) + except TelegramBadRequest as e: + if "message is not modified" not in str(e): # skip when Telegram message is not modified + logger.error(f"Error in user_stats_menu: {e}") except Exception as e: logger.error(f"Error in user_stats_menu: {e}")