Добавлена система управления записями и улучшен процесс бронирования
- Реализован выбор мастера - Добавлен выбор даты и времени - Добавлено подтверждение записи - Реализован раздел «Мои записи» - Добавлена отмена записи - Добавлена возможность редактирования записи - Реализована проверка занятых временных слотов - Улучшена логика FSM и пользовательский сценарий бронирования
This commit is contained in:
@@ -0,0 +1,25 @@
|
||||
from aiogram.types import (
|
||||
InlineKeyboardMarkup,
|
||||
InlineKeyboardButton
|
||||
)
|
||||
|
||||
|
||||
def get_booking_actions(
|
||||
booking_id: int
|
||||
):
|
||||
return InlineKeyboardMarkup(
|
||||
inline_keyboard=[
|
||||
[
|
||||
InlineKeyboardButton(
|
||||
text="✏️ Изменить",
|
||||
callback_data=f"edit_booking_{booking_id}"
|
||||
)
|
||||
],
|
||||
[
|
||||
InlineKeyboardButton(
|
||||
text="❌ Отменить",
|
||||
callback_data=f"cancel_booking_{booking_id}"
|
||||
)
|
||||
]
|
||||
]
|
||||
)
|
||||
@@ -1,7 +1,13 @@
|
||||
from aiogram.types import InlineKeyboardMarkup, InlineKeyboardButton
|
||||
from aiogram.types import InlineKeyboardMarkup
|
||||
from aiogram.types import InlineKeyboardButton
|
||||
|
||||
|
||||
def get_time_keyboard():
|
||||
def get_time_keyboard(
|
||||
busy_times=None
|
||||
):
|
||||
|
||||
if busy_times is None:
|
||||
busy_times = []
|
||||
|
||||
times = [
|
||||
"10:00",
|
||||
@@ -10,17 +16,22 @@ def get_time_keyboard():
|
||||
"13:00",
|
||||
"14:00",
|
||||
"15:00",
|
||||
"16:00"
|
||||
"16:00",
|
||||
"17:00"
|
||||
]
|
||||
|
||||
buttons = []
|
||||
|
||||
for t in times:
|
||||
for time in times:
|
||||
|
||||
if time in busy_times:
|
||||
continue
|
||||
|
||||
buttons.append(
|
||||
[
|
||||
InlineKeyboardButton(
|
||||
text=t,
|
||||
callback_data=f"time_{t}"
|
||||
text=time,
|
||||
callback_data=f"time_{time}"
|
||||
)
|
||||
]
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user