График конструктора: 7 апреля 2026 г.

07 April, 2026

Обзор

В этом выпуске мы добавили следующие функции:

  • Настраиваемые заранее определённые длительности экзаменов
  • Блокировка отдельных полей для преподавателей в окнах самообслуживания
  • Видимость решений на основе ролей
  • Улучшённый отчёт расписания экзаменов
  • Разделение многомодульных экзаменов и зачисление пересдающих через API Constructor University
  • Навигационный микрофронтенд на Vue.js для Constructor Cloud
  • Движок согласованности организационных данных для CUB API

Что нового

Настраиваемые заранее определённые длительности экзаменов

Учреждения теперь могут контролировать, как преподаватели вводят длительности экзаменов, с помощью новой настройки в разделе Параметры страницы планирования. Доступны два режима: свободный ввод и заранее определённые значения. В режиме с предопределёнными значениями администраторы задают от 1 до 10 допустимых значений длительности экзамена в минутах. Преподаватели затем выбирают значение из выпадающего списка вместо ручного ввода. Система проверяет, что выбранные длительности соответствуют правилу длительности слота, гарантируя, что для эвакуации из аудитории останется не менее 10 минут. Эта функциональность также поддерживается через веб‑службы для интеграции с внешними системами.

Блокировка отдельных полей для преподавателей в окнах самообслуживания

Когда администраторы определяют временное окно, позволяющее преподавателям выполнять ограниченные правки, институциональные поля мастер‑данных теперь автоматически блокируются. В течение окна самообслуживания преподаватели не могут изменять структурные поля, такие как Тип курса, Количество лекций, Факультет, Программа, Преподаватели, Курс, Секция или Кампус. Дублирование секций, удаление секций и выбор строк также отключены. Система применяет эти ограничения как на уровне интерфейса, так и на уровне API, а заблокированные операции регистрируются для аудита. Это предотвращает случайные изменения академической структуры, но при этом позволяет преподавателям управлять разрешёнными полями.

Видимость решений на основе ролей

Страница решения теперь ограничивает видимость на основе статуса публикации и роли пользователя. Пользователи без прав администратора видят только опубликованные решения в выпадающем списке решений, что предотвращает путаницу из‑за черновых или незавершённых расписаний. Если ни одно решение не было опубликовано, выпадающий список остаётся пустым и отображает понятное сообщение. Пользователи с ролями Admin и Super Admin сохраняют полный доступ ко всем решениям. Это ограничение также применяется на стороне сервера, чтобы предотвратить доступ через прямые URL или вызовы API.

Улучшённый отчёт расписания экзаменов

Общий отчёт расписания экзаменов теперь включает четыре улучшения. Экзамены в пределах каждого кампуса и слота отсортированы по длительности в порядке возрастания для удобства просмотра. Заголовки слотов отображают полный временной интервал вместо только времени начала. В каждой строке экзамена показывается длительность в минутах и рассчитанное время начала и окончания конкретного экзамена. Онлайн‑экзамены теперь включены в отчёт со значением аудитории Онлайн‑экзамен, что облегчает их отличие от экзаменов с привязанной аудиторией.

Разделение многомодульных экзаменов и зачисление пересдающих через API Constructor University

Интеграция API Constructor University теперь поддерживает два крупных улучшения. Во‑первых, курсы с несколькими письменными модулями экзамена импортируются как отдельные записи планирования экзаменов, и каждая запись сохраняет собственный список зачисленных обучающихся. Это решает проблему отсутствующих экзаменов для курсов, таких как CH‑212, где модуль A и модуль B требуют независимого планирования. Во‑вторых, синхронизация зачислений теперь захватывает пересдающих студентов из предыдущих семестров, начиная с осени 2023 года, что восстановило примерно 600 ранее отсутствовавших обучающихся. Статус зачисления проверяется с помощью сущности StudiesSemesterCounter для идентификации активных пересдающих и отчисленных.

Навигационный микрофронтенд на Vue.js для Constructor Cloud

Фрагмент Schedule Cloud теперь включает отдельный навигационный микрофронтенд на Vue.js, который обрабатывает интерфейс навигации для платформы Constructor Cloud. Компонент следует спецификациям дизайна Figma и обеспечивает иерархию навигации для Периодов курса, Периодов экзаменов, Планирования и Настроек. Он считывает контекст семестра из LocalStorage, адаптируется к различным средам развертывания и поддерживает глубокие ссылки с навигацией истории браузера.

Движок согласованности данных для CUB API

Для интеграции CUB API добавлен новый движок согласованности организационных данных и автоматического отката. Движок автоматически обнаруживает и разрешает несоответствия данных при синхронизации, включая логику сопоставления типов экзаменов и длительностей. Это помогает обеспечивать более надёжную передачу данных между CampusNet и Constructor Schedule.

Исправленные ошибки

Мы устранили следующие проблемы:

  • Язык отчётов для турецкого: отчёты «Загрузка данных» и «Сохранение данных» больше не отображаются на английском языке, когда веб‑язык установлен на турецкий.
  • Кнопки синхронизации и уведомлений в облаке: кнопки уведомлений и синхронизации теперь видны в обновлённом дизайне облака.
  • Выбранный семестр после обновления страницы: выбранный семестр теперь отображается корректно после обновления страницы.
  • Поле выбора семестра: поле выбора семестра больше не допускает ввод произвольного текста и теперь поддерживает только поведение выбора.
  • Навигация из панели периодов: навигация к периодам из панели периодов теперь работает корректно.
  • Отсутствующие периоды курса и события: периоды курса и события теперь корректно отображаются на странице семестра.
  • Ссылки «Справка» и «Сообщить о проблеме»: кнопки Справочное руководство и Сообщить о проблеме теперь открывают правильные страницы.
  • Валидация области копирования: валидация пустого пространства в области копирования теперь работает корректно.
  • Стили иконки аудитории: иконка аудитории теперь соответствует спецификации дизайна Figma.
  • Белый экран в представлении курса: представление курса больше не показывает белый экран при открытии курсов.
  • Отображение даты синхронизации: дата синхронизации теперь отображается в области синхронизации.
  • Сортировка года на экране синхронизации: поле Год теперь сортируется корректно.
  • Отсутствующие часы занятий в разделе решения: часы занятий теперь корректно отображаются в разделе решения.
  • Ошибки в области синхронизации в обновлённом дизайне: ошибки в области синхронизации в обновлённом дизайне были исправлены.
  • Фильтры управления пользователями: фильтры на странице Управление пользователями теперь корректно очищаются.
  • Кнопка сохранения при создании семестра: кнопка Сохранить теперь корректно отображается в модальном окне создания семестра.
  • Отрицательные значения в полях массового обновления: на странице Преподаватели больше не принимаются отрицательные значения в полях массового обновления.
  • Макет страницы планирования: области страницы планирования теперь соответствуют обновлённому дизайну.
  • Лишняя прокрутка: лишняя прокрутка на затронутых страницах была удалена.
  • Переключение на недавно добавленный семестр: пользователи теперь могут переключаться на недавно добавленный семестр.
  • Кнопка загрузки в разделе импорта: кнопка загрузки в разделе Импорт теперь работает корректно.
  • Обновления кампусов в разделе решения: обновления кампусов теперь корректно отображаются в разделе решения.
  • События в Календаре событий: события теперь корректно отображаются в Календаре событий.
  • Обновления иконки уведомлений: иконка уведомлений теперь обновляется при поступлении новых уведомлений.
  • Переводы на странице решения: проблемы с переводами на странице решения были исправлены.
  • Фаза распределения в оптимизации: фаза распределения теперь корректно продвигается во время оптимизации.
  • Фильтр преподавателей в планировании: фильтры преподавателей на странице планирования теперь работают корректно.
  • Данные фильтра периода экзаменов: фильтры периода экзаменов теперь корректно загружают данные.
  • Иконка добавления в расписании экзаменов: иконка «плюс» в Расписании экзаменов теперь реагирует корректно.
  • Создание еженедельного расписания: ошибки при создании еженедельного расписания были исправлены.
  • Отображение длительности объединённого экзамена: длительность экзамена теперь корректно отображается при объединении экзаменов.
  • Отображение кампуса для объединённых экзаменов: информация о кампусе теперь корректно отображается при объединении экзаменов.
  • Счётчик распределения вне GMT+3: счётчик распределения теперь корректно работает в часовых поясах вне GMT+3.
  • Отображение значений кампуса и программы при объединённых курсах: значения кампуса и программы теперь корректно отображаются при объединении курсов.
  • Очистка поля здания: поле ввода здания теперь корректно очищается.
  • Всплывающие сообщения: всплывающие диалоги теперь показывают правильные сообщения.
  • Выпадающий список предопределённых длительностей: выпадающий список длительности экзамена теперь корректно отображается при выборе предопределённых длительностей.
  • Позднее занятие в решении экзамена: ошибки при добавлении позднего занятия в решение экзамена были исправлены.
  • Добавление курсов в период экзаменов: курсы теперь можно добавлять в решение экзамена в период экзаменов.
  • Удаление используемых предопределённых длительностей: система больше не позволяет удалять значения предопределённых длительностей, которые в настоящее время используются.
  • Предупреждающее сообщение при удалении предопределённой длительности: предупреждающее сообщение теперь корректно отображается, когда пользователь пытается удалить предопределённую длительность, которая используется.
  • Отображение длительности экзамена в период курса: длительность экзамена теперь корректно отображается в периоде курса.