ЕСОЗ - публічна документація
UA_Check confidant person relationship
Мета
Цей алгоритм використовується для перевірки відносин між довіреною особою та пацієнтом на основі confidant_person_relationships (таблиця MPI DB).
Ключові положення
Цей алгоритм використовує дані набору даних, щоб перевірити, чи існує зв’язок між двома пацієнтами з бази даних mpi у таблиці confidant_person_relationships і який має статус верифікації.
Цей алгоритм можна використовувати в різних процесах і не обмежується конкретним процесом.
Принаймні один з ids має бути вказаних у вхідних параметрах
Специфікація
Сервісна логіка
Отримати зв’язок між двома особами з таблиці confidant_person_relationships де:
person_id рівний $.person_id
ТА confidant_person_id рівний $.confidant_person_id (перевірити, чи $.confidant_person_id наявний в наборі даних)
ТА is_active=true (verification_status = “VERIFIED”
АБО
verification_status = “VERIFICATION_NEEDED” ТА verification_reason = “MANUAL_CREATED_BY_DOCTOR”)
Повернути результат:
якщо запис знайдено та має verification_status = “VERIFIED”
АБО
verification_status = “VERIFICATION_NEEDED” AND verification_reason = “MANUAL_CREATED_BY_DOCTOR”)повернути
{:ok, {:approved, "Relationship is approved"}}
В іншому випадку, якщо знайдено але має інший статус верифікації
{:ok, {:not_approved, "Relationship is not approved yet"}}
В іншому випалку, якщо запис не знайдено -
{:error, {:not_found, "Relationship is not found"}}
ЕСОЗ - публічна документація