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")