""" Notifications module for the Telegram bot. Handles sending notifications about new requests and status updates. """ from aiogram import types from .config import settings # Изменено с NOTIFICATION_CHAT_ID на settings from . import bot from .handlers import get_updated_keyboard # Константы для эмодзи REQUEST_TYPE_EMOJI = { "hardware": "🔧", "software": "💻", "network": "🌐", "other": "📝" } PRIORITY_EMOJI = { "high": "🔴", "medium": "🟡", "low": "🟢" } async def send_notification(request_data: dict): """ Send notification about new request to Telegram chat. Args: request_data (dict): Request data including id, description, etc. """ message_text = ( f"📋 Заявка #{request_data['id']}\n\n" f"👤 Сотрудник: {request_data['employee_last_name']} {request_data['employee_first_name']}\n" f"🏢 Отдел: {request_data['department']}\n" f"🚪 Кабинет: {request_data['office']}\n" f"{REQUEST_TYPE_EMOJI.get(request_data['request_type'], '📝')} Тип заявки: {request_data['request_type']}\n" f"{PRIORITY_EMOJI.get(request_data['priority'], '⚪')} Приоритет: {request_data['priority']}\n\n" f"📝 Описание:\n{request_data['description']}\n\n" f"🕒 Создана: {request_data['created_at']}" ) try: await bot.send_message( chat_id=settings.chat_id, # Используем settings.chat_id вместо NOTIFICATION_CHAT_ID text=message_text, parse_mode="HTML", reply_markup=get_updated_keyboard(request_data['id'], "new") ) except Exception as e: print(f"Error sending notification: {e}")