К содержанию
База знаний

Смены

Назначение

Смена — рабочий блок производства, в котором мастер ведёт группу заданий за определённый отрезок времени: восьмичасовой день, ночная смена, дежурство в выходной. На смене собирается всё, что связано с этой пачкой работ: задания, исполнители, простои, выработка. Закрытая смена — основа для расчёта зарплаты и аналитики; открытая смена — рабочее окно мастера.

Кто работает с модулем

  • Мастер — открывает свою смену на день, ведёт её, добавляет задания, контролирует ход, закрывает в конце.
  • Администратор — видит и управляет сменами всех мастеров организации, может назначать смены за других, корректировать состав.
  • Оператор — раздел «Смены» в веб-интерфейсе ему недоступен. Он видит свою текущую смену косвенно — через назначенные ему задания в приложении OCULUS.

Раздел и навигация

Раздел «Смены» в основном меню веб-интерфейса. На странице — единая таблица с шапкой «Управление сменами / Создание и настройка рабочих смен с назначением руководителей» и кнопкой «Добавить смену». Вкладок нет — все смены в одном списке, разделение задаётся фильтрами и сортировкой.

Основные сценарии

Создание смены

  1. Мастер или администратор нажимает «Добавить смену».
  2. В форме указывает:
    • Код смены — короткое обозначение (например, «А», «Ночная», «Дежурная»). До 10 символов.
    • Дата — день, на который заводится смена.
    • Плановое начало и плановый конец — время в часах и минутах.
    • Мастер — администратор выбирает любого мастера организации; мастер сам себе подставляется автоматически.
  3. После сохранения смена появляется в списке со статусом «Новая».

Перед сохранением система проверяет, что плановое окончание позже планового начала, что назначенный мастер действительно имеет роль «Мастер» или «Администратор», и что у этого мастера ещё нет другой смены на эту же дату — двух смен на одного мастера в один день система не пропускает.

Запуск смены

  • На «Новой» смене у мастера появляется кнопка «Начать», но только если сегодняшняя дата совпадает с датой смены — нельзя «начать» вчерашнюю или будущую смену.
  • При запуске статус меняется на «Активная», фиксируется фактическое время начала.
  • Запуск смены требует наличия в ней хотя бы одного задания — пустая смена не стартует.

Дублирование

В строке таблицы есть действие «Дублировать» — открывается форма создания, заполненная значениями исходной смены: код, дата, плановое время, мастер. Мастер меняет дату (или другое поле) и сохраняет — новая смена создана. Удобно для повторяющихся типовых смен.

Завершение смены

  1. На «Активной» смене кнопка «Завершить».
  2. Перед закрытием система проверяет, что все задания смены находятся в финальных статусах («Завершено» или «Отменено») и что нет открытых простоев ни на одном из заданий. Если что-то не так, система отказывает с конкретным перечнем: список незавершённых заданий с их кодами, продукцией и текущим статусом, или указание «есть активные простои, завершите их перед закрытием смены».
  3. После закрытия фиксируется фактическое время окончания, статус меняется на «Завершённая», и смена становится недоступной для редактирования и для добавления новых заданий.

Передача и смена мастера

Отдельного механизма «передачи смены другому мастеру» в системе нет. Если по факту смену поведёт другой человек, администратор может изменить поле «Мастер» через редактирование смены — это разрешено, пока смена не закрыта. Изменение фиксируется в истории и заново проверяется на пересечение смен у нового мастера.

Поля и данные

ПолеОбязательноПодсказки и правила
Код сменыДаДо 10 символов. Свободный текст: «А», «Ночь», «Дежурная».
ИдентификаторЗаполняется автоматически в формате SHF-YYYY-NNNN.
ДатаДаДень проведения смены.
Плановое началоДаВремя в формате часы:минуты.
Плановое окончаниеДаДолжно быть позже планового начала.
МастерДаИз списка действующих мастеров и администраторов.
Фактическое началоЗаполняется при запуске.
Фактическое окончаниеЗаполняется при закрытии.
СтатусНовая / Активная / Завершённая.

Состав смены (операторы и машины) явных полей не имеет — он определяется через задания, входящие в смену: какие операторы исполняют её задания, на каких машинах эти задания выполняются. Поэтому добавить «оператора в смену» отдельно нельзя — для этого создаётся или переносится задание.

Списки, фильтры, поиск

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

Сортировка: по любой колонке. По умолчанию — по дате, новые сверху.

Фильтры:

  • Статус — выбор из «Новая / Активная / Завершённая».
  • Назначенный мастер — поиск по сотрудникам.
  • Код смены и идентификатор — текстовый поиск с поддержкой нескольких значений через запятую.
  • Диапазон дат смены.
  • Диапазоны времени — по плановому и фактическому началу и концу.
  • Глобальный поиск — по идентификатору, коду, имени мастера, статусу (по русским названиям) и по дате как в формате 2026-05-06, так и 06.05.2026.

В таблице рядом со статусом видны автоматические счётчики: сколько всего заданий в смене и сколько уже завершено. Это позволяет на глаз оценить ход смены без захода внутрь.

Экспорт списка — в табличный файл (выбор формата) с теми же колонками, что в интерфейсе.

Автоматика и подсказки системы

  • Идентификатор смены формируется автоматически в виде SHF-YYYY-NNNN — повторов внутри организации не бывает.
  • Двух смен на одного мастера в одну дату система не создаст — попытка отвергается с указанием существующей смены.
  • Кнопка «Начать» появляется только в день смены — нельзя случайно запустить вчерашнюю или будущую.
  • Кнопка «Завершить» работает только при чистом списке: все задания в финальных статусах и все простои закрыты. Иначе — конкретный текст ошибки с перечнем причин.
  • Завершённая смена недоступна для редактирования и удаления, если в ней есть задания — это защита истории.
  • Счётчики «всего заданий» и «завершено» в строке таблицы пересчитываются автоматически.
  • Автоматическое открытие смены по расписанию не предусмотрено — все смены создаются и запускаются мастером или администратором вручную.

Микро-фичи и детали интерфейса

  • Идентификатор смены формата SHF-2026-0042 удобно искать в журналах и переписке — он стабилен и не меняется при правках.
  • Цвет статуса «Активная» зелёный (подчёркивает «работает прямо сейчас»), «Новая» синий, «Завершённая» нейтральный — мастер видит общее состояние списка периферическим зрением.
  • В строке таблицы рядом со статусом два числа: количество заданий и количество уже завершённых. По соотношению видно, что смена «уже почти закрыта».
  • Кнопка «Начать» выкручена в зелёный, «Завершить» — в красный: цвета подсказывают значимость действия.
  • Кнопка «Начать» физически отсутствует, если сегодня не дата смены — нельзя стартовать смену не в свой день.
  • Кнопка «Начать» также не появится у пустой смены — стартовать «без заданий» бесполезно, и система не позволяет случайно открыть смену впустую.
  • При попытке завершить смену с открытыми простоями текст ошибки прямо называет причину: «есть активные простои, завершите их перед закрытием смены».
  • При попытке завершить смену с незавершёнными заданиями текст содержит список конкретных заданий — мастер сразу видит, что осталось доделать.
  • Дублирование смены копирует параметры в новую — мастер только меняет дату.
  • Глобальное поле поиска принимает дату в двух форматах сразу — 2026-05-06 и 06.05.2026. Не нужно «угадывать» формат.
  • Дублирование двух смен в один день одному мастеру блокируется в момент сохранения с прямым текстом «Мастер уже имеет смену на эту дату».
  • Раздел «Смены» полностью скрыт от оператора — оператор не путается в чужих интерфейсах и видит только свои задания в приложении OCULUS.
  • Перенос задания между сменами выполняется в карточке задания (не в карточке смены) — это сохраняет логику «у задания есть свой контейнер».

Связи с другими модулями

  • Задания (06). Каждое задание входит ровно в одну смену; перенос между сменами возможен в карточке задания.
  • Простои (08). Простои фиксируются на заданиях смены и блокируют её закрытие, пока не закрыты сами.
  • Машины (09). Какие именно машины «участвуют» в смене, видно через её задания — это естественное следствие связи «задание → машина».
  • Пользователи и роли (03). Мастер обязателен; помощников-мастеров система не предусматривает.
  • Зарплата (11). Закрытая смена — расчётная единица: фактическое начало, фактическое окончание и итоги заданий идут в начисления.
  • Аналитика (12). Отчёты по сменам, мастерам и выработке опираются на закрытые смены.
  • Календарь (10). Дата смены определяет, рабочий это день, выходной или перенос.

Состояния и пограничные случаи

  • Закрытие смены с открытыми заданиями. Заблокировано. Система перечисляет конкретные задания, которые надо завершить или отменить.
  • Закрытие смены с открытыми простоями. Заблокировано с явным текстом причины.
  • Запуск смены без заданий. Невозможен. Сначала добавляется задание, потом смена стартует.
  • Запуск смены вне даты. Кнопки «Начать» нет ни вчера, ни завтра — только в текущую дату.
  • Две смены одному мастеру в один день. Невозможно: проверка по дате блокирует создание.
  • Удаление смены с заданиями. Невозможно даже если статус «Новая». Сначала задания убирают или переносят, потом смену можно удалить.
  • Удаление закрытой смены. Возможно только при отсутствии заданий — то есть для пустой ошибочной смены.
  • Перенос задания между сменами разных дней. Разрешён в карточке задания; принимающая смена должна быть незакрытой.
  • Долгая смена через полночь. Допускается: плановое начало в один день, плановый конец в следующий — система просто хранит дату и время начала и конца отдельно.
  • Изменение мастера активной смены. Разрешено администратору; новая привязка проходит ту же проверку на пересечение смен.

Операторский интерфейс OCULUS

  • Раздел «Смены» в приложении OCULUS не открывается — всё управление смен идёт из веб-интерфейса.
  • Оператор видит свою смену косвенно: в списке его заданий каждая запись подписана идентификатором смены, в которую она входит.
  • Старт работы по заданию автоматически означает работу в рамках текущей открытой смены — оператор не выбирает её отдельно.
  • Если мастер ещё не открыл смену, задания оператора не активируются — приложение покажет состояние «ждём открытия смены».
  • При закрытии смены мастером все задания, которые ещё не были закрыты оператором, требуют завершения — оператор видит соответствующие подсказки в приложении.

На этой странице