Пошук користувачів за функціями equal та Inverse startsWith
Ця функціональність застаріла і буде видалена у майбутніх релізах. |
🌐 Цей документ доступний українською та англійською мовами. Використовуйте перемикач у правому верхньому куті, щоб змінити версію. |
1. Загальний опис
Бізнес-назва інтеграційного розширення: Keycloak Get Officer Users By Attributes Equals And Start With. Службова назва інтеграційного розширення: Назва файлу у бібліотеці розширень: keycloakGetOfficerUsersByAttributesEqualsAndStartWith.json |
Делегат потрібний для того, щоб при виконанні бізнес-процесу отримати список користувачів із системною роллю officer
(посадова особа) за певними атрибутами із сервісу Keycloak.
Наразі обов’язковими атрибутами для всіх реєстрів є edrpou
та drfo
та fullName
.
Реєстри можуть використовувати також довільні атрибути, зокрема KATOTTG
.
У цьому документі ми розглядаємо пошук на прикладі 4-х згаданих атрибутів. |
Keycloak API отримує GET
-запити із заданими параметрами та повертає масив імен (username) користувачів, які надалі можна використати у бізнес-процесі.
Пошук за атрибутами edrpou
, drfo
та fullName
здійснюється за допомогою функції equal
, яка повертає значення, що мають точну відповідність (дорівнюють) заданим.
Пошук за атрибутом KATOTTG
здійснюється за допомогою функції Inverse startsWith
, яка повертає значення зі вказаним префіксом, тобто такі, що "починаються із" заданої умови.
Функція Шукає користувачів, в яких у Keycloak значення певного атрибута "починається зі" значення, внесеного на UI-формі у Кабінеті користувача. При цьому значення атрибута в Keycloak є повним. Наприклад, Функція Працює так само як функція |
Перед налаштуванням шаблону в Camunda Modeler переконайтеся, що каталог resources/element-templates застосунку містить файл keycloakGetOfficerUsersByAttributesEqualsAndStartWith.json. |
2. Налаштування шаблону у бізнес-процесі
-
Змоделюйте нову задачу.
-
Визначте її тип, натиснувши іконку ключа та обравши з меню пункт Service Task (сервісна задача).
-
Перейдіть до панелі налаштувань справа та застосуйте делегат Keycloak Get Officer Users By Attributes Equals And Start With. Для цього оберіть відповідний шаблон із каталогу (
Open Catalog
) та натиснітьApply
для підтвердження. -
Виконайте подальші налаштування:
-
У полі
Name
введіть назву задачі. Наприклад,Пошук користувачів за введеними атрибутами
. -
У полі
Attributes Equals
введіть значення для пошуку за ЄДРПОУ, та/або ДРФО, та/або ПІБ —${attributesEquals}
. -
У полі
Attribute Inverse Start With
введіть значення для пошуку за КАТОТТГ —${attributesStartsWith}
.Наразі можна передати ключі та значення атрибутів лише як змінну.
У нашому прикладі змінними для пошуку атрибутів є
${attributesEquals}
та${attributesStartsWith}
.Об’єкти (пари ключ-значення) для атрибутів пошуку формуються скриптом у попередній задачі бізнес-процесу. Дані для скриптової задачі передаються з відповідної користувацької форми та обробляються скриптом. Результат виконання зберігається до змінних пошуку, які ми і використовуємо при налаштуванні шаблону делегата.
-
У полі
Result variable
вкажіть змінну результату виконання пошуку, до якої необхідно зберегти список отриманих користувачів —usersByAttributes
.
-
Скористайтеся BPMN-схемою тестового бізнес-процесу, щоб побачити більше контексту використання делегата. Завантажте BPMN-файл та відкрийте у моделері для візуалізації процесу. |
3. Використання параметрів пошуку у Кабінеті посадової особи
Система надає можливість пошуку як за одним з атрибутів, так і за комбінацією атрибутів: KATOTTG
, edrpou
, drfo
та fullName
3.1. Передумови
-
В системі є 3 користувачі з відповідними атрибутами ЄДРПОУ та КАТОТТГ:
-
Іванов, ЄДРПОУ 11111111, КАТОТТГ UA0502 (Вінницький р-н).
-
Петров, ЄДРПОУ 22222222, КАТОТТГ UA05 (Вінницька обл.).
-
Сидоренко, ЄДРПОУ 34554362, UA05 (Вінницька обл.).
-
-
Розглянемо 3 сценарії пошуку:
-
За атрибутом ЄДРПОУ та значенням 34554362.
-
За атрибутом КАТОТТГ та значенням UA05100030000051497 (Вапнярська ТГ, Тульчинський р-н, Вінницька обл.).
-
За комбінацією атрибутів: ЄДРПОУ=34554362 та КАТОТТГ=UA05100030000051497.
-
3.2. Проходження процесу
-
Першочергово для того, щоб потрапити до Кабінету посадової особи, необхідно пройти автентифікацію в системі за допомогою ключа.
Детальніше ознайомитися з процедурою автентифікації користувачів ви можете за посиланням. -
Перейдіть до розділу Доступні послуги та запустіть бізнес-процес для пошуку користувачів за атрибутами.
-
На формі задачі введіть значення одного атрибута ЄДРПОУ —
34554362
у відповідному полі. Натиснітьпошук
, щоб отримати результат.В результаті система знаходить одного користувача, що задовольняє критеріям пошуку.
-
Виконайте задачу повторно та введіть на формі значення одного атрибута КАТОТТГ —
UA05100030000051497
у відповідному полі. Натиснітьпошук
, щоб отримати результат.В результаті система знаходить двох користувачів, що задовольняють критеріям пошуку.
-
Виконайте задачу повторно та введіть на формі значення комбінації атрибутів: ЄДРПОУ —
34554362
та КАТОТТГ —UA05100030000051497
у відповідному полі. Натиснітьпошук
, щоб отримати результат.В результаті система знаходить одного користувача, що задовольняє критеріям пошуку.