Задача [0109]: Модификация интерфейса редактора маршрутов

Формулировка проблемы: необходимо модифицировать интерфейс редактора маршрутов для того, чтобы:

Используется:

Примечание

Информация, выделенная курсивом, не обязательна в рамках реализации 68й итерации.

Решение: необходимо изменить интерфейс редактора маршрутов согласно следующей структуре:

При отсутствии маршрута необходимо отображать пустую рабочую область, причем панель редактирования должна отображаться свернутой, и присутствуют только кнопки сворачивания / разворачивания панели.

Основная рабочая область

Основная рабочая область должна содержать следующие элементы:

  • кнопка "Добавить";

  • выпадающий список настроенных маршрутов;

  • дерево плашек этапов маршрута;

  • кнопка "Отправить" / "Запустить" / "Сохранить".

Также необходимо отображать пунктирную линию по левому краю редактора. Цвет линии должен зависить от ее текущего состояния (mouse_over, выделенный этап) (см. Форматирование). .

Кнопка "Добавить"

По нажатию на кнопку необходимо добавлять новую плашку этапа в конец маршрута. Плашка должна содержать только следующие элементы:

  • номер;

  • иконки перемещения в рамках текущего маршрута;

  • иконка удаления;

  • длительность - "0 ч".

Также необходимо отображать незаполненные поля согласно типу этапа, выбранного по умолчанию, в панели редактирования.

Выпадающий список настроенных маршрутов

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

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

Дерево плашек этапов маршрута

Для дальнейшего описания функционала редактора маршрутов необходимо выделить следующие понятия:

  • Этап - главный независимый элемент маршрута.

  • Параллельный этап - совокупность равнозначных элементов этапа.

  • Вложенный этап - дочерний элемент этапа.

Необходимо отображать данные элементы следующим образом:

  • этапы одного уровня вложенности должны отображаться с одинаковым отступом по левому краю (до 8го уровня вложенности включительно);

  • уровень вложенности этапа определяется количеством буллетов, отображаемых в отступе по левому краю; цвет данных буллетов должен зависеть от текущего состояния этапа (mouse_over, выделенный этап) (см. Форматирование).

  • вложенные этапы должны отображаться с отступом в ... px по левому краю относительно родительского этапа;

  • при наведении курсора на этап, входящий в группу параллельных (mouse_over), а также выделении данного этапа, необходимо отображать пунктирную линию, объединяющую все параллельные этапы.

Размер плашки - динамический, и определяется наличием и количеством информации, отображаемой на плашке.

Примечание

  • Если количество плашек больше, чем основная рабочая область, в ней должен отображаться вертикальный скролл, причем только в области плашек (не затрагивая кнопок "Добавить", "Отправить" / "Запустить" / "Сохранить", а также выпадающий список настроенных маршрутов).

  • При появлении этапа более 8го уровня вложенности необходимо более не добавлять отступ по левому краю.

Каждая плашка этапа должна содержать следующие элементы:

  • иконки перемещения в рамках текущего маршрута;

  • номер этапа;

  • тип действия;

  • ответственный;

  • длительность / дата завершения;

  • иконка удаления / иконка состояния;

  • название этапа;

  • форма завершения.

При этом необходимо отображать:

  • в одну строку с выравниванием по левому краю:

    • иконки перемещения;

    • номер этапа;

    • тип действия;

    • ответственный;

    • длительность / дата завершения;

    Примечание

    Если значения данных параметров такое, что не отображается на одной строке полностью, необходимо совершать перенос на следующую строку.

  • с выравниванием по правому краю - иконка удаления / иконка состояния.

При нажатии на плашку она должна становиться активной - подсвечиваться синим цветом (см. Форматирование).

Примечание

Если в качестве значения выпадающего списка "Форма завершения" выбран пункт "Нет", необходимо не отображать данное поле и область для него на плашке этапа.

Иконки перемещения в рамках текущего маршрута

Представляют собой две стрелки: вверх и вниз. По нажатию на одну из иконок необходимо перемещать плашку этапа на порядок выше / ниже.

Для плашек этапов

  • отображать стрелку вверх на плашке первого этапа неактивной;

  • отображать стрелку вниз на плашке последнего этапа неактивной;

  • при наличии лишь одной плашки отображать обе стрелки неактивными.

Для плашек параллельных этапов

  • отображать стрелку вверх активной только на первой плашке группы этапов;

  • отображать стрелку вниз активной только на последней плашке группы этапов;

  • по нажатию на стрелку перемещать всю группу параллельных этапов вместе со всеми их вложенными этапами.

Для плашек вложенных этапов

  • отображать стрелку вверх на плашке первого вложенного этапа неактивной;

  • отображать стрелку вниз на плашке последнего вложенного этапа неактивной;

  • перемещать вложенные этапы только в группе родительского;

  • при наличии лишь одной плашки отображать обе стрелки неактивными.

При этом номер на плашке и структурный номер этапа и всех его вложенных этапов должны отображать новый порядок.

Примечание

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

Номер этапа

Представляет собой порядковый номер этапа относительно текущего уровня вложенности.

Номер этапа должен отображаться в формате x.y...z.n (где x - номер этапа 1го уровня вложенности, y - номер этапа 2го уровня вложенности, z - номер родительского этапа n, n - номер текущего этапа).

Пример отображения структурных номеров

  | 1
    || 1.1
    || 1.1
    | 1.2
      | 1.2.1
        | 1.2.1.1
    | 1.3
  || 2
  || 2
    | 2.1

где:

| - признак этапа / вложенного этапа;

|| - признак параллельного этапа.

Тип действия

Представляет собой тип процесса выбранного этапа. По умолчанию выбран тип "Работа".

Ответственный

Представляет собой иконку и имя ответственного за этап в формате Фамилия И.О..

Длительность / дата завершения

Представляет собой дату / время завершения данного этапа формате dd month yyyy / dd / hh (в зависимости от выбранного способа ввода сроков).

Иконка удаления / иконка состояния

Необходимо отображать следующие иконки в зависимости от статуса этапа:

  • редактирование доступно:

    • будущий этап - крестик (кнопка);

  • редактирвоание недоступно:

    • пройденный этап - галочка;

    • этап, завершившийся неуспешно - перечеркнутый круг;

    • этап, находящийся в прогрессе - песочные часы.

При нажатии на иконку удаления (крестик) необходимо отображать модальное окно с кнопками "Ок" и "Отмена" и текстом:

  • для этапа, не имеющего вложенные:

    Вы действительно хотите удалить данный этап?

  • для этапа, имеющего вложенные:

    Удаление данного этапа приведет к тому, что все его вложенные этапы также будут удалены. Вы действительно хотите сделать это?

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

Название этапа

Представляет собой полное название этапа.

Форма завершения

Отображается в формате:

Форма завершения: %название формы завершения%

Кнопка "Отправить" / "Запустить" / "Сохранить"

По нажатию на данную кнопку необходимо проводить ту же валидацию, что и по нажатию на кнопку "Применить".

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

Наличие кнопки опционально - она может быть заменена соответствующей кнопкой в зависимости от места системы, где будет использоваться виджет.

Панель редактирования

Панель редактирования должна находиться в одном из двух состояний:

  • свернута - по умолчанию;

  • развернута.

Необходимо автоматически разворачивать панель редактирования в следующих случаях:

  • выделение этапа;

  • создание этапа.

Панель должна содержать следующие элементы:

  • кнопка "Добавить параллельный";

  • кнопка "Добавить вложенный";

  • поле "Номер";

  • выпадающий список "Тип действия";

  • набор настраиваемых полей процесса;

  • кнопка "Применить";

  • кнопка "Отмена";

  • кнопка сворачивания / разворачивания панели.

Если выбранный этап недоступен для редактирования необходимо отображать значения всех полей в виде лейблов. При этом, если некоторые поля не были заполнены, они не должны отоборажаться вовсе. Также не должны отображаться кнопки "Применить" и "Отмена".

Примечание

Если количество полей больше, чем высота панели редактирования, в ней должен отображаться вертикальный скролл.

Кнопка "Добавить параллельный"

Для добавления параллельного этапа в дерево маршрутов необходимо выделить требуемый этап и нажать на одноименную кнопку. Параллельный этап должен добавиться после выделенного этапа.

При этом поведение плашки должно быть аналогичным, как при добавлении этапа.

При наведении курсора на кнопку необходимо отображать тултип с текстом "Добавить параллельный".

Примечание

Параллельные этапы одного уровня вложенности должны иметь одинаковые номера этапов.

Кнопка "Добавить вложенный"

Для добавления вложенного этапа в дерево маршрутов необходимо выделить требуемый этап и нажать на одноименную кнопку. Вложенный этап должен добавиться после выбранного этапа с отступом по левому краю. Если у данного этапа имеются вложенные этапы, необходимо добавлять новый после выделенного этапа также с отступом по левому краю.

Примечание

При появлении этапа более 8го уровня вложенности необходимо более не добавлять отступ по левому краю.

При этом поведение плашки должно быть аналогичным, как при добавлении этапа.

При наведении курсора на кнопку необходимо отображать тултип с текстом "Добавить вложенный".

Поле "Номер этапа"

Поле "Номер этапа" должно быть нередактируемо и содержать структурный номер этапа.

Выпадающий список "Тип действия"

Значение данного выпадающего списка определяет тип процесса выбранного этапа. Содержит следующие пункты:

  • стандартные процессы:

    • "Работа" - выбран по умолчанию;

    • "Согласование";

    • "Утверждение";

    • "Ознакомление";

    • "Резолюция";

    • "Отправка документа";

    • "Блокирующий процесс";

    • "Регистрация";

    • "Маршрут";

  • специальные процессы:

    • "Отправка документа по форме";

    • "Назначение на должность";

    • "Перевод";

    • "Увольнение";

    • "Копировать в личное дело";

    • "Назначение календаря";

    • "Событие реестра";

    • "Результат запроса";

    • "Работа по форме";

    • "Ввод значения показателей";

    • "Таймер";

    • "Запуск маршрута по шаблону";

    • "Условный переход";

    • "Копирование в карточку";

    • "Переназначение работ".

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

Примечание

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

Набор настраиваемых полей процесса

В зависимости от выбранного типа процесса необходимо отображать набор полей по категориям, представленным ниже.

Значения полей по умолчанию:

  • "Дата завершения" - дата, рассчитанная от текущего времени на сервере согласно значению соответствующей настройки "Время на выполнение работ по-умолчанию" в Конфигураторе (Документооборот -> Настройки Потоков Работ -> Доп. настройки потоков работ);

  • "Длительность" - значение настройки "Время на выполнение работ по-умолчанию" в Конфигураторе (Документооборот -> Настройки Потоков Работ -> Доп. настройки потоков работ);

  • "Нагрузка" - значение настройки "% рабочего времени" в Конфигураторе (Документооборот -> Настройки Потоков Работ -> Настройки нагрузок);

  • "Возврат" - "Нет";

  • "Форма завершения" - "Нет".

Поля, отображаемые для каждого типа действия:

  • поле "Название";

  • поле "Код".

Поля, обязательные для заполнения (в зависимости от наличия):

  • "Название";

  • "Ответственный";

  • "Длительность" / "Дата завершения";

  • "Нагрузка".

Примечание

Поле "Ответственный" должно представлять собою компонент выбора пользователя / должности с возможностью мультивыбора.

При выборе нескольких пользователей / должностей необходимо создавать группу параллельных этапов с дублирующейся информацией по нажатию на кнопку "Применить" (при условии успешного прохождения валидации). При этом должен быть выделен, как активный, первый этап из группы.

Работа
  • компонент выбора пользователя / должности "Ответственный";

  • числовое поле "Нагрузка";

  • выпадающий список "Способ ввода срока" с пунктами:

    • "Длительность (ч)" - добавляется числовое поле, введенное значение учитывается в часах (по умолчанию);

    • "Длительность (дн)" - добавляется числовое поле, введенное значение учитывается в днях;

    • "Дата завершения" - добавляется компонент календарь;

  • выпадающий список "Форма завершения".

Согласование, утверждение
  • компонент выбора пользователя / должности "Ответственный";

  • числовое поле "Нагрузка";

  • выпадающий список "Способ ввода срока" с пунктами:

    • "Длительность (ч)" - добавляется числовое поле, введенное значение учитывается в часах (по умолчанию);

    • "Длительность (дн)" - добавляется числовое поле, введенное значение учитывается в днях;

    • "Дата завершения" - добавляется компонент календарь;

  • выпадающий список "Возврат".

Ознакомление, резолюция
  • компонент выбора пользователя / должности "Ответственный";

  • числовое поле "Нагрузка";

  • выпадающий список "Способ ввода срока" с пунктами:

    • "Длительность (ч)" - добавляется числовое поле, введенное значение учитывается в часах (по умолчанию);

    • "Длительность (дн)" - добавляется числовое поле, введенное значение учитывается в днях;

    • "Дата завершения" - добавляется компонент календарь.

Отправка документа
  • поле "Название" - по умолчанию Отправка документа;

  • компонент выбора пользователя / должности "Адресат".

Блокирующий процесс
  • поле "Название" - по умолчанию Блокирующий процесс;

  • поле "Событие" - по умолчанию event.blocking..

Регистрация
  • числовое поле "Нагрузка";

  • выпадающий список "Способ ввода срока" с пунктами:

    • "Длительность (ч)" - добавляется числовое поле, введенное значение
      учитывается в часах (по умолчанию);

    • "Длительность (дн)" - добавляется числовое поле, введенное значение учитывается в днях;

    • "Дата завершения" - добавляется компонент календарь.

Маршрут
  • поле "Название" - по умолчанию название выбранного шаблона маршрута;

  • компонент выбора маршрутов "Шаблон маршрутов".

Примечание

Необходимо отображать все выбранные ранее избранные маршруты в выпадающем списке "Тип действия" вместе со стандартными и/или специальными процессами в рамках текущего этапа.

Отправка документа по форме
  • поле "Название" - по умолчанию Отправка документа по форме;

  • поле "Адресат".

Назначение на должность
  • поле "Пользователь";

  • поле "Новая должность пользователя".

Перевод
  • поле "Пользователь";

  • поле "Должность, с которой нужно перевести пользователя";

  • поле "Должность, на которую нужно перевести пользователя".

Увольнение
  • поле "Пользователь";

  • поле "Должность, с которой нужно уволить пользователя".

Копировать в личное дело
  • поле "Название" - по умолчанию Копировать в %название выбранной папки%;

  • компонент выбора папок личного дела "Копировать в";

  • поле "Пользователь".

Назначение календаря
  • поле "Название" - по умолчанию %значение выпадающего списка "Статус"%;

  • выпадающий список "Статус" - по умолчанию выбран первый пункт списка;

  • поле "Пользователь";

  • поле "Дата начала периода";

    • поле "Дата завершения периода".

Событие реестра
  • поле "Название" - по умолчанию Событие реестра;

  • поле "Событие" - по умолчанию event.registers.formdata..

Результат запроса
  • многострочное поле "SQL запрос".

Работа по форме
  • стек-панель "Основные параметры":

    • лейбл "Номер этапа";

    • выпадающий список "Тип действия";

    • поле "Название";

    • поле "Код";

    • выпадающий список "Тип работы";

    • "Ответственный":

      • поле "Из компонента";

    • выпадающий список "Дата начала" с пунктами:

      • "Из компонента" - при выборе пункта также необходимо отображать поле;

      • "Указать" - при выборе пункта также необходимо отображать компонент календарь (по умолчанию заполнять текущей датой);

      • "Дата запуска работы" (выбран по умолчанию);

    • выпадающий список "Способ ввода сроков" с пунктами:

      • "Из компонента" - при выборе пункта также необходимо отображать поле;

      • "Длительность (ч)" - при выборе пункта также необходимо отображать числовое поле, причем введенное значение учитывается в часах (выбран по умолчанию);

      • "Длительность (дн)" - при выборе пункта также необходимо отображать числовое поле, причем введенное значение учитывается в днях;

      • "Дата завершения" - при выборе пункта также необходимо отображать компонент календарь;

  • стек-панель "Дополнительные параметры":

    • флажок с выпадающим списком "Повторение" (по умолчанию выключен) с пунктами:

      • "Из компонента" - при выборе пункта также необходимо отображать поле (выбран по умолчанию);

      • "Указать" - при выборе пункта также необходимо отображать выпадающий список (по умолчанию "Нет");

    • флажок с выпадающем списком "Форма завершения" (по умолчанию выключен) с пунктами:

      • "Из компонента" - при выборе пункта также необходимо отображать поле (выбран по умолчанию);

      • "Указать" - при выборе пункта также необходимо отображать выпадающий список (по умолчанию "Нет");

  • стек-панель "Дополнительные поля":

    • кнопка "Добавить";

    • редактируемая таблица со столбцами:

      • "Ключ";

      • "Значение";

      • иконки удаления строки.

Список обязательных полей:

  • "Ответственный";

  • "Дата начала" (для выбранных переключателей "Из компонента" и "Указать");

  • "Длительность";

  • "Повторение" (для включенного флажка и выбранного переключателя "Из компонента");

  • "Форма завершения" (для включенного флажка и выбранного переключателя "Из компонента").

Ввод значения показателей

В качестве названия процесса по умолчанию необходимо отображать Ввод значения показателей.

Таймер
  • компонент выбора маршрутов "Шаблон маршрута";

  • группа настроек "Дата запуска":

    • поле "Дата запуска";

    • флажок "Относительно" с выпадающим списком (по умолчанию "За") и полем "дней" (по умолчанию выключен);

  • выпадающий список "Время запуска" с пунктами:

    • "Из компонента" - при выборе пункта также необходимо отображать поле;

    • "Указать" - при выборе пункта также необходимо отображать компонент ввода времени (выбран по умолчанию, 00:00).

Примечание

При открытии маршрута, чей таймер уже запущен, но действие по нему еще не наступило, необходимо отображать кнопку "Аннулировать таймер" по нажатию на которую система должна выдавать диалоговое окно для обязательного ввода комментария-причины. После подтверждения действия таймер должен удалиться, а соответствующая запись - добавиться в Ход исполнения.

При этом кнопки добавления этапов ("Добавить", "Добавить параллельный", "Добавить вложенный"), кнопки "Применить" и "Отмена", а также поля этапов должны быть неактивны.

Запуск маршрута по шаблону
  • компонент выбора маршрутов "Шаблон маршрута";

  • выпадающий список "Запускать от имени" с пунктами:

    • "Не изменять" (выбран по умолчанию);

    • "Из компонента" - при выборе пункта также необходимо отображать поле;

    • "Указать" - при выборе пункта также необходимо отображать компонент выбора пользователей / должностей.

Условный переход
  • стек-панель "Основные параметры":

    • лейбл "Номер этапа";

    • выпадающий список "Тип действия";

    • поле "Название";

    • выпадающий список "Возврат";

    • поле "Код";

    • выпадающий список с "Источник данных" c пунктами:

      • "Форма реестра" (выбран по умолчанию);

      • "Произвольная форма" - при выборе пункта также необходимо отображать компонент выбора форм;

  • стек-панель "Переходы":

    • кнопка "Редактировать";

    • "Переход" - список настроенных переходов (должен содержать пункты "Условие" и "Результат");

      Примечание

      Каждое новое условие необходимо отображать с новой строки.

    • "Переход по умолчанию" - настроенный переход по умолчанию (должен содержать только пункт "Результат").

Примечание

Если количество переходов больше, чем панель редактирования, в ней должен отображаться вертикальный скролл, причем только в области списка (не затрагивая кнопку "Редактировать", "Применить" и "Отмена").

По нажатию на кнопку "Редактировать" необходимо отображать диалоговое окно "Редактирование переходов", соответствующее вкладке "Переходы" в окне настроек "Параметры процесса "Условный переход"".

Также необходимо отображать диалоговое окно "Параметры", вызываемое из выпадающего списка выбора маршрута / этапа, следующим образом:

  • выпадающий список "Запустить от имени" с пунктами:

    • "Не изменять" (выбран по умолчанию);

    • "Из компонента" - при выборе пункта также необходимо отображать поле;

    • "Указать" - при выборе пункта также необходимо отображать компонент выбора пользователей / должностей;

  • выпадающий список "После выполнения" с пунктами:

    • "Продолжить маршрут";

    • "Перейти к этапу" - при выборе пункта также необходимо отображать поле (выбран по умолчанию).

Копирование в карточку
  • выпадающий список "Тип карточки" (по умолчанию "Пользователь");

  • поле "Идентификатор объекта";

  • кнопка "Сопоставление" - по нажатию на кнопку необходимо открывать окно с элементами:

    • кнопка "Добавить сопоставление" - по нажатию на кнопку необходимо открывать выпадающее меню со списком форм системы и при выборе одного из пунктов отображать следующие элементы:

      • кнопка "Добавить";

      • кнопка "Удалить";

      • таблица сопоставлений.

Переназначение работ
  • стек-панель "Основные параметры":

    • лейбл "Номер этапа";

    • выпадающий список "Тип действия";

    • поле "Название";

    • поле "Код";

  • стек-панель "Дополнительные параметры":

    • поле "Исходный пользователь";

    • группа настроек "Переназначить работы, в которых исходный пользователь является":

      • выпадающий список "Исполнителем" с пунктами:

        • "На пользователя" - при выборе пункта также необходимо отображать поле (выбран по умолчанию);

        • "Оставить без изменения";

        • "На руководителя";

        • "На автора";

      • выпадающий список "Автором" с пунктами:

        • "На пользователя" - при выборе пункта также необходимо отображать поле (выбран по умолчанию);

        • "Оставить без изменения";

        • "На исполнителя";

        • "На руководителя";

        • "Удалить эти работы";

        • "Завершить эти работы";

      • выпадающий список "Автором и исполнителем" с пунктами:

        • "На пользователя" - при выборе пункта также необходимо отображать поле (выбран по умолчанию);

        • "Оставить без изменения";

        • "На руководителя";

        • "Удалить эти работы";

        • "Завершить эти работы";

    • флажок с полем "Переслать документы пользователю" (по умолчанию выключен, поле неактивно).

Плейсхолдеры

Общий случай:

  • поле "Название":

    Введите название

  • поле "Код":

    Введите код

Частные случаи:

  • Отправка документа по форме;

    • Адресат:

      Укажите пользователя

  • Назначение на должность:

    • Пользователь:

      Укажите пользователя

    • Новая должность:

      Укажите должность

  • Перевод:

    • Пользователь:

      Укажите пользователя

    • Должность, с которой нужно перевести пользователя:

      Укажите должность

    • Должность, на которую нужно перевести пользователя:

      Укажите должность

  • Увольнение:

    • Пользователь:

      Укажите пользователя

    • Должность, с которой нужно уволить пользователя:

      Укажите должность

  • Копировать в личное дело:

    • Копировать в:

      Выберите папку

    • Пользователь:

      Укажите пользователя

  • Назначение календаря:

    • Пользователь:

      Укажите пользователя

    • Дата начала периода:

      Укажите дату начала

    • Дата завершения периода:

      Укажите дату завершения

  • Результат запроса:

    • SQL запрос:

      Укажите SQL запрос

  • Работа по форме:

    • Ответственный (Из компонента):

      Укажите пользователя

    • Дата начала (Из компонента):

      Укажите дату начала

    • Способ ввода сроков (Из компонента):

      Укажите завершение/длительность

    • Повторение (Из компонента):

      Укажите период повторения

    • Форма завершения (Из компонента):

      Укажите форму завершения

  • Таймер:

    • Дата запуска:

      Укажите дату запуска

    • Время запуска (Из компонента):

      Укажите время запуска

  • Запуск маршрута по шаблону:

    • Запускать от имени (Из компонента):

      Укажите пользователя

  • Копирование в карточку:

    • Идентификатор объекта:

      Укажите идентификатор

  • Переназначение работ:

    • Исходный пользователь:

      Укажите пользователя

    • Из компонента:

      Укажите пользователя

    • Переслать документы пользователю:

      Укажите пользователя

Кнопка "Применить"

По нажатию на кнопку необходимо валидировать поля этапа, а именно запрещать сохранять изменения, подсвечивать поле красным и отображать ошибку со следующим текстом в случае:

Общая валидация:

  • не заполнено поле "Название":

    Введите название

  • не заполнено поле "Ответственный":

    Введите ответственного

  • не заполнено поле "Способ ввода срока" -> "Длительность":

    Введите длительность

  • не заполнено поле "Способ ввода срока" -> "Дата завершения":

    Введите дату завершения

  • в поле "Способ ввода срока" -> "Дата завершения" указана уже прошедшая дата:

    Некорректная дата завершения

  • не заполнено поле "Нагрузка" либо указан некорректный тип нагрузки:

    Укажите нагрузку

    Пример корректной нагрузки для локали ru: 20%, 8ч, 1д

    Пример некорректной нагрузки для локали ru: 20м, 10с

    Если тип нагрузки не указан (%, ч либо д), то считается, что оно примет значение ч (для локали ru).

  • значение поля "Код" уже присвоено другому этапу:

    Данный код уже используется

Частные случаи:

  • Отправка документа:

    • не заполнено поле "Адресат":

      Укажите пользователя

  • Назначение на должность:

    • не заполнено поле "Пользователь":

      Укажите пользователя

    • не заполнено поле "Новая должность пользователя":

      Укажите новую должность пользователя

  • Перевод:

    • не заполнено поле "Пользователь":

      Укажите пользователя

    • не заполнено поле "Должность, с которой нужно перевести пользователя":

      Укажите должность, с которой нужно перевести пользователя

    • не заполнено поле "Должность, на которую нужно перевести пользователя":

      Укажите должность, на которую нужно перевести пользователя

  • Увольнение:

    • не заполнено поле "Пользователь":

      Укажите пользователя

    • не заполнено поле "Должность, с которой нужно уволить пользователя":

      Укажите должность, с которой нужно уволить пользователя

  • Копировать в личное дело:

    • не заполнено поле "Пользователь":

      Укажите пользователя

  • Назначение календаря:

    • отсутствует либо не настроен справочник "calendar_types":

      Справочник calendar_types отсутствует либо не настроен

    • не заполнено поле "Пользователь":

      Укажите пользователя

    • не заполнено поле "Дата начала периода":

      Укажите дату начала периода

    • не заполнено поле "Дата завершения периода":

      Укажите дату завершения периода

  • Результат запроса:

    • не заполнено поле "SQL запрос":

      Укажите SQL запрос

  • Работа по форме:

    • стек-панель "Основные параметры":

      • не заполнено поле "Ответственный":

        Укажите ответственного

      • не заполнено поле настройки "Дата начала" (для выбранных переключателей "Из компонента" и "Указать"):

        Укажите дату начала

      • не заполнено поле настройки "Длительность":

        Укажите длительность

    • стек-панель "Дополнительные параметры":

      • не заполнено поле настройки "Повторение" (для включенного флажка и выбранного переключателя "Из компонента"):

        Укажите повторение

      • не заполнено поле настройки "Форма завершения" (для включенного флажка и выбранного переключателя "Из компонента"):

        Укажите форму завершения

    Примечание

    Также необходимо подсвечивать стек-панель красным цветом.

  • Таймер:

    • не выбран шаблон маршрута:

      Выберите шаблон маршрута

    • не заполнено поле настройки "Дата запуска":

      Укажите дату запуска

    • не заполнено поле настройки "Время запуска":

      Укажите время запуска

  • Запуск маршрута по шаблону:

    • не выбран шаблон маршрута:

      Выберите шаблон маршрута

    • не заполнено поле настройки "Запускать от имени" (для выбранных переключателей "Из компонента" и "Указать"):

      Укажите пользователя, от чьего имени будет осуществляться запуск

  • Условный переход:

    • не выбрана форма (для включенного флажка "Произвольная форма"):

      Выберите форму

  • Копирование в карточку:

    • не заполнено поле настройки "Идентификатор объекта":

      Укажите идентификатор объекта

  • Переназначение работ (стек-панель "Дополнительные параметры"):

    • не заполнено поле "Исходный пользователь":

      Укажите исходного пользователя

    • не заполнены поля настроек "Переназначить работы, в которых исходный пользователь является" (для выбранных переключателей "На пользователя"):

      Укажите пользователя, на которого будет переназначена работа

    • не заполнено поле флажка "Переслать документы пользователю" (для включенного флажка):

      Укажите пользователя, на которого будет переназначены документы

Примечание

Необходимо сохранить функционал компонентов типа "Числовое поле" и "Дата", а именно: В случае ввода несуществующей даты (компонент "Дата") и / или отрицательного числа / 0 / символов вместо цифр (компонент "Числовое поле") необходимо подсвечивать поле красным цветом и не позволять сохранять изменения.

Примечание Если не заполнено 2 и более обязательных поля, необходимо их подсвечивать и отображать список всех ошибок.

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

Примечание

В случае если значение ни одного поля не было изменено необходимо отображать кнопку "Применить" неактивной. Изменения должны учитываться лишь в случае, если сохраняемое значение поля отличается от первоначального.

Примечание

При переносе фокуса в основную рабочую область без нажатия по кнопке "Применить" необходимо отображать то же модальное окно, что и по нажатию на кнопку "Отмена".

Кнопка "Отмена"

По нажатию на кнопку необходимо отображать модальное окно с кнопками "Ок" и "Отмена" и текстом:

Данное действие приведет к удалению несохраненных данных. Вы действительно хотите продолжить?

В случае подтверждения необходимо:

  • при создании этапа - очищать все заполненные поля;

  • при редактировании этапа - заполнять измененные поля теми значениями, которые были заданы до момента редактирования этапа.

Также данное поведение должно осуществляться при изменении фокуса в редакторе:

  • выделение другой плашки этапа;

  • добавление нового этапа;

  • нажатие на кнопку "Назад";

  • выбор иного модуля / раздела (для виджетов, вписанных в экран);

  • сворачивание / закрытие вкладки (для виджетов, вписанных во вкладку);

  • закрытие окна (для виджетов, вписанных в окно).

Примечание

В случае если значение ни одного поля не было изменено необходимо отображать кнопку "Отмена" неактивной. Изменения должны учитываться лишь в случае, если сохраняемое значение поля отличается от первоначального.

Кнопка сворачивания / разворачивания панели

В зависимости от состояния панели кнопка должна отображать:

  • >> - развернутая панель;

  • << - свернутая панель.

По нажатию на кнопку необходимо сворачивать панель редактирования к правому краю редактора маршрутов. При этом основная рабочая область должна отображаться на ширину всего окна редактора маршрутов.

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

Особенности поведения
Конфигуратор -> Процессы -> Реестры -> Редактирование маршрута

Необходимо:

  • не отображать выпадающий список настроенных маршрутов в основной рабочей области;

  • в основной рабочей области отображать три панели с заголовками:

    • "Предварительные этапы";

    • "Действия";

    • "Последующие этапы";

  • каждый заголовок должен содержать флажок "Отображать при сохранении" (по умолчанию выключен);

  • содержание выпадающего списка "Тип действия" в зависимости от панели должно быть следующим:

    • "Предварительные этапы" - только стандартные процессы;

    • "Действия" - и стандартные, и специальные процессы;

    • "Последующие этапы" - только стандартные процессы;

  • по умолчанию:

    • ни одна панель, а также кнопки "Добавить", "Добавить паралелльный", "Добавить вложенный" не активны;

    • поля параметров этапа, а также кнопки "Применить", "Отмена" не отображаются.

  • рамка и заголовок активной панели должны выделяться синим цветом (см. Форматирование);

  • добавление этапа / подэтапа должно осуществляться только в активную панель;

  • если панель не содержит этапов, необходимо отображать одну пустую строку;

  • в качестве кнопки завершения редактирования маршрута отображать кнопку "Сохранить".

Конфигуратор -> Процессы -> Шаблоны маршрутов -> Редактирование шаблона маршрута
  • Отображать в выпадающем списке "Тип действия" и стандартные, и специальные процессы (кроме процесса "Таймер").

  • Не отображать выпадающий список настроенных маршрутов в основной рабочей области.

  • Вписывать новый виджет в область редактора старого типа.

Основное приложение -> Потоки работ -> Редактирование работы

Основное приложение -> Потоки работ -> Создание работы по маршруту (в т.ч. по избранному)
  • Отображать в выпадающем списке "Тип действия" только стандартные процессы.

  • Вписывать редактор маршрутов в модальное окно редактирования работы (по нажатию на кнопку "Маршрут") таким образом, чтобы размер самого окна составлял 792*692 px ( 2793.7*2440.9 mm, 72 dpi).

  • При нажатии на кнопку "Назад" - возвращать исходный размер окна редактирования работы.

Основное приложение -> Потоки работ -> Отправка по маршруту
  • Отображать в выпадающем списке "Тип действия" только стандартные процессы.

  • В качестве кнопки завершения редактирования маршрута отображать кнопку "Отправить".

  • Отображать вкладку с возможностью сворачивания "По маршруту..." в панели задач.

  • При сворачивании вкладки и повторном отправлении той же работы по маршруту необходимо разворачивать свернутую вкладку.

Основное приложение -> Хранилище -> Документы -> Мастер регистрации документа
  • Отображать в выпадающем списке "Тип действия" только стандартные процессы.

  • Вписывать редактор маршрутов в модальное окно мастера регистрации документа ("Шаг 3: Исполнители и маршрут") таким образом, чтобы размер самого окна составлял 792*692 px ( 2793.7*2440.9 mm, 72 dpi).

  • При возврате на предыдущий шаг - возвращать исходный размер окна мастера регистрации.

Хранилище -> Документы -> Все -> Изменить маршрут
  • Отображать в выпадающем списке "Тип действия" только стандартные процессы.

  • Если документ не содержит маршрутов - отображать пункт контекстного меню "Изменить маршрут" неактивным.

Хранилище -> Реестры -> Активация записи реестра

Необходимо заменить диалоговое окно на текущий виджет с добавлением многострочного поля названия реестра, а также отображать редактор маршрутов таким же образом, что и в Конфигураторе (Конфигуратор -> Процессы -> Реестры -> Редактирование маршрута), но с отличиями:

  • Для специальных процессов - в панели редактирования должны отображаться лейблы только тех полей, которые отображаются в стек-панели "Основные параметры".

  • Все этапы панели "Действия", настроенные в Конфигураторе должны отображаться неактивными, а поля этих этапов - недоступными для редактирования / удаления / изменения порядка (кнопки "Добавить", "Добавить паралелльный", "Добавить вложенный", "Применить" и "Отмена" неактивны).

  • Этапы разделов "Предварительные этапы" и "Последующие этапы", настроенные в одноименных панелях в Конфигураторе должны отображаться активными и быть доступными для редактирования, причем необходима возможность создания новых этапов.

  • Наличие панелей должно зависеть от состояния флажка "Отображать при сохранении" в Конфигураторе.

  • Если флажок "Отображать при сохранении" выключен для всех разделов, необходимо не отображать вкладку с редактором маршрутов.

  • Отображать вкладку с возможностью сворачивания "Запуск маршрута" в панели задач.

  • При сворачивании вкладки и повторном отправлении той же работы по маршруту необходимо разворачивать свернутую вкладку.

  • В качестве кнопки запуска маршрута отображать кнопку "Запустить".

Основное приложение -> Настройки -> Маршруты -> Маршрут
  • Отображать в выпадающем списке "Тип действия" только стандартные процессы.

  • Не отображать иконку добавления этапа + в верхней панели вкладки.

  • Не отображать выпадающий список настроенных маршрутов в основной рабочей области.

  • Вписывать новый виджет в область редактора старого типа.

Форматирование
Размеры:
  • ширина свернутой панели редактирования - ...;

  • ширина развернутой панели редактирования - ...;

  • минимальный размер плашки этапа - ...;

Цвет:
  • #737373 - текст в невыделенном состоянии;

  • #ebebeb - буллеты и штриховая линия в невыделенном состоянии;

  • #616161 - текст, буллеты и штриховая линия в состоянии mouse_over;

  • #deefff - плашка, буллеты и штриховая линия в выделенном состоянии;

  • #92adc6 - заголовок панели этапов в маршруте реестра.

Рисунок 30. Маршрут по таймеру с этапами с короткими названиями

Маршрут по таймеру с этапами с короткими названиями

Рисунок 31. Маршрут по таймеру с этапом с длинным названием

Маршрут по таймеру с этапом с длинным названием

Рисунок 32. Выделенный этап, содержащий параллельный этап / этапы

Выделенный этап, содержащий параллельный этап / этапы

Рисунок 33. Маршрут по таймеру с открытой панелью редактирования и выделенным этапом второго уровня вложенности, содержащим параллельный этап

Маршрут по таймеру с открытой панелью редактирования и выделенным этапом второго уровня вложенности, содержащим параллельный этап

Рисунок 34. Параллельные этапы в состоянии mouse_over

Параллельные этапы в состоянии mouse_over

Рисунок 35. Этапы в различных состояниях (пройденный этап; этапы, завершившиеся неуспешно; этап, находящийся в прогрессе; будущие этапы)

Этапы в различных состояниях (пройденный этап; этапы, завершившиеся неуспешно; этап, находящийся в прогрессе; будущие этапы)

Рисунок 36. Маршрут по таймеру с открытой панелью редактирования, но без выбранного этапа

Маршрут по таймеру с открытой панелью редактирования, но без выбранного этапа

Рисунок 37. Просмотр настроек неактивного (пройденного) этапа

Просмотр настроек неактивного (пройденного) этапа

Рисунок 38. Редактор маршрута в диалоге редактирования работы / создания работы по маршруту

Редактор маршрута в диалоге редактирования работы / создания работы по маршруту

Рисунок 39. Редактор маршрутов в 3м шаге мастера регистрации

Редактор маршрутов в 3м шаге мастера регистрации

Рисунок 40. Редактор маршрутов в подразделе "Настройки -> Маршруты" в основном приложении

Редактор маршрутов в подразделе "Настройки -> Маршруты" в основном приложении

Рисунок 41. Редактор маршрутов в реестрах с незаполненным названием этапа (Конфигуратор)

Редактор маршрутов в реестрах с незаполненным названием этапа (Конфигуратор)

Рисунок 42. Редактор маршрутов при запуске реестра (вкладка)

Редактор маршрутов при запуске реестра (вкладка)

Рисунок 43. Диалоговое окно "Параметры", вызываемое из настроек условного перехода

Диалоговое окно "Параметры", вызываемое из настроек условного перехода

Рисунок 44. Окно ввода комментария-причины аннулирования таймера

Окно ввода комментария-причины аннулирования таймера