merge: объединить изменения команды в Redesign

This commit is contained in:
Zuev
2026-08-15 00:25:58 +03:00
22 changed files with 627 additions and 141 deletions

View File

@@ -593,6 +593,14 @@ GET /api/schedule?groupId=1&startDate=2026-04-27&endDate=2026-05-03
название автоматически как `код специальности — профиль обучения — форма обучения — учебный год`.
Отдельного пользовательского названия у календарного графика нет.
`POST /api/admin/academic-calendars` создаёт график и начальную сетку одной транзакцией.
Для каждого курса из диапазона `1..courseCount` backend сохраняет один период с кодом `Т`
на весь учебный год, включая обе его границы. Поэтому обычные занятия разрешены сразу после
создания и назначения графика группе; пользователь затем заменяет нужные даты на сессию,
каникулы, практику и другие активности. Если код `Т` отсутствует или не разрешает обычное
расписание, запрос возвращает `400`, а график не создаётся. Обновление существующего графика
через `PUT` не пересоздаёт и не перезаписывает его периоды.
При `PUT /api/admin/academic-calendars/{id}` backend блокирует график и повторно проверяет
все сохранённые назначения, периоды активности и дисциплины. Изменение года, специальности,
профиля, формы или количества курсов, которое сделает данные несовместимыми, возвращает