Add timetable planning and related tests to school simulation
- Introduced a new project for timetable planning, dependent on HSchool.Content. - Updated documentation to reflect the addition of timetable planning and its dependencies. - Added tests for timetable planning to ensure deterministic behavior with the same staff and map. - Revised architecture documentation to include the new HSchool.Schedule component and its interactions.
This commit is contained in:
@@ -12,24 +12,24 @@
|
||||
|
||||
## Задачи
|
||||
|
||||
- [ ] Новый проект рядом с `HSchool.People`: зависит только на `HSchool.Content`, без Arch и
|
||||
- [x] Новый проект рядом с `HSchool.People`: зависит только на `HSchool.Content`, без Arch и
|
||||
ASP.NET; отдаёт простую таблицу уроков
|
||||
- [ ] Раскладка часов учебного плана по слотам недели для каждого класса
|
||||
- [ ] Кабинет урока: требование предмета, иначе кабинет класса
|
||||
- [ ] Четыре запрета соблюдаются: учитель, класс и кабинет не заняты дважды, класс влезает в кабинет
|
||||
- [ ] Непокрытые часы не ставятся, а возвращаются отдельным списком — их покажет «Управление»
|
||||
- [ ] Закреплённые игроком уроки принимаются на вход и переживают перестроение; остальное
|
||||
- [x] Раскладка часов учебного плана по слотам недели для каждого класса
|
||||
- [x] Кабинет урока: требование предмета, иначе кабинет класса
|
||||
- [x] Четыре запрета соблюдаются: учитель, класс и кабинет не заняты дважды, класс влезает в кабинет
|
||||
- [x] Непокрытые часы не ставятся, а возвращаются отдельным списком — их покажет «Управление»
|
||||
- [x] Закреплённые игроком уроки принимаются на вход и переживают перестроение; остальное
|
||||
раскладывается вокруг них
|
||||
- [ ] Детерминированность: те же штат, назначения и карта дают ту же таблицу
|
||||
- [x] Детерминированность: те же штат, назначения и карта дают ту же таблицу
|
||||
|
||||
## Тесты, без которых фаза не закрыта
|
||||
|
||||
- [ ] Один спортзал на одиннадцать классов — физкультура разъезжается по слотам, а не дублируется
|
||||
- [ ] Учитель с двумя предметами не стоит в двух местах в одном слоте
|
||||
- [ ] Класс на 16 не попадает в кабинет на 12
|
||||
- [ ] Предмет без учителя даёт дыру и запись в непокрытых
|
||||
- [ ] Закреплённый урок остаётся на месте после найма ещё одного учителя
|
||||
- [ ] Те же входы — та же таблица
|
||||
- [x] Один спортзал на одиннадцать классов — физкультура разъезжается по слотам, а не дублируется
|
||||
- [x] Учитель с двумя предметами не стоит в двух местах в одном слоте
|
||||
- [x] Класс на 16 не попадает в кабинет на 12
|
||||
- [x] Предмет без учителя даёт дыру и запись в непокрытых
|
||||
- [x] Закреплённый урок остаётся на месте после найма ещё одного учителя
|
||||
- [x] Те же входы — та же таблица
|
||||
|
||||
## Критерий готовности
|
||||
|
||||
|
||||
@@ -65,6 +65,6 @@
|
||||
| Фаза | Статус | Зачем |
|
||||
| --- | --- | --- |
|
||||
| [14. Каркас дня и каникулы](14-school-calendar.md) | ✅ | Звонки, длина недели, каникулы |
|
||||
| [15. Планировщик](15-timetable-planner.md) | ⬜ | Раскладка часов по слотам, четыре запрета |
|
||||
| [15. Планировщик](15-timetable-planner.md) | ✅ | Раскладка часов по слотам, четыре запрета |
|
||||
| [16. Расписание в школе](16-timetable-in-school.md) | ⬜ | Сейв, снимок, «кто где сейчас» |
|
||||
| [17. Расписание на экране](17-timetable-screen.md) | ⬜ | Скобки в дереве, сетка класса, расписание учителя |
|
||||
|
||||
Reference in New Issue
Block a user