ЕСОЗ - публічна документація

Валідації на стороні МІС

Валідації при реєстрації пацієнта (PERSON) в Системі

id валідації

Атрибут

Назва атрибуту

Обов'язковість атрибуту

Параметр атрибуту

Назва параметру

Обов'язковість

Опис Валідації

Схема валідації

Примітка

id валідації

Атрибут

Назва атрибуту

Обов'язковість атрибуту

Параметр атрибуту

Назва параметру

Обов'язковість

Опис Валідації

Схема валідації

Примітка

Val_PER_1

first_name

Ім'я пацієнта

М

 

 

 

Не може починатися з ЫЪЭЁыъэё@%&$^#

Може вміщати в себе:
від А до Я; Ґ Ї І Є в обох регістрах, символи ' -
пробіл

"first_name": {^(?!.[ЫЪЭЁыъэё@%&$^#])[А-ЯҐЇІЄа-яґїіє\'\-]+(\s(?!.[ЫЪЭЁыъэё@%&$^#])[А-ЯҐЇІЄа-яґїіє\'\-]+)*$
"type": "string"

Діаграма

Val_PER_2

last_name

Прізвище

М

 

 

 

Не може починатися з ЫЪЭЁыъэё@%&$^#

Може вміщати в себе:
від А до Я; Ґ Ї І Є в обох регістрах, символи ' -
пробіл

"last_name": {^(?!.[ЫЪЭЁыъэё@%&$^#])[А-ЯҐЇІЄа-яґїіє\'\-]+(\s(?!.[ЫЪЭЁыъэё@%&$^#])[А-ЯҐЇІЄа-яґїіє\'\-]+)*$
"type": "string"

Діаграма

Val_PER_3

second_name

По-батькові пацієнта

 

 

 

 

Не може починатися з ЫЪЭЁыъэё@%&$^#

Може вміщати в себе:
від А до Я; Ґ Ї І Є в обох регістрах, символи ' -
пробіл

Pattern: { ^(?!.[ЫЪЭЁыъэё@%&$^#])[А-ЯҐЇІЄа-яґїіє\'\-]+(\s(?!.[ЫЪЭЁыъэё@%&$^#])[А-ЯҐЇІЄа-яґїіє\'\-]+)*$

Діаграма

Val_PER_4

birth_date

День народження пацієнта

М

 

 

 

Очікується дата у форматі ISO 8601
Приклад: "1985-11-14"

Pattern “^(\\d{4}(?!\\d{2}\\b))((-?)((0[1-9]|1[0-2])(\\3([12]\\d|0[1-9]|3[01]))?|W([0-4]\\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\\d|[12]\\d{2}|3([0-5]\\d|6[1-6])))?)?$'

Діаграма


Треба додати валідацію на дату. Мінімальне значення 01.01.1900, максимальне - не більше поточної дати

Val_PER_5

birth_country

Країна народження пацієнта

М

 

 

 

 

"birth_country": {
"type": "string"

 

Val_PER_6

birth_settlement

Місце народження пацієнта

М

 

 

 

Не допускається: ЫЪЭЁыъэё@%&$^#

Допускається:
від А до Я;
символи Ґ Ї І Є в обох регістрах.
Символи ' -

Pattern \"^(?!.*[ЫЪЭЁыъэё@%&$^#])[a-zA-ZА-ЯҐЇІЄа-яґїіє0-9№\\\"!\\^\\*)\\]\\[(._-].*$\"

Діаграма

Val_PER_7

gender

Стать пацієнта

M

 

 

 

Значення атрибуту відповідає значенням довідника GENDER.

"type": "string",
"description": "Dictionary: GENDER"

Видалено опис про максимальну кількість символів

Val_PER_8

email

Адреса електронної поштової скриньки персони

 

 

 

 

 

"type": "string"

"pattern": ^[\w!#$%&'*+\/=?`{|}~^-]+(?:\.[\w!#$%&'*+\/=?`{|}~^-]+)*@(?:[A-Z0-9-]+\.)+[A-Z]{2,6}$

 

Val_PER_9

no_tax_id

Персона без РНОКПП

M

 

 

 

За відсутності РНОКПП в даному параметрі необхідно передавати значення "true".
В разі наявності РНОКПП в даному параметрі необхідно передавати значення "false".

“no_tax_id": {
"type": "boolean",
"description": "Status person refused tax_id"

 

Val_PER_10

tax_id

РНОКПП персони

M

 

 

 

Вміщує 10 символів, що приймають значення від 0 до 9.

“tax_id": {
"type": "string",
"pattern": "^[0-9]{10}$"

 

Val_PER_11

secret

Кодове слово пацієнта

М

 

 

 

Мінімальна кількість символів 6, максимальна - 20

"secret": {
"type": "string"

 

Val_PER_12

documents

Документи, що посвідчують особу

M

type

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

M

Відповідає значенням з довідника DOCUMENT_TYPE

 

 

Val_PER_13

documents

Документи, що посвідчують особу

M

number

Номер документу

М

  1. Для значень довідника DOCUMENT_TYPE: PASSPORT; COMPLEMENTARY_PROTECTION_CERTIFICATE; PERMANENT_RESIDENCE_PERMIT; REFUGEE_CERTIFICATE; TEMPORARY_CERTIFICATE
    Не може починатися
    з ЫЪЭЁ

    Серія документу
    2 символа: від А до Я, символи Ґ Ї І Є

    Номер документу
    6 символів, які набувають значень 0-9

    Не допускаються пробіли або інші символи між серією та номером.

  2. Для значень довідника DOCUMENT_TYPE: BIRTH_CERTIFICATE; TEMPORARY_PASSPORT
    Не може починатися з ЫЪЭЁыъэё@%&$^#`~:,.*|}{?!

    Може вміщати
    літери від А до Я; літери Ґ Ї І Є; цифри від 0 до 9; символи №\/()-

    Мін. кількість 1 символ
    Макс. кількість 255 символів

  3. Для значень довідника DOCUMENT_TYPE: NATIONAL_ID
    Може вміщати 9 символів, що набувають значень від 0 до 9.

  1. Pattern: "^((?![ЫЪЭЁ])([А-ЯҐЇІЄ])){2}[0-9]{6}$"

  2. Pattern: "^((?![ЫЪЭЁыъэё@%&$^#`~:,.*|}{?!])[A-ZА-ЯҐЇІЄ0-9№\/()-]){2,25}$\"

  3. Pattern: "^[0-9]{9}$"
    },

  1. Діаграма

  2. Діаграма

  3. Діаграма

Кучерук:

  1. чи дійсно всі номери визначених типів документів мають таку структуру номеру (lbd/ ghbrkfl nen https://uakey.com.ua/documents/example/posvdka-na-timchasove-prozhivannja)?

Val_PER_14

documents

Документи, що посвідчують особу

M

issued_by

Ким виданий

M

Мінімальна довжина 1 символ.

"issued_by": {
"type": "string",
"minLength": 1
},

 

Val_PER_15

documents

Документи, що посвідчують особу

M

issued_at

Коли був виданий

M

Очікується дата у форматі ISO 8601
Приклад: "1985-11-14"

Pattern "^(\\d{4}(?!\\d{2}\\b))((-?)((0[1-9]|1[0-2])(\\3([12]\\d|0[1-9]|3[01]))?|W([0-4]\\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\\d|[12]\\d{2}|3([0-5]\\d|6[1-6])))?)?$"

Діаграма

Val_PER_16

documents

Документи, що посвідчують особу

M

expiration_date

Придатний до

 

Очікується дата у форматі ISO 8601
Приклад: "1985-11-14"

Pattern "^(\\d{4}(?!\\d{2}\\b))((-?)((0[1-9]|1[0-2])(\\3([12]\\d|0[1-9]|3[01]))?|W([0-4]\\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\\d|[12]\\d{2}|3([0-5]\\d|6[1-6])))?)?$"

Діаграма

Val_PER_17

addresses

Адреси проживання/розташування/перебування персони

M

type

Тип адреси

М

Значення атрибуту type відповідає значенню довідника ADDRESS_TYPE, що дорівнює "RESIDENCE":"проживання/розташування/перебування"

"type": {
"type": "string",
"description": "Dictionary: ADDRESS_TYPE"
},

 

Val_PER_18

addresses

Адреси проживання/розташування/перебування персони

M

country

Країна

М

Значення параметру country відповідає значенню довідника COUNTRY

"country": {
"type": "string"
},

 

Val_PER_19

addresses

Адреси проживання/розташування/перебування персони

M

area

Область

М

Не може починатися з ЫЪЭЁыъэё@%&$^#\

Допускаються символи:
від a до z та А до Я, символи Ґ Ї І Є в обох регістрах; цифри від 0 до 9; символи № " ! ^ * )

Наступний допустимий символом є один з ( . _ -

Після допускаються будь-які символи

Мін. кількість символів: 1
Макс. кількість символів: 255

Pattern: "^(?!.*[ЫЪЭЁыъэё@%&$^#])[a-zA-ZА-ЯҐЇІЄа-яґїіє0-9№\\\"!\\^\\*)\\]\\[(._-].*$"

Діаграма

  1. в перспективі треба створити довідник областей і використовувати саме його. Інакше - виключити \ із переліку дозволених символів.

  2. на тестуваннні очікується виявити патерн і вставити в поле схема валідації

Val_PER_20

addresses

Адреси проживання/розташування/перебування пацієнта

M

"region":

Район

 

Не може починатися з ЫЪЭЁыъэё@%&$^#\

Допускаються символи:
від a до z та А до Я, символи Ґ Ї І Є в обох регістрах; цифри від 0 до 9; символи № " ! ^ * )

Наступний допустимий символом є один з ( . _ -

Після допускаються будь-які символи

Мін. кількість символів: 1
Макс. кількість символів: 255

Pattern:"^(?!.*[ЫЪЭЁыъэё@%&$^#])[a-zA-ZА-ЯҐЇІЄа-яґїіє0-9№\\\"!\\^\\*)\\]\\[(._-].*$\"

Діаграма

Val_PER_21

addresses

Адреси проживання/розташування/перебування пацієнта

M

settlement

Населений пункт

М

Не може починатися з ЫЪЭЁыъэё@%&$^#\

Допускаються символи:
від a до z та А до Я, символи Ґ Ї І Є в обох регістрах; цифри від 0 до 9; символи № " ! ^ * )

Наступний допустимий символом є один з ( . _ -

Після допускаються будь-які символи

Мін. кількість символів: 1
Макс. кількість символів: 255

Pattern: "^(?!.*[ЫЪЭЁыъэё@%&$^#])[a-zA-ZА-ЯҐЇІЄа-яґїіє0-9№\\\"!\\^\\*)\\]\\[(._-].*$"

Діаграма

Val_PER_22

addresses

Адреси проживання/розташування/перебування пацієнта

M

settlement_type

Тип населеного пункту

М

Значення атрибуту settlement_type відповідає значенням довідника SETTLEMENT_TYPE

"settlement_type": {
"type": "string",
"description": "settlement type Dictionary: SETTLEMENT_TYPE"
},

 

Val_PER_23

addresses

Адреси проживання/розташування/перебування пацієнта

M

settlement_id

Ідентифікатор населеного пункту

 

Перші 8 символів допускаються:
від 0 до 9. від a до f

Наступний обов'язковий символ “-”

В наступних 4 допускаються значення:
від 0 до 9, від a до f

Наступний обов'язковий символ “-”.

Наступний символ має значення від 1 до 5.

В наступних 3 символах допускаються значення:
від 0 до 9, від a до f.

Наступний обов'язковий символ “-”.

Наступний символ має значення одного з символів 8, 9, a, b

В наступних 3 символах допускаються значення:
від 0 до 9, від a до f.

Наступний обов'язковий символ “-”.

В останніх 12 символах допускаються значення:
від 0 до 9, від a до f

Pattern: "^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$"
},

Діаграма

Питання:

  1. додатково перевірити, що повинно співпадати з даними з довідника при вказаному settlement_id

  2. https://uaehealthapi.docs.apiary.io/#reference/public.-medical-service-provider-integration-layer/search-streets/list-of-cities-by-search-params

На тестуванні виявлено:

  1. метод вертає на 80% не ті параметри, які потрібно використати при створенні персони

  2. змінював саме ті параметри, що прийшли із ID, проте система пропускала все

Це потребує перегляду логіки роботи цього атрибуту

Val_PER_24

addresses

Адреси проживання/розташування/перебування пацієнта

M

street_type

Тип вулиці

 

Значення атрибуту street_type відповідає значенням довідника STREET_TYPE

"street_type": {
"type": "string",
"description": "street type Dictionary: STREET_TYPE"
},

 

Val_PER_25

addresses

Адреси проживання/розташування/перебування пацієнта

M

street

Назва вулиці

 

Не може починатися з ЫЪЭЁыъэё@%&$^#\

Допускаються символи:
від a до z та А до Я, символи Ґ Ї І Є в обох регістрах; цифри від 0 до 9; символи № " ! ^ * )

Наступний допустимий символом є один з ( . _ -

Після допускаються будь-які символи

Мін. кількість символів: 1
Макс. кількість символів: 255

Pattern \"^(?!.*[ЫЪЭЁыъэё@%&$^#])[a-zA-ZА-ЯҐЇІЄа-яґїіє0-9№\\\"!\\^\\*)\\]\\[(._-].*$\"

Діаграма

Val_PER_26

addresses

Адреси проживання/розташування/перебування пацієнта

M

building

Будівля

 

Перший символ має значення від 1 до 9.

Наступний символ не може бути ЫЪЭЁыъэё,

Наступні 18 символів можуть вміщувати:
від А до Я, Ґ Ї І Є в обох регістрах; пробіл, / ' -; цифри від 0 до 9

Pattern: "^[1-9]((?![ЫЪЭЁыъэё])()([А-ЯҐЇІЄа-яґїіє \/\'\-0-9])){0,20}$"
},

Діаграма

Питання:

  1. Кучерук: Можуть бути запитання - це дійсна адреса в Черкасах

Треба створити завдання на розробника по виправленню валідації, щоб можна було вносити кому в номері будинка

Val_PER_27

addresses

Адреси проживання/розташування/перебування пацієнта

M

apartment

Квартира

 

 

"apartment": {
"type": "string"
},

Немає опису валідації для тестування. Дозволяє вводити любі символи навіть на початку номера квартири. Патерн не виявлено.

Val_PER_28

addresses

Адреси проживання/розташування/перебування пацієнта

M

zip

Поштовий індекс

 

Вміщує 5 символів від 0 до 9

Pattern: "^[0-9]{5}$"
},

Діаграма

Кучерук: 1) чому не використовуєте довідник - під час тестування виявлено, що дозволяє використовувати неіснуючі індекси

Val_PER_29

phones

Номер телефону пацієнта

 

type

Тип телефону

М

Значення атрибуту відповідає значенням довідника PHONE_TYPE

"phone": {
"type": "object",
"properties": {
"type": {
"type": "string",
"description": "Dictionary: PHONE_TYPE"
},

 

Val_PER_30

phones

Номер телефону пацієнта

 

number

Номер телефону

 

Починається з “+38”
Наступні 10 символів допускаються значення від 0 до 9.

Pattern: "^\+38[0-9]{10}$"
}
},
"required": [
"type",
"number"
],

Діаграма

Val_PER_31

authentication_methods

Методи автентифікації

M

type

Тип автентифікації

M

Значення параметру відповідає значенням довідника AUTHENTICATION_METHOD

 

 

Val_PER_32

authentication_methods

Методи автентифікації

M

phone_number

Номер телефону автентифікації

M для type = "OTP"

Починається з “+38”
Наступні 10 символів допускаються значення від 0 до 9.

Pattern: "^\\+38[0-9]{10}$"

Діаграма

Val_PER_33

authentication_methods

Методи автентифікації

M

value

Значення

M для type = "THIRD_PERSON"

 

 

 

Val_PER_34

authentication_methods

Методи автентифікації

M

alias

Аліас для методу автентифікації

M для type = "THIRD_PERSON"

 

 

На ітерації 2 тестування пройти не вдалося. Пропонується пройти в наступних ітераціях

Val_PER_35

unzr

Унікальний номер запису персони в реєстрі УНЗР

 

 

 

 

Повний формат: РРРРММДД-ХХХХХ, де:
РРРР - рік народжння
ММ - місяць народження
ДД - число народження

  1. перші 8 символів мають відповідати формату дати народження створюваної особи у вигляді РРРРММДД та приймають лише значення від 0 до 9;

  2. останні 5 символів приймають значення від 0 до 9;

  3. дані у пункті 1 та пункті 2 розділені символом "-";

Pattern: "^[0-9]{8}-[0-9]{5}$"

Діаграма

Val_PER_36

emergency_contact

Контактна особа для надзвичайних ситуацій

М

first_name

Ім'я контактної особи

М

Не може починатися або вміщати:
ЫЪЭЁыъэё@%&$^#

Може починатися з та вміщати:
від a до z та А до Я, символи Ґ Ї І Є в обох регістрах; символи ' \ -.

 

Pattern: "^(?!.*[ЫЪЭЁыъэё@%&$^#])[А-ЯҐЇІЄа-яґїіє\\'\\-]+(\\s(?!.*[ЫЪЭЁыъэё@%&$^#])[А-ЯҐЇІЄа-яґїіє\\'\\-]+)*$"

Діаграма

Val_PER_37

emergency_contact

Контактна особа для надзвичайних ситуацій

М

last_name

Прізвище контактної особи

М

Не може починатися або вміщати:
ЫЪЭЁыъэё@%&$^#

Може починатися з та вміщати:
від a до z та А до Я, символи Ґ Ї І Є в обох регістрах; символи ' \ -.

Pattern: "^(?!.*[ЫЪЭЁыъэё@%&$^#])[А-ЯҐЇІЄа-яґїіє\\'\\-]+(\\s(?!.*[ЫЪЭЁыъэё@%&$^#])[А-ЯҐЇІЄа-яґїіє\\'\\-]+)*$"

Діаграма

Val_PER_38

emergency_contact

Контактна особа для надзвичайних ситуацій

М

second_name

По батькові контактної особи

 

Не може починатися або вміщати:
ЫЪЭЁыъэё@%&$^#

Може починатися з та вміщати:
від a до z та А до Я, символи Ґ Ї І Є в обох регістрах; символи ' \ -.

Pattern: "^(?!.*[ЫЪЭЁыъэё@%&$^#])[А-ЯҐЇІЄа-яґїіє\\'\\-]+(\\s(?!.*[ЫЪЭЁыъэё@%&$^#])[А-ЯҐЇІЄа-яґїіє\\'\\-]+)*$"

Діаграма

Val_PER_39

emergency_contact

Контактна особа для надзвичайних ситуацій

М

phones.type

Тип телефону контактної особи

М

Значення параметру відповідає значенням довідника PHONE_TYPE

"phones": {
"type": "array"

 

Val_PER_40

emergency_contact

Контактна особа для надзвичайних ситуацій

М

phones.number

Номер телефону контактної особи

М

Починається з “+38”
Наступні 10 символів допускаються значення від 0 до 9.

Pattern: "^\\+38[0-9]{10}$"

Діаграма

Val_PER_41

confidant_person

Оcоба-представник пацієнта

 

relation_type

Тип зв'язку пацієнта і представника пацієнта

M

Значення параметру відповідає значенням довідника CONFIDANT_PERSON_TYPE

 

 

Val_PER_42

confidant_person

Оcоба-представник пацієнта

 

first_name

Ім'я представника пацієнта

M

Не може починатися або вміщати:
ЫЪЭЁыъэё@%&$^#

Може починатися з та вміщати:
від a до z та А до Я, символи Ґ Ї І Є в обох регістрах; символи ' \ -.

Pattern: "^(?!.*[ЫЪЭЁыъэё@%&$^#])[А-ЯҐЇІЄа-яґїіє\\'\\-]+(\\s(?!.*[ЫЪЭЁыъэё@%&$^#])[А-ЯҐЇІЄа-яґїіє\\'\\-]+)*$"

Діаграма

Val_PER_43

confidant_person

Оcоба-представник пацієнта

 

last_name

Прізвище представника пацієнта

M

Не може починатися або вміщати:
ЫЪЭЁыъэё@%&$^#

Може починатися з та вміщати:
від a до z та А до Я, символи Ґ Ї І Є в обох регістрах; символи ' \ -.

Pattern: "^(?!.*[ЫЪЭЁыъэё@%&$^#])[А-ЯҐЇІЄа-яґїіє\\'\\-]+(\\s(?!.*[ЫЪЭЁыъэё@%&$^#])[А-ЯҐЇІЄа-яґїіє\\'\\-]+)*$"

Діаграма

Val_PER_44

confidant_person

Оcоба-представник пацієнта

 

second_name

По батькові представника пацієнта

 

Не може починатися або вміщати:
ЫЪЭЁыъэё@%&$^#

Може починатися з та вміщати:
від a до z та А до Я, символи Ґ Ї І Є в обох регістрах; символи ' \ -..

Pattern: "^(?!.*[ЫЪЭЁыъэё@%&$^#])[А-ЯҐЇІЄа-яґїіє\\'\\-]+(\\s(?!.*[ЫЪЭЁыъэё@%&$^#])[А-ЯҐЇІЄа-яґїіє\\'\\-]+)*$"

Діаграма

Val_PER_45

confidant_person

Оcоба-представник пацієнта

 

birth_date

Дата народження представника пацієнта

M

Очікується дата у форматі ISO 8601
Приклад: "1985-11-14"

Pattern: "^(\\d{4}(?!\\d{2}\\b))((-?)((0[1-9]|1[0-2])(\\3([12]\\d|0[1-9]|3[01]))?|W([0-4]\\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\\d|[12]\\d{2}|3([0-5]\\d|6[1-6])))?)?$"

Діаграма

Val_PER_46

confidant_person

Оcоба-представник пацієнта

 

birth_country

Країна народження представника пацієнта

M

 

 

 

Val_PER_47

confidant_person

Оcоба-представник пацієнта

 

birth_settlement

Місце народження представника пацієнта

M

Не може починатися або вміщати:
ЫЪЭЁыъэё@%&$^#

Може починатися з та вміщати:
від a до z та А до Я, символи Ґ Ї І Є в обох регістрах; цифри від 0 до 9 та символи №\"!*)

Pattern": "^(?!.*[ЫЪЭЁыъэё@%&$^#])[a-zA-ZА-ЯҐЇІЄа-яґїіє0-9№\\\"!\\^\\*)\\]\\[(._-].*$"

Діаграма

Val_PER_48

confidant_person

Оcоба-представник пацієнта

 

gender

Стать представника пацієнта

M

Значення параметру відповідає значенням довідника GENDER

 

 

Val_PER_49

confidant_person

Оcоба-представник пацієнта

 

tax_id

РНОКПП представника пацієнта

 

Вміщує 10 символів, що приймають значення від 0 до 9.

Pattern: "^[0-9]{10}$"

Діаграма

Val_PER_50

confidant_person

Оcоба-представник пацієнта

 

secret

Кодове слово представника пацієнта

M

Мінімальна кількість символів 6, максимальна - 20

 

 

Val_PER_51

confidant_person

Оcоба-представник пацієнта

 

unzr

Унікальний номер запису представника пацієнта в реєстрі УНЗР

 

Повний формат: РРРРММДД-ХХХХХ, де:
РРРР - рік народжння
ММ - місяць народження
ДД - число народження

  1. перші 8 символів повинні відповідати формату дати народження створюваної особи у вигляді РРРРММДД та можуть приймати лише значення від 0 до 9;

  2. останні 5 символів що приймають значення від 0 до 9;

  3. дані у пункті 1 та пункті 2 повинні розділятися символом "-";

Pattern: "^[0-9]{8}-[0-9]{5}$"

Діаграма

Val_PER_52

confidant_person

Оcоба-представник пацієнта

 

preferred_way_communication

Бажаний спосіб зв'язку з представником пацієнта

 

Параметр може набувати одного зі значень: email, phone

 

 

Val_PER_53

confidant_person

Оcоба-представник пацієнта

 

documents_person.type

Номер документу, що посвідчує особу представника пацієнта

M

Відповідає значенням з довідника DOCUMENT_TYPE

 

 

Val_PER_54

confidant_person

Оcоба-представник пацієнта

 

documents_person.number

Тип документу, що посвідчує особу представника пацієнта

M

  1. Для значень довідника PASSPORT
    Не може починатися
    з ЫЪЭЁ

    Серія документу
    2 символа: від А до Я, символи Ґ Ї І Є

    Номер документу
    6 символів, які набувають значень 0-9

    Не допускаються пробіли або інші символи між серією та номером.

  2. Для значень довідника BIRTH_CERTIFICATE
    Не може починатися з ЫЪЭЁыъэё@%&$^#`~:,.*|}{?!

    Може вміщати
    літери від А до Я; літери Ґ Ї І Є; цифри від 0 до 9; символи №\/()-

    Мін. кількість 1 символ
    Макс. кількість 255 символів

  3. Для значень довідника NATIONAL_ID
    Може вміщати 9 символів, що набувають значень від 0 до 9.

  1. "PASSPORT":
    Pattern: "^((?![ЫЪЭЁ])([А-ЯҐЇІЄ])){2}[0-9]{6}$"

  2. "BIRTH_CERTIFICATE":
    Pattern: "^((?![ЫЪЭЁыъэё@%&$^#`~:,.*|}{?!])[A-ZА-ЯҐЇІЄ0-9№\/()-]){2,25}$"

  3. "NATIONAL_ID":
    Pattern: "^[0-9]{9}$"

  1. Діаграма

  2. Діаграма

  3. Діаграма

Val_PER_55

confidant_person

Оcоба-представник пацієнта

 

documents_person.expiration_date

Документ, що посвідчує особу представника пацієнта придатний до

 

Очікується дата у форматі ISO 8601
Приклад: "1985-11-14"

Pattern: "^(\\d{4}(?!\\d{2}\\b))((-?)((0[1-9]|1[0-2])(\\3([12]\\d|0[1-9]|3[01]))?|W([0-4]\\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\\d|[12]\\d{2}|3([0-5]\\d|6[1-6])))?)?$"

Діаграма

Val_PER_56

confidant_person

Оcоба-представник пацієнта

 

documents_person.issued_by

Ким виданий документ, що посвідчує особу представника пацієнта

 

Мінімальна довжина 1 символ.

 

 

Val_PER_57

confidant_person

Оcоба-представник пацієнта

 

documents_person.issued_at

Коли виданий документ, що посвідчує особу представника пацієнта

 

Очікується дата у форматі ISO 8601
Приклад: "1985-11-14"

Pattern: "^(\\d{4}(?!\\d{2}\\b))((-?)((0[1-9]|1[0-2])(\\3([12]\\d|0[1-9]|3[01]))?|W([0-4]\\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\\d|[12]\\d{2}|3([0-5]\\d|6[1-6])))?)?$"

Діаграма

Val_PER_58

confidant_person

Оcоба-представник пацієнта

 

documents_relationship.type

Тип документу, що підтверджує зв'язок пацієнта і представника пацієнта

М

Відповідає значенням з довідника DOCUMENT_RELATIONSHIP_TYPE

type": {
"type": "string",
"description": "Dictionary: DOCUMENT_RELATIONSHIP_TYPE",
"minLength": 1

 

Val_PER_59

confidant_person

Оcоба-представник пацієнта

 

documents_relationship.number

Номер документу, що підтверджує зв'язок пацієнта і представника пацієнта

М

Мінімальна кількість символів 1

"number": {
"type": "string",
"minLength": 1
},

На тестуванні (ітерація 2) виявлено ВІДСУТНІСТЬ додаткових валідацій до номеру документу

Val_PER_60

confidant_person

Оcоба-представник пацієнта

 

documents_relationship.issued_by

Ким видано документ, що підтверджує зв'язок пацієнта і представника пацієнта

 

Мінімальна довжина 1 символ.

"issued_by": {
"type": "string",
"minLength": 1
},

На тестуванні (ітерація 2) виявлено ВІДСУТНІСТЬ додаткових валідацій "Ким видано" документу

Val_PER_61

confidant_person

Оcоба-представник пацієнта

 

documents_relationship.issued_at

Коли видано документ, що підтверджує зв'язок пацієнта і представника пацієнта

 

Очікується дата у форматі ISO 8601
Приклад: "1985-11-14"

Pattern: "^(\\d{4}(?!\\d{2}\\b))((-?)((0[1-9]|1[0-2])(\\3([12]\\d|0[1-9]|3[01]))?|W([0-4]\\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\\d|[12]\\d{2}|3([0-5]\\d|6[1-6])))?)?$"

Діаграма

Val_PER_62

confidant_person

Оcоба-представник пацієнта

 

phones.type

Тип телефону представника пацієнта

M

Значення параметру відповідає значенням довідника PHONE_TYPE

"phones": {
"type": "array"

 

Val_PER_63

confidant_person

Оcоба-представник пацієнта

 

phones.number

Номер телефону представника пацієнта

M

Починається з “+38”
Наступні 10 символів допускаються значення від 0 до 9.

Pattern:"^\\+38[0-9]{10}$"

Діаграма

Val_PER_64

confidant_person

Оcоба-представник пацієнта

 

email

Адреса електронної поштової скриньки представника пацієнта

 

 

 

 

Val_PER_65

preferred_way_communication

Бажаний спосіб зв'язку з пацієнтом

 

 

 

 

Приймає одне зі значень:

  • email

  • phone

“preferred_way_communication": {
"enum": [
"email",
"phone"

 

Val_PER_66

patient_signed

 

М

 

 

 

-

“patient_signed": {
"type": "boolean"
},

Треба додати валідацію на 2 можливих значення: "true" OR "false"

Val_PER_67

process_disclosure_data_consent

 

М

 

 

 

-

"process_disclosure_data_consent": {
"type": "boolean"

Треба додати валідацію на 2 можливих значення: "true" OR "false"

Val_PER_68

authorize_with

 

М

 

 

 

-

 

 


Валідації при реєстрації співробітника (EMPLOYEE) в Системі

id валідації

Атрибут

Назва атрибуту

Обов'язковість атрибуту

Параметр атрибуту

Назва параметру

Обов'язковість параметру

Опис валідації

Схема валідації

Примітка

Val_EMP_1

party

Співробітник

M

first_name

Ім'я

M

Не може починатися або вміщати:
ЫЪЭЁыъэё@%&$^#

Може починатися з та вміщати:
від a до z та А до Я, символи Ґ Ї І Є в обох регістрах; та символи _\'

pattern \"^(?!.*[ЫЪЭЁыъэё@%&$^#])[А-ЯҐЇІЄа-яґїіє’\\'\\- ]+$\"

Діаграма

 

Val_EMP_2

party

Співробітник

M

last_name

Прізвище

M

Не може починатися або вміщати:
ЫЪЭЁыъэё@%&$^#

Може починатися з та вміщати:
від a до z та А до Я, символи Ґ Ї І Є в обох регістрах; та символи _\'

pattern \"^(?!.*[ЫЪЭЁыъэё@%&$^#])[А-ЯҐЇІЄа-яґїіє’\\'\\- ]+$\"

Діаграма

 

Val_EMP_3

party

Співробітник

M

second_name

По батькові

 

Не може починатися або вміщати:
ЫЪЭЁыъэё@%&$^#

Може починатися з та вміщати:
від a до z та А до Я, символи Ґ Ї І Є в обох регістрах; та символи _\'

pattern \"^(?!.*[ЫЪЭЁыъэё@%&$^#])[А-ЯҐЇІЄа-яґїіє\\'\\- ]+$\"

Діаграма

 

Val_EMP_4

party

Співробітник

M

birth_date

День народження

M

Очікується дата у форматі ISO 8601
Приклад: "1985-11-14”

pattern ^(\\d{4}(?!\\d{2}\\b))((-?)((0[1-9]|1[0-2])(\\3([12]\\d|0[1-9]|3[01]))?|W([0-4]\\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\\d|[12]\\d{2}|3([0-5]\\d|6[1-6])))?)?$

Діаграма

Val_EMP_5

party

Співробітник

M

gender

Стать

M

Значення атрибуту відповідає значенням довідника GENDER.

 

 

Val_EMP_6

party

Співробітник

 

no_tax_id

Співробітник без РНОКПП

 

За відсутності РНОКПП в даному параметрі необхідно передавати значення "true".

В разі наявності РНОКПП в даному параметрі необхідно передавати значення "false".

 

 

Val_EMP_7

party

Співробітник

M

tax_id

РНОКПП Співробітника

 

Вміщує 10 символів, що приймають значення від 0 до 9.

Також допускається введення номеру паспорту в разі, якщо no_tax_id=false. В такому випадку не дозволені пробіли.

pattern \"^([0-9]{9,10}|[А-ЯЁЇIЄҐ]{2}\\d{6})$\"

Діаграма

 

Val_EMP_8

party

Співробітник

M

email

Адреса електронної поштової скриньки

 

 

 

 

Val_EMP_9

party

Співробітник

M

documents.type

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

M

Відповідає значенням з довідника DOCUMENT_TYPE

 

 

Val_EMP_10

party

Співробітник

M

documents.number

Номер документу

M

 

Валідацій не виявлено

 

Val_EMP_11

party

Співробітник

 

documents.issued_by

Ким виданий

 

Мінімальна кількість символів- 1

 

 

Val_EMP_12

party

Співробітник

 

documents.issued_at

Коли був виданий

 

Очікується дата у форматі ISO 8601
Приклад: ""1985-11-14”"

pattern ^(\\d{4}(?!\\d{2}\\b))((-?)((0[1-9]|1[0-2])(\\3([12]\\d|0[1-9]|3[01]))?|W([0-4]\\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\\d|[12]\\d{2}|3([0-5]\\d|6[1-6])))?)?$

Діаграма

Val_EMP_13

party

Співробітник

M

phones.type

Тип телефону

M

 

 

 

Val_EMP_14

party

Співробітник

M

phones.number

Номер телефону

M

Починається з “+38”
Наступні 10 символів допускаються значення від 0 до 9.

pattern ^\\+38[0-9]{10}$

Діаграма

Val_EMP_15

party

Співробітник

 

working_experience

Досвід роботи (повних років)

 

Допускається тільки ціле число без лапок.

 

 

Val_EMP_16

party

Співробітник

M

about_myself

Додаткова інформація

 

 

 

 

ЕСОЗ - публічна документація