Skip to content

Операции ​

English · Русский

Настройки компонента @mes/aps@1.23.0. В MES имена записей Settings начинаются с schedule.; см. как заполнить запись.

Полосы операций в основном поле: наладки, текст внутри полосы, шрифт и цвета подписей, просроченные операции и подсказка при наведении. Общие правила строк (label, order, hidden, template) описаны на странице подсказок и подписей, общие цвета — на странице внешнего вида.

Наладки и узкие полосы ​

appSettings.equipmentAreaSettings.showAdjustment ​

Рисует полосы наладки (переналадки) внутри операций.

  • Тип: логическое значение
  • По умолчанию: true
  • Взаимодействие: цвет наладки задаёт appSettings.drawPreferences.adjustmentFillColor; слишком узкие наладки скрывает minWidthShow.

appSettings.drawPreferences.adjustmentFillColor ​

Заливка полосы наладки (переналадки) внутри операции.

  • Тип: строка CSS-цвета
  • По умолчанию: #161320
  • Взаимодействие: рисуется только при appSettings.equipmentAreaSettings.showAdjustment: true; когда операция приглушена, вместо этого цвета применяется inactiveElementsColor, см. внешний вид. Высота полосы наладки фиксирована (половина высоты операции) и настройкой не меняется.

appSettings.drawPreferences.minWidthShow ​

Минимальная ширина полосы в пикселях, при которой операция или её наладка вообще рисуется. Полосы уже этого значения пропускаются; при слишком малой ширине короткие операции исчезают, а не сливаются в точку.

  • Тип: число, пиксели
  • По умолчанию: 1
  • Взаимодействие: применяется вместе с appSettings.equipmentAreaSettings.showAdjustment в одном фильтре.

Текст внутри полосы ​

Подписи рисуются внутри полосы операции. Состав строк задаёт operationInfoConfig, шрифт и цвета — остальные ключи этого раздела.

operationInfoConfig ​

Текст внутри полосы операции. Строки обрезаются по ширине полосы (см. useLabelEllipsis ниже). Число строк ограничено базовой высотой строки, то есть высотой одного уровня оборудования, которую задаёт вертикальный масштаб (см. шкалу времени и масштаб); сама полоса операции ниже неё на вертикальный отступ, до 20 пикселей: помещается целая часть от (базовая высота − 20) / (размер шрифта + 12), остальные строки не выводятся. При размере шрифта 14 для двух строк нужна базовая высота не меньше 72 пикселей. У оборудования с finite: false операции, пересекающиеся по времени, раскладываются по нескольким уровням: строка оборудования выше в число уровней раз, а высота каждого уровня остаётся базовой. Поля те же, что у operationTooltipConfig. Обычно задаётся с пустыми подписями:

json
{
  "operationInfoConfig": {
    "name": { "label": "" },
    "workOrder.number": { "label": "" }
  }
}

appSettings.drawPreferences.labelTextFont ​

Семейство шрифта подписи. Пакет сам добавляет размер перед этим значением и передаёт canvas строку вида 14px arial.

  • Тип: строка, семейство шрифта, например arial или "Roboto", sans-serif
  • По умолчанию: bold arial
  • Ограничение: насыщенность и начертание в этом значении не работают. Значение по умолчанию образует строку 14px bold arial, в которой bold arial читается как имя семейства; такого семейства обычно нет, и браузер подставляет свой шрифт по умолчанию. Указывайте только семейство.

appSettings.drawPreferences.labelTextFontSize ​

Размер шрифта подписи в пикселях.

  • Тип: число, пиксели
  • По умолчанию: 14

appSettings.drawPreferences.useLabelEllipsis ​

Что делать со строкой подписи, которая не помещается в полосу: true обрезает её с многоточием, false не выводит строку вовсе.

  • Тип: логическое значение
  • По умолчанию: true
  • Ограничение: для просроченных операций многоточие включено всегда, настройка на них не действует.

appSettings.drawPreferences.labelTextColor ​

Цвет текста подписи на обычной операции.

  • Тип: строка CSS-цвета
  • По умолчанию: #F7F7F8

Просроченные операции ​

Операция считается просроченной по признаку late в данных расписания. Цвет полосы вдоль верхнего края просроченной операции задаёт lateItemColor: он общий с панелью вторичных ограничений и описан на странице внешнего вида.

appSettings.drawPreferences.lateLabelTextColor ​

Цвет текста подписи на просроченной операции.

  • Тип: строка CSS-цвета
  • По умолчанию: #A90D04

appSettings.drawPreferences.lateLabelTextOutlineColor ​

Цвет обводки текста подписи на просроченной операции.

  • Тип: строка CSS-цвета
  • По умолчанию: #F7F7F8

Подсказка при наведении ​

operationTooltipConfig ​

Подсказка при наведении на полосу операции.

Ключом может быть путь к любому полю записи операции. Пакет берёт запись из элемента расписания scheduledOperations[].schedule[] и передаёт её в построение текста подсказки целиком, вместе с полями, которых сам не знает: дополнительное поле в данных расписания, которые приложение передаёт в компонент (например, customField; имя условное), указывается так же, как перечисленные ниже. К записи пакет добавляет workOrder — объект заказа, найденный в workOrders расписания по совпадению его guid с orderGuid операции, тоже целиком, поэтому ключом может быть и любое другое поле заказа. Поля, которые пакет вычисляет сам (type, startX, startY, width, height, maxWidth, operation), заменяют одноимённые поля данных.

Для подсказки операции нужны operationGuid и orderGuid; настройка строки не запрашивает отсутствующие данные.

Поля, которые пакет описывает в типах. Операция: name, position, startDate, finishDate, setupFinishDate, late, locked, type, setupTime, executeTime, operationGuid, orderGuid, workUnitObjectGuid. Заказ: workOrder.number, workOrder.name, workOrder.dueDate, workOrder.priority, workOrder.quantity, workOrder.guid.

Не используется ​

  • appSettings.drawPreferences.labelTextOutlineColor (по умолчанию #161320) объявлена, но обводка подписи обычной операции всегда чёрная (#000000). Обводка настраивается только для просроченных операций.
  • appSettings.drawPreferences.operationOpacityLevel (по умолчанию 0.95): прозрачность операций фиксирована.
  • appSettings.drawPreferences.adjustmentHeightScale (по умолчанию 0.5): высота наладки фиксирована.

Пример ​

Мельче шрифт подписей, тёмно-красный текст подписей просроченных операций, без полос наладки; внутри полосы название операции и номер заказа, в подсказке название и признак просрочки:

json
{
  "appSettings": {
    "equipmentAreaSettings": { "showAdjustment": false },
    "drawPreferences": {
      "labelTextFontSize": 12,
      "lateLabelTextColor": "#7f1d1d"
    }
  },
  "operationInfoConfig": {
    "name": { "label": "" },
    "workOrder.number": { "label": "" }
  },
  "operationTooltipConfig": {
    "name": { "label": "Операция", "order": 1 },
    "late": { "label": "Срыв срока", "order": 2 }
  }
}

Полосы наладки не рисуются. Подписи внутри полосы выводятся шрифтом 12 пикселей, если полоса достаточно широка и строка достаточно высока: при этом размере шрифта для двух строк нужна базовая высота не меньше 68 пикселей. Текст подписи просроченной операции тёмно-красный. Для операции «Фрезеровка» с признаком late: true подсказка при наведении покажет:

text
Операция: Фрезеровка
Срыв срока: true