График конструктора: 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, который отвечает за UI‑навигацию для платформы Constructor Cloud. Компонент следует спецификациям дизайна в Figma и предоставляет иерархию навигации для Периодов курса, Периодов экзаменов, Планирования и Настроек. Он читает контекст термина из LocalStorage, адаптируется к разным средам деплоя и поддерживает глубокие ссылки с навигацией истории браузера.

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

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

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

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

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