docs folder with steps
This commit is contained in:
@@ -0,0 +1,53 @@
|
||||
# Шаг 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 записей
|
||||
- Сортировка по дате начала (убывание)
|
||||
|
||||
---
|
||||
|
||||
## Результат
|
||||
|
||||
- Таблица попыток с фильтрами
|
||||
- Ограничение данных по роли
|
||||
- Полная история прохождений
|
||||
Reference in New Issue
Block a user