separated clients handlers, cart->checkout ppline

This commit is contained in:
2026-02-11 20:53:47 +07:00
parent 6409d66dfd
commit a3aaafd7ac
20 changed files with 658 additions and 369 deletions

37
handlers/client/menu.py Normal file
View File

@@ -0,0 +1,37 @@
from aiogram import Router, F
from aiogram.types import CallbackQuery, Message
from aiogram.filters import Command
from aiogram.fsm.context import FSMContext
from sqlalchemy.ext.asyncio import AsyncSession
from misc.kb import main_menu_kb
from services.orders import OrderService
router = Router()
@router.message(Command("start"))
async def main_menu(
msg: Message, state: FSMContext, session: AsyncSession, order_service: OrderService
):
await state.clear()
cart_items = await order_service.get_cart_items_count(session, msg.from_user.id)
await msg.answer(
"hii!", reply_markup=main_menu_kb(cart_items)
) # TODO: Write a welcome message
@router.callback_query(F.data.startswith("menu:"))
async def main_menu_cb(
cb: CallbackQuery,
state: FSMContext,
session: AsyncSession,
order_service: OrderService,
):
await state.clear()
cart_items = await order_service.get_cart_items_count(session, cb.from_user.id)
await cb.message.edit_text(
"hii!", reply_markup=main_menu_kb(cart_items)
) # TODO: Write a welcome message