Дашборды

Для отображения домашней страницы пользователя или информации по кейсу в ECOS предусмотрены дашборды.

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

Все настройки хранятся в том же json, что и конфигурация дашборда.

Виды дашбордов

На момент написания статьи существует 4 вида дашборда:

Тип/Ключ

Описание

Case-details

Дашборд карточки кейса - информация по документу (задачи, свойства, действия, история и др.).
Ключ dashboard’а берется из RecordRef в URL страницы и как правило он связан с типом/видом ECOS.
Формирование ключа построено по следующему правилу:
type_uuid/kind_
type_uuid
То есть для договоров это будет:
1. contracts-cat-doctype-contract/contracts-cat-contract-rent
2. contracts-cat-doctype-contract
Порядок - от более приоритетного к менее приоритетному
Например: localhost/v2/dashboard?activeTab=0&recordRef=emodel/type-id@local-id

Site-details

Страница раздела, которая позволяет отображать общие данные по разделу.
Ключ dashboard’а берется из RecordRef в URL страницы. На момент написания ключ формируется по правилу «site» + siteId.
Если идентификатор сайта contracts, то его приоритетный dashboardKey будет site_contracts.

User-dashboard

Домашняя страница пользователя. Открывается если в URL не указано никакого recordRef.
Например: localhost/v2/dashboard
Ключ dashboard’а всегда DEFAULT, если явно не задано обратного (возможно указание dashboardKey в URL)

profile-details

Страница профиля пользователя, которая доступна из меню действий с учетной записью пользователя, пункт «Мой профиль» (см. Панель управления)
Например: localhost/v2/dashboard?activeTab=0&recordRef=emodel/person@username

В ссылках для user-base-type-dashboard, user-dashboard (самостоятельно и из оргструктуры) используется параметр activeTab,

например, https://host/v2/dashboard?activeTab=0&recordRef=emodel/person@admin

activeTab=N - активная вкладка дашборда. Вкладки нумеруются с 0, где 0 - первая вкладка.

Алгоритм поиска dashboard следующий:

  1. Смотрим наличие recordRef в URL,

  2. Если recordRef отсутствует - отправляется запрос на конфигурацию домашней страницы пользователя,

  3. Если recordRef присутствует, то запрашиваем аттрибуты _dashboardKey[] (массив) и _dashboardType (одно значение),

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

  5. Если на сервере конфигурации не нашлось, то пробуем следующий dashboardKey,

  6. Если ни по одному ключу не нашелся dashboard, то запрашиваем конфигурацию по ключу DEFAULT.

Кэширование

Кеширование возможно в пределах открытой вкладки браузера:

  1. _dashboardKey[] и _dashboardType по recordRef (они достаточно редко меняются),

  2. Конфигурация dashboard (или её отсутствие) по dashboardKey + dashboardType.

Настройка прав на редактирование

В системе для пользователей можно разграничить права на настройку дашборда (restrict-access-to-edit-dashboard) и настройку виджетов (restrict-access-to-edit-dashboard-widgets).

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

Конфиги хранятся в разделе Управление системой – Конфигурация ECOS:

../../_images/dashboards_widgets_settings.png

Включение настройки:

../../_images/dashboards_widgets_settings_1.png

Конфигурация дашборда

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

Конфигурация дашборда происходит непосредственно из выбранного типа данных.

Чтобы дополнительно конфигурировать дашборд – изменить настройки, убрать или добавить виджеты, необходимо перейти в карточку кейса, профиль пользователя или домашнюю страницу и нажать шестеренку- > «Настроить страницу»:

../../_images/dashboards_1.png

Общая форма настройки имеет следующий вид:

../../_images/dashboards_2.png

Разделы дашборда

«Принадлежность»

../../_images/dashboards_3.png

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

Тип данных может быть изменен из доступного выпадающего списка. Например:

../../_images/dashboards_4.png

Отдельный дашборд может быть настроен для определенного документа (если на примере выбрать тип «Договор№512», то при открытии карточки данного договора будет отображаться дашборд, сконфигурированный именно для данного документа).

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

«Представление»

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

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

../../_images/dashboards_5.png

Только для типа дашборда Site-dashboard доступно следующее расположение (Количество колонок подстраивается под размер окна браузера):

../../_images/dashboards_6.png

Для типа дашборда Case-details доступна поддержка мультиязычного имени для вкладок:

../../_images/dashboards_lang_1.png ../../_images/dashboards_lang_2.png ../../_images/dashboards_lang_3.png

Важно

Для мобильной версии отображаются только те виджеты, которые уже были настроены для десктопной версии и несут в себе те же настройки:

../../_images/dashboards_7.png

«Виджеты»

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

../../_images/dashboards_8.png

Набор доступных виджетов зависит от вида дашборда.

Настройки виджетов на дашбордах

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

Информация по доступности виджета хранится в самом виджете (без участия сервера).

В конфигурации виджета в поле config.widgetDisplayCondition задается условие как json-строка. Написание условия в соответствии статье Язык предикатов

Если отсутствует условие, то виджет отображается.

Журнал «Дашборды»

Журнал расположен в разделе администратора -> Конфигурация UI - > Дашборды:

../../_images/dashboards_9.png

Дашборд можно отредактировать, удалить, внести изменения через конфиг:


../../_images/dashboards_10.png

Скачать


../../_images/dashboards_11.png

Удалить


../../_images/dashboards_12.png

Редактировать в форме


../../_images/dashboards_13.png
Редактировать json
../../_images/dashboards_15.png

../../_images/dashboards_14.png

Копировать