Агрегация данных
#
💻 Задания на агрегации и выборкиРасширить todolist REST API следующими endpoints:
Ход выполнения заданий:
Коммиты
Оба варанта реализации надо предоставить в виде нескольких коммитов. В репозитории должны быть как минимум два коммита:
- финальная версия на чистом SQL
- финальная версия с использованием query builder
#
/dashboard Ответ должен содержать обзорную информацию по задачам:
- Количество задач запланированных на сегодня. Использовать SQL
BETWEEN
поdueDate
, иCOUNT
. - Все списки и количество не выполненных задач в каждом. Для подсчета количества задач использовать
GROUP BY
иCOUNT
в SQL. Информацию про список получить в том-же запросе используяRIGHT JOIN
(ответ также должен содержать списки без задач).
#
/collection/todayОтвет содержит список задач назначенных на текущий день. Для каждой задачи включена информация про название списка, в котором она находиться. Для этого использовать eager loading
связи к списку.
#
/lists/{listId}/tasksРабота с задачами конкретного списка. Вложенный ресурс. Указать этот базовый путь над контроллером для задач. Ответ содержит только открытые задачи.
?all=true
- параметр запроса, включает в ответ также и выполненные задачи.