Общая информация
Компонент ChildrenList позволяет выбрать одного или нескольких детей из выпадающего списка при наличии у пользователя заполненных данных о детях в ЛК ЕПГУ, а также добавить одного или нескольких детей без сохранения в ЛК. Является компонентом-контейнером, все компоненты внутри будут вложенными
Поддерживаемые экраны
Компонент может быть задействован на экране типа:
Внешний вид компонента
В услуге
Содержимое вложенных компонентов ChildrenList
В конструкторе
Структура компонента ChildrenList
ВКУ | JSON |
|
||
№ | В конструкторе | Атрибут | Тип | Описание |
1 | Идентификатор компонента | id | string | Уникальный идентификатор компонента в JSON |
2 | Имя компонента | name | string | Допускается ввод любых данных для отображения в конструкторе, однако классическим видом является s1_с1, где номера — сгенерированные идентификаторы, s — экран, c — компонент |
3 | Название кнопки добавления ребёнка | label | string | Название для кнопки клонирования блока «Добавить ребёнка» |
4 | Компонент предназначен для выбора только одного ребёнка | singleChild | boolean | Позволяет ввести только одного ребёнка на экране, блокируя клон-панель |
5 | Минимальное количество добавляемых детей | minOccures | Integer, string | Позволяет ввести минимальное количество клонируемых блоков. Используется, когда нужно запрещать переход на следующий экран, пока пользователь не добавит нужное количество детей |
6 | Максимальное количество добавляемых детей | repeatAmount | Integer, string | Позволяет ввести максимальное количество клонируемых блоков |
7 | Выбрать по умолчанию всех детей из ЛК | expandAllChildrenBlocks | boolean | Позволяет автоматически выбрать всех детей, добавленных в ЛК |
8 | Минимальный возраст ребёнка, лет | minAge | integer | Позволяет задать ограничение на минимальный возраст ребёнка |
9 | Максимальный возраст ребёнка, лет | maxAge | integer | Позволяет задать ограничение на максимальный возраст ребёнка |
10 | Минимальная дата рождения | bornAfterDate | string | Позволяет настроить минимальную дату рождения детей |
11 | Максимальная дата рождения | bornbeforeDate | string | Позволяет настроить максимальную дату рождения детей |
12 | Пол ребёнка | VKUgender | string |
Возможно выбрать пол ребёнка:
|
13 | Исключение раннее выбранного ребёнка из списка | childListRef | string | Указываются компоненты, в которых были заполнены данные о детях. При следующем выборе ребёнка по сценарию услуги, раннее выбранный ребёнок не будет предложен |
14 | Название атрибута | attributeName | string |
Позволяет настроить дополнительные условия фильтрации детей, например:
|
15 | Путь до атрибута | attributePath | string | Путь до параметра из ЛК, по которому будут фильтроваться дети |
16 | Значение | value | string | Определение значения фильтра |
17 | Выражение для расчёта значения | expr | string | Если значение, с которым необходимо сравнивать параметр нужно предварительно вычислить, то выражение записывается в этом атрибуте |
18 | Тип значения для фильтра | valueType | string | Тип значения, который указан в value |
19 | Тип данных атрибута | attributeType | string | Определение типа данных атрибута |
20 | Логические операторы для составления сложных выражений | after | string | С помощью логических операторов можно составить сложные выражения. Для определения значения всего фильтра используется бесскобочное построение выражения |
21 | Подсказка под компонентом | hint | string | Текст, который отображается под компонентом |
22 | Отображать имя и фамилию в выпадающем списке | fullNameInList | boolean | Позволяет настроить отображение информации в выпадающем списке. Если не указано, отобразится только имя |
23 | Дополнительная информация | fullNameListAge | string |
Позволяет настроить дополнительное отображение информации о детях:
|
24 | Отображать заголовок блока «Ребёнок X» | chooseChildLabel | string | Название лейбла «Выберите или укажите вручную» |
25 | Название выпадающего списка | fullNameListAge | string |
Позволяет настроить дополнительное отображение информации о детях:
|
26 | Текст, отображаемый вместо прочерка, если не выбран ни один ребёнок из списка | defaultLabelList | string | Переопределение вида выбранного значения. По умолчанию «—» |
27 | Наименование элемента в выпадающем списке для добавления нового ребёнка | defaultNewList | string | Текст кнопки из выпадающего списка «Указать вручную» |
28 | Скрыть кнопку добавления ребёнка вручную | hideAddNewChildButton | boolean | Позволяет скрыть кнопку добавления ребёнка вручную в выпадающем списке |
29 | Название поля | description | array | Отображается на форме в тексте ошибки при нарушении уникальности данных. Должно начинаться со строчной буквы. Пример: серия свидетельства о рождении |
30 | Идентификатор компонента, уникальность которого проверяется | fieldId | string | Указывается идентификатор компонента, для которого необходима проверка на уникальность |
31 | Наименование поля, уникальность которого проверяется | properties | array | Если нужно проверить уникальность данных, которые пользователь заполняет не в компоненте-контейнере, а в компонентах, расположенных на следующих экранах внутри цикла, то таким компонентам необходимо присвоить наименование в атрибуте «Название поля, в которое записать ответ пользователя» и указать его же в данном атрибуте |
32 | Сообщите об ошибке | errorMsg | string | Текст ошибки, который выводится при нарушении уникальности значения |
33 | Заголовок | title | string | Заголовок дисклеймера, который будет отображаться при нарушении уникальности детей |
34 | Текст | description | string | Текст дисклеймера, который будет отображаться при нарушении уникальности детей |
35 | Цвет | type | string | Позволяет задать цвет дисклеймера, который будет отображаться при нарушении уникальности детей |
36 | Модальное окно с пояснением | clarifications | array, objects | Позволяет раскрыть блок «Настроить модальное окно с пояснением вручную» или сделать список ссылок на пояснительные переходы |
37 | Настроить модальное окно с пояснением вручную | acceptableTypes | additionalProperties | Позволяет настроить модальные окна |
38 | Отображать элемент очистки поля | isClearable | boolean | Если не указано, то после выбора ребёнка нельзя очистить поле, можно только выбрать другого |
39 | Принудительный ввод данных ребёнка, если в ЛК нет детей, или принудительный выбор ребёнка, если он один | obliged | boolean | Позволяет выбрать обязательный ввод данных ребёнка, если в ЛК нет детей или он один |
40 | Ссылка на предыдущий компонент ChildrenList | childListRef | string | Если ранее был использован компонент ChildrenList, то список детей будет сформирован на основе него |
41 | Компонент инициирует цикл | isCycled | boolean | Позволяет инициировать цикл из повторяющегося набора экранов для выбранных элементов списка |
42 | Отключение проверки значения на backend для исключения подмены | validateOff | boolean | Отключает валидацию на backend. Данная валидация проверяет, соответствуют ли данные по выбранному ребёнку ошибке |
43 | Заголовок | title | string | Заголовок дисклеймера при нарушении валидации персональных данных детей |
44 | Текст | description | string | Текст дисклеймера при нарушении валидации персональных данных детей |
45 | Цвет | type | string | Цвет дисклеймера при нарушении валидации персональных данных детей |
46 | Модальные окна с пояснениями | clarifications | object, array | Позволяет раскрыть блок «Настроить модальное окно с пояснением вручную» или сделать список ссылок на пояснительные переходы при нарушении валидации персональных данных детей |
47 | Настроить модальное окно с пояснением вручную | acceptableTypes | additionalProperties | Позволяет настроить модальные окна при нарушении валидации персональных данных детей |
48 | Настройка формирования health-метрик | healthList | array | Задаётся список событий компонента, по которым будут формироваться health-запросы |
49 | Отображаемые поля | visibleComponents | string | Компоненты из контейнера, которые будут отображаться вместе со списком для выбора ребёнка |
50 | Редактируемые поля | writableComponents | string | Компоненты из атрибута «Отображаемые поля», которые будут доступны для редактирования |
51 | Идентификатор подсказки suggest | suggestionId | string | Механизм отображения пользователю набора подходящих для ввода данных и автоматическое заполнение полей формы этими данными |
52 | Идентификаторы компонентов, для которых чистить кэш | clearCacheForComponentIds | array | Если ответ на текущий компонент отличается от того, что указан в cachedAnswers, при наличии, то будут удалены все cachedValues, указанные в этом поле |
53 | Вычисляемые аргументы компонента (linkedValues) | linkedValues | array, object | Атрибуты компонента, позволяющие реализовать сложный функционал |
Пример JSON структуры компонента передаваемой в DTO
{ "visited": true, "value": [ { "isNew": "true", "firstName": "Василий", "gender": "F", "id": "f192476b-3026-40ad-924c-f2c4ebba07fb", "middleName": "Васильевич", "lastName": "Васильев", "birthDate": "2021-01-04T00:00:00.000+03:00", "snils": "000-000-000 00" } ] } |
Варианты использования
С помощью компонента ChildrenList можно реализовать выбор определённого ребёнка. Например, в одном ChildrenList пользователь выбрал детей и добавил новых вручную, а в другом ChildrenList ему нужно выбрать одного из ранее выбранных или введённых детей. В настройках компонента необходимо указать ссылку на предыдущий компонент ChildrenList