Задача [0321]: Эргономика диалога выбора групп в конфигураторе

Формулировка проблемы: в результате реализации задачи 0202 на данный момент утрачена возможность поиска групп в диалоге их выбора. Также, для некоторых подразделов Системы требуется возможность множественного выбора групп. В связи с этим необходимо:

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

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

Компонент обладает одним из двух свойств:

Рисунок 191. Диалог выбора групп с единичным выбором

Диалог выбора групп с единичным выбором

Рисунок 192. Диалог выбора групп с множественным выбором

Диалог выбора групп с множественным выбором

Общие параметры

Данный диалог имеет следующие логические части:

  • строка поиска;

  • навигатор;

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

  • кнопка "Выбрать".

Примечание

Диалог отображает только те группы, которые доступны для текущего авторизованного методолога / администратора.

Поле поиска по умолчанию содержит плейсхолдер Поиск группы.

Навигатор отображает две вкладки:

  • "Выбранные" - по нажатию на вкладку в основной рабочей области отображаются плашки текущих выбранных групп.

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

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

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

Примечание

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

Плашки сортируются по названию группы в порядке возрастания. По умолчанию ни одна плашка не выделена. Исключением являются компоненты в подразделах:

  • Типы документа

  • Картотека (для локального администартора)

    • Управление пользователями

    • Управление пользователями -> Карточка пользователя

    • Структура -> Назначение на должность

  • Доступ к объектом конфигурации (для локального администартора и методолога)

Для данных подразделов в диалоге выбора будут выделены плашки всех выбранных ранее групп.

Плашки отображают следующую информацию:

  • Название группы;

  • Название ее родительской группы.

    Примечание

    Для групп первого уровня название родительской группы не отображается.

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

Кнопка "Выбрать" отображается неактивной, если ни одна группа не была выбрана.

Функционал компонента

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

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

Поиск групп

Поиск осуществляется в выделенной ноде навигатора по названиям групп. Результатом поиска является фильтрация текущего списка.

Компонент выбора групп с полем тегов

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

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

Форматирование

  • высота поля по умолчанию (ни одна группа не выбрана) - 28px;

  • ширина компонента в подразделе "Типы документа" - 450px.

Рисунок 193. Компонент выбора групп в подразделе "Типы документов"

Компонент выбора групп в подразделе "Типы документов"

Особенности внедрения компонента в подразделы системы

Данный компонент с единичным выбором доступен:

  • Конфигуратор (суперметодолог)

    • Настройки системы -> Доступ к объектам конфигурации -> Добавление группы

    • Отдел кадров -> Карточки пользователей -> Группа

    • Отчеты

      • Встроенные отчеты

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

  • Административное приложение (суперадминистратор)

    • Картотека -> Управление пользователями -> Карточка пользователя

    • Настройки системы -> Доступ к объектам конфигурации -> Добавление группы

  • Административное приложение (локальный администратор)

    • Картотека

      • Управление пользователями

      • Управление пользователями -> Карточка пользователя

      • Структура -> Назначение на должность

    • Хранилище -> Группы -> Добавление пользователя

    • Настройки системы -> Доступ к объектам конфигурации -> Добавление группы

Компонент с возможностью множественного выбора:

  • Конфигуратор (суперметодолог):

    • Документооборот

      • Типы документов

      • Создание документов

    • Процессы -> Реестры

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

Реестры, Создание документов

При добавлении нескольких групп они добавятся в таблицу доступа к данным объектам в алфавитном порядке по возрастанию. При добавлении списка групп, в котором присутствует хотя бы одна, которая была добавлена ранее, то данная группа не будет добавлена повторно.

Для реестров флажки прав добавленных групп будут выключены.

Типы документов

Для данного подраздела компонент выбора групп будет заменен на новый, который описан выше.

Действия при обновлении системы

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

Пример использования

Требование: наличие групп следующей структуры:

  • 1.1

  • Группа 1

    • Группа 1.1

      • Группа 1.1.2

  • Группа 2

    • Группа 2.1

      • Группа 2.1.1

Поиск групп

  1. Авторизоваться с логином и паролем методолога в конфигураторе.

  2. Перейти в раздел "Создание документов".

  3. Создать пункт - заполнить наименование на трех языках и выбрать реестр.

  4. Нажать на кнопку "Добавить" - открылось окно выбора групп. В навигаторе отображается свернутое дерево групп:

    • Все группы

      • 1.1

      • Группа 1

      • Группа 2

      Рабочая область содержит список всех групп:

    • 1.1

    • Группа 1

    • Группа 1.1

    • Группа 1.1.2

    • Группа 2

    • Группа 2.1

    • Группа 2.1.1

    Также окно содержит поле поиска.

  5. В поле поиска ввести "1.1" и нажать клавишу Enter - в основной рабочей области отобразились только следующие группы:

    • 1.1

    • Группа 1.1

    • Группа 1.1.2

    • Группа 2.1.1

Множественный выбор (только для диалога выбора групп в подразделах "Реестры" и "Создание документов")

  1. Авторизоваться с логином и паролем методолога в конфигураторе.

  2. Перейти в раздел "Реестры".

  3. Создать реестр - заполнить обязательные поля и добавить права на реестр.

  4. В основной рабочей области выбрать группы "Группа 1.1.2" и "Группа 2.1.1".

  5. Сохранить изменения - окно выбора групп закрылось, права на данный реестр доступны для групп "Группа 1.1.2" и "Группа 2.1.1".

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

  1. Авторизоваться с логином и паролем методолога в конфигураторе.

  2. Перейти в раздел "Карточки пользователей".

  3. Создать карточку пользователя - выбрать форму, выключить флаг "Создать карточку для всех пользователей" и добавить права доступа для данной группы.

  4. В основной рабочей области выбрать группу "Группа 1.1.2" - группа была выбрана.

  5. Выбрать группу "Группа 2.1.1" - выбор с группы "Группа 1.1.2" был снят, выбрана "Группа 2.1.1".

  6. Сохранить изменения - окно выбора групп закрылось, права на данную карточку пользователя доступны для группы "Группа 2.1.1".