# Шаг 5: Управление тестами (админка) ## Цель Реализовать создание и редактирование тестов с вопросами и версионированием. --- ## Задачи ### 5.1. CRUD тестов | Эндпоинт | Метод | Описание | |----------|-------|----------| | `/api/tests` | GET | Список тестов | | `/api/tests` | POST | Создать тест | | `/api/tests/:id` | GET | Тест с вопросами | | `/api/tests/:id` | PUT | Редактировать | | `/api/tests/:id` | DELETE | Деактивировать | ### 5.2. Управление вопросами - Добавление/редактирование вопросов к версии теста - Минимум 3 варианта ответа на вопрос - Указание одного или нескольких правильных ответов - Перетаскивание для изменения порядка (drag & drop) ### 5.3. Версионирование - При создании теста — версия 1, помечается как активная - При редактировании: - Если никто не проходил — изменяется текущая версия - Если уже были попытки — создаётся новая версия (version + 1) - Переключение активной версии вручную - Просмотр истории версий ### 5.4. Настройки теста - `passing_threshold` — порог зачёта (%) - `time_limit` — таймер в минутах (опционально) - `allow_back` — разрешить возврат к предыдущему вопросу ### 5.5. Права доступа - **HR, Manager:** могут создавать и редактировать тесты - **Employee:** только прохождение --- ## Результат - Полноценный конструктор тестов - Версионирование с сохранением истории - Управление вопросами и ответами