77 lines
1.9 KiB
Python
77 lines
1.9 KiB
Python
from aiogram import Router, F
|
|
from aiogram.filters import CommandStart, Command
|
|
from aiogram.types import Message
|
|
from database import get_group
|
|
from keyboards import main_keyboard, start_keyboard
|
|
from database import (
|
|
get_group,
|
|
update_user
|
|
)
|
|
from database import save_phone
|
|
|
|
router = Router()
|
|
|
|
|
|
@router.message(CommandStart())
|
|
async def start(message: Message):
|
|
|
|
await update_user(
|
|
user_id=message.from_user.id,
|
|
username=message.from_user.username,
|
|
first_name=message.from_user.first_name,
|
|
last_name=message.from_user.last_name
|
|
)
|
|
|
|
group = await get_group(message.from_user.id)
|
|
|
|
if group:
|
|
|
|
text = (
|
|
f"👋 Добро пожаловать!\n\n"
|
|
f"Ваша группа:\n"
|
|
f"<b>{group['group_name']}</b>\n\n"
|
|
"Выберите действие ниже."
|
|
)
|
|
|
|
await message.answer(
|
|
text,
|
|
reply_markup=main_keyboard()
|
|
)
|
|
|
|
else:
|
|
|
|
text = (
|
|
"👋 Добро пожаловать!\n\n"
|
|
"Похоже, вы еще не выбрали группу.\n\n"
|
|
"Нажмите <b>🔍 Выбрать группу</b> "
|
|
)
|
|
|
|
await message.answer(
|
|
text,
|
|
reply_markup=start_keyboard()
|
|
)
|
|
|
|
|
|
@router.message(Command("help"))
|
|
async def help_command(message: Message):
|
|
|
|
await message.answer(
|
|
"📖 <b>Справка</b>\n\n"
|
|
"🔍 Выберите группу.\n"
|
|
"📅 Получайте расписание на любой день.\n"
|
|
"💾 После выбора группа сохраняется автоматически.\n"
|
|
)
|
|
|
|
@router.message(F.contact)
|
|
async def get_phone(
|
|
message: Message
|
|
):
|
|
|
|
await save_phone(
|
|
message.from_user.id,
|
|
message.contact.phone_number
|
|
)
|
|
|
|
await message.answer(
|
|
"✅ Телефон сохранён."
|
|
) |