Проект

Общее

Профиль

Task #52607

открыто

Получение меню ресторана

Добавил(а) Аноним 8 месяца назад. Обновлено 8 месяца назад.

Статус:
Новая
Приоритет:
Нормально
Назначена:
-
Дата начала:
02.04.2025
Срок:
Готовность:

0%

План:

Описание

Получение меню ресторана

Описание

Как пользователь, я хочу получить список блюд из выбранного ресторана, чтобы выбрать что-то для заказа.

Цель:

  • Увидеть доступные блюда, их состав и цены
  • Принять осознанное решение о заказе
  • Быстро найти подходящие блюда для моих предпочтений

Критерии приемки

Основной сценарий

  • Пользователь выбирает ресторан.
  • Приложение отправляет GET-запрос к API.
  • Сервер возвращает JSON-ответ с меню.

Пример ответа:

{
  "id_menu": 1,
  "name": "Постное",
  "dishes": [
    {
      "id": 1,
      "name": "Салат",
      "sostav": ["огурцы", "помидоры"],
      "price": 250.0
    }
  ]
}

Альтернативные сценарии

Не авторизован:

{
  "error": "Необходима авторизация" 
}

Меню не найдено:

{
  "error": "Меню не найдено" 
}

Технические детали

SQL-запрос:

SELECT f.id, f.name, f.composition, f.price, m.name AS menu_name
FROM food f
JOIN menus m ON f.menu_id = m.id
JOIN restaurants r ON m.restaurant_id = r.id
WHERE r.id = :restaurant_id;

Таблицы:

  • restaurants (рестораны)
  • menus (меню)
  • food (блюда)

Примечания:

  • Состав блюда - массив строк
  • Ответ в формате JSON
  • Время ответа < 2 секунд

Диаграммы:

picture081-1.png

picture081-2.png

picture081-3.png


Файлы

picture081-1.png (38,2 КБ) picture081-1.png , 02.04.2025 13:25
picture081-2.png (50,3 КБ) picture081-2.png , 02.04.2025 13:25
picture081-3.png (66,3 КБ) picture081-3.png , 02.04.2025 13:25
picture400-1.png (49,8 КБ) picture400-1.png Артур Нигматуллин, 02.04.2025 16:00

Экспортировать в Atom PDF

Go to top
Добавить изображение из буфера обмена (Максимальный размер: 100 МБ)