Files
TestingWebApp/docs/шаги/08-results-review.md
T
Константин Лебединский a68331c86b docs: статус проекта, инструкция dev, обновление всех .md
- PROJECT_STATUS: что сделано (черновики, версии, разбор, каталог) и планы
- DEV_CONTOUR_USER_GUIDE: сценарии для проверяющих на dev-стенде
- README, ТЗ, card1, журнал, бэклоги, шаги 01–11+README, спринты, TEST_TABLES: ссылки и примечания
- backend/PROGRESS: ссылка на PROJECT_STATUS

Made-with: Cursor
2026-04-24 22:12:06 +05:00

85 lines
2.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Шаг 8: Результаты и разбор ошибок
## Цель
Реализовать отображение результатов теста и разбора ответов сотруднику.
**Реализация в dev:** ответ `POST …/attempts/:id/submit` включает поле `review`; отдельно `GET /api/tests/:testId/attempts/:attemptId/review` (см. [../PROJECT_STATUS.md](../PROJECT_STATUS.md)).
---
## Задачи
### 8.1. Просмотр результатов
| Эндпоинт | Метод | Описание |
|----------|-------|----------|
| `/api/attempts/:id/result` | GET | Получить результат |
**Ответ:**
```json
{
"test_title": "Название теста",
"version": 1,
"correct_count": 8,
"total_questions": 10,
"percentage": 80,
"passed": true,
"passing_threshold": 75,
"completed_at": "2026-03-21T10:30:00Z"
}
```
### 8.2. Разбор ошибок
| Эндпоинт | Метод | Описание |
|----------|-------|----------|
| `/api/attempts/:id/review` | GET | Получить разбор |
**Ответ:**
```json
{
"questions": [
{
"id": "uuid",
"text": "Текст вопроса",
"user_selected": ["option_id_1", "option_id_2"],
"correct_options": ["option_id_1", "option_id_3"],
"is_correct": false,
"options": [
{ "id": "option_id_1", "text": "Вариант А", "is_correct": true },
{ "id": "option_id_2", "text": "Вариант Б", "is_correct": false },
{ "id": "option_id_3", "text": "Вариант В", "is_correct": true }
]
}
]
}
```
### 8.3. Логика отображения
- Сразу после завершения — перенаправление на страницу результатов
- Показывать балл, процент, зачёт/не зачёт
- Для каждого вопроса:
- Выбранные ответы сотрудника
- Правильные ответы
- Индикатор правильно/неправильно
- Все варианты ответов с подсветкой
### 8.4. Доступ
- Сотрудник видит только свои результаты
- Результаты доступны после завершения попытки
---
## Результат
- Итоговый балл и процент
- Статус зачёта
- Полный разбор по каждому вопросу
---
*Актуальная привязка к коду: [../PROJECT_STATUS.md](../PROJECT_STATUS.md) · индекс шагов: [README.md](README.md).*