Files
finance_bot/.history/app/bot/handlers/start_20251210202255.py
2025-12-10 22:09:31 +09:00

61 lines
2.0 KiB
Python

"""Start and help handlers"""
from aiogram import Router, F
from aiogram.filters import CommandStart
from aiogram.types import Message
from sqlalchemy.orm import Session
from app.db.database import SessionLocal
from app.db.repositories import UserRepository, FamilyRepository
from app.bot.keyboards import main_menu_keyboard
router = Router()
@router.message(CommandStart())
async def cmd_start(message: Message):
"""Handle /start command"""
user_repo = UserRepository(SessionLocal())
# Create or update user
user = user_repo.get_or_create(
telegram_id=message.from_user.id,
username=message.from_user.username,
first_name=message.from_user.first_name,
last_name=message.from_user.last_name,
)
welcome_text = (
"👋 Добро пожаловать в Finance Bot!\n\n"
"Я помогу вам управлять семейными финансами:\n"
"💰 Отслеживать доходы и расходы\n"
"👨‍👩‍👧‍👦 Управлять семейной группой\n"
"📊 Видеть аналитику\n"
"🎯 Ставить финансовые цели\n\n"
"Выберите действие:"
)
await message.answer(welcome_text, reply_markup=main_menu_keyboard())
@router.message(CommandStart())
async def cmd_help(message: Message):
"""Handle /help command"""
help_text = (
"📚 **Справка по командам:**\n\n"
"/start - Главное меню\n"
"/help - Эта справка\n"
"/account - Мои счета\n"
"/transaction - Новая операция\n"
"/budget - Управление бюджетом\n"
"/analytics - Аналитика\n"
"/family - Управление семьей\n"
"/settings - Параметры\n"
)
await message.answer(help_text)
def register_start_handlers(dp):
"""Register start handlers"""
dp.include_router(router)