from aiogram import Router, types from aiogram.filters import Command from aiogram.types import Message from datetime import datetime from tg_bot.config.settings import settings from tg_bot.domain.services.user_service import UserService router = Router() user_service = UserService() @router.message(Command("start")) async def cmd_start(message: Message): user_id = message.from_user.id username = message.from_user.username or "" first_name = message.from_user.first_name or "" last_name = message.from_user.last_name or "" try: existing_user = await user_service.get_user_by_telegram_id(user_id) user = await user_service.get_or_create_user( user_id, username, first_name, last_name ) if not existing_user: print(f"Новый пользователь: {user_id}") except Exception as e: print(f"Ошибка сохранения пользователя: {e}") welcome_text = ( f"Привет, {first_name}!\n\n" f"Я VibeLawyerBot - ваш помощник в юридических вопросах.\n\n" f"Как я работаю:\n" f"1. Администратор загружает документы в коллекции\n" f"2. Вы задаёте вопрос на любую юридическую тему\n" f"3. Я ищу ответы в ваших коллекциях документов\n" f"4. Даю развернутый ответ на основе найденных документов\n" f"5. Первые {settings.FREE_QUESTIONS_LIMIT} вопросов - бесплатно\n" f"6. Для продолжения нужна подписка (/buy)\n\n" f"Основные команды:\n" f"• /help - подробная помощь\n" f"• /buy - купить подписку\n" f"• /stats - ваша статистика\n" f"• /mypayments - история платежей\n" f"• /mycollections - мои коллекции документов\n" f"• /search - поиск в коллекции\n\n" f"Готовы начать? Просто напишите ваш вопрос!\n\n" f"Для получения полного доступа используйте /buy" ) await message.answer(welcome_text, parse_mode="HTML")