a68331c86b
- PROJECT_STATUS: что сделано (черновики, версии, разбор, каталог) и планы - DEV_CONTOUR_USER_GUIDE: сценарии для проверяющих на dev-стенде - README, ТЗ, card1, журнал, бэклоги, шаги 01–11+README, спринты, TEST_TABLES: ссылки и примечания - backend/PROGRESS: ссылка на PROJECT_STATUS Made-with: Cursor
1.9 KiB
1.9 KiB
Шаг 9: Трекер попыток
Цель
Реализовать единый интерфейс просмотра всех попыток прохождения тестов.
Задачи
9.1. API трекера
| Эндпоинт | Метод | Описание |
|---|---|---|
/api/tracker |
GET | Список всех попыток |
Параметры фильтрации:
department_id— по подразделениюuser_id— по сотрудникуtest_id— по тестуstatus— по статусу (in_progress, completed, expired)passed— по результату (true, false)
9.2. Поля в трекере
| Поле | Источник |
|---|---|
| Сотрудник | users.full_name, departments.name |
| Тест | tests.title |
| Попытка № | test_attempts.attempt_number |
| Начало | test_attempts.started_at |
| Завершение | test_attempts.completed_at |
| Результат | correct_count / total_questions, % |
| Зачёт | passed (true/false) |
9.3. Права доступа
- HR: видит все попытки по всей клинике
- Manager: видит попытки только своего подразделения
- Employee: видит только свои попытки
9.4. Пагинация и сортировка
- Пагинация по 20/50/100 записей
- Сортировка по дате начала (убывание)
Результат
- Таблица попыток с фильтрами
- Ограничение данных по роли
- Полная история прохождений
Актуальная привязка к коду: ../PROJECT_STATUS.md · индекс шагов: README.md.