Files
magistr/SCHEDULE_TASKS.md

2.8 KiB
Raw Blame History

Задачи: динамическое расписание и календарный учебный график

Актуальная декомпозиция относится к модели, где календарный учебный график хранится дневной сеткой и назначается группе на учебный год.

Выполнено

  • Переписана базовая схема V1__init.sql под полный сброс БД.
  • Добавлены специальности, профили обучения и связь группы с профилем.
  • Добавлены формы обучения календарного графика.
  • Добавлен справочник кодов активностей Excel-графика.
  • Добавлены календарные графики, дневная сетка и назначения графиков группам.
  • Обновлён AcademicDateService: активность дня определяется по назначенному группе графику.
  • Обновлён ScheduleGeneratorService: обычные пары генерируются только на разрешённых днях.
  • Добавлены API профилей, календарей, дневной сетки, кодов активностей и назначений группам.
  • Обновлены админские экраны специальностей, групп и расписания.
  • Добавлена документация docs/ACADEMIC_CALENDAR.md.

Оставшиеся задачи

  • Добавить интеграционные тесты генерации расписания для кодов Т, Э, К, *, =.
  • Добавить проверку конфликтов преподавателей, аудиторий и групп при сохранении правил.
  • Добавить модель связи пользователя-студента с учебной группой.
  • Добавить импорт календарного графика из Excel, если он понадобится после ручного редактора.

Проверочный сценарий

  1. Полностью сбросить локальную БД.
  2. Запустить приложение и применить V1__init.sql.
  3. Создать профиль специальности.
  4. Создать календарный график и заполнить дневную сетку.
  5. Назначить график группе.
  6. Проверить GET /api/schedule на дне теории и на днях, где пары запрещены.