35 lines
2.2 KiB
Markdown
35 lines
2.2 KiB
Markdown
# Фаза 17. Расписание на экране
|
|
|
|
## Зависимости
|
|
|
|
- [Фаза 16](16-timetable-in-school.md)
|
|
- [Фаза 13](../03-staffing/13-management-tab.md)
|
|
|
|
## Зачем
|
|
|
|
Школа перестаёт быть списком имён: видно, что происходит в комнатах прямо сейчас и как выглядит
|
|
неделя класса и учителя.
|
|
|
|
## Задачи
|
|
|
|
- [x] В дереве карты рядом с комнатой — что и у кого там сейчас: `Кабинет 204 (Математика · 5Б)`.
|
|
Свободная комната остаётся без скобок
|
|
- [x] Панель локации: «Сейчас» — урок и класс, «Персонажи» — учитель и ученики этого класса
|
|
- [x] В «Управлении» — расписание класса: сетка «день × урок», выбор параллели
|
|
- [x] В карточке человека — его личное расписание, рядом с навыками и семьёй
|
|
- [x] Правка урока из сетки: перенос и смена кабинета, видимая отметка «закреплено» и снятие
|
|
- [x] Отказ планировщика (некуда поставить, кабинет занят) объясняется текстом, а не молчанием
|
|
- [x] Строки через `t(...)`, обе локали
|
|
|
|
## Критерий готовности
|
|
|
|
- Открыть школу в учебное время и увидеть в дереве занятые кабинеты, а в каникулы — пустые
|
|
- Открыть расписание 5Б, найти окно на месте непокрытого предмета
|
|
- Открыть учителя и увидеть те же уроки с его стороны
|
|
- Передвинуть урок и убедиться, что он не разъехался после найма
|
|
- `dotnet test` и клиентские `npm test` / `build` проходят
|
|
|
|
## Стоп
|
|
|
|
Не общая сетка на всю школу. Не оценки и не посещаемость. Не анимация перемещений.
|