Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Table of Contents

...

  1. Якщо блок forbidden_group вказано в запиті

    1. Check forbidden group in the request exists and is_active in DB

      1. in case of error return - 404 (not found)

Перевірити diagnoses_group

  1. Якщо diagnoses_group block вказано в запиті

    1. Check diagnoses_group in the request exists and is_active in DB

      1. in case of error return - 404 (not found)

Перевірити пацієнта

  1. Якщо patient block вказано в запиті

    1. Отримати patient_id з URL:

      1. Перевірити, що person_id з запиту відповідає patient_id з URL

        1. в разі помилки - повернути 404 (“Approval for one patient can not be created in another patient’s context”)

      2. існує та is_active в DB

        1. в разі помилки - повернути 404 (Person is not found)

Перевірити блок child_resource

  1. Якщо child_resource не пустий:

    1. перевірити, що access_level == read

      1. в разі помилки - повернути 422 ("$.access_level. value is not allowed in enum")

    2. перевірити, що контекст $.child_resource.identifier.value відповідає $.resource.identifier.value

      1. в разі помилки - повернути 422 (Child resource context id is not equal to granted resource id)

    3. перевірити, що service_requests / forbidden_groups / diagnoses_group / patients не заповнені

      1. в разі помилки - повернути 422 (schema does not allow additional properties)

    4. перевірити, що максимальна кількість сутностей в ресурсі = 1

      1. в разі помилки - повернути 422 ($.resources.expected a maximum of 1 items but got 2)

Перевірити authentication_method персони

...

Блок

granted_resources

access_level

Доступ на

reason

resources

episode_of_care

read

Читання всіх даних по вказаному в доступі епізоду

null

diagnostic_report

read

Читання всіх даних по вказаному в дозволі діагностичному звіті

null

diagnostic_report

write

Відмінити пакет по діагностичному звіту

care_plan

read

Читання всіх даних по вказаному в дозволі плану лікування

null

care_plan

write

Створення активностей для плану лікування, відміна рецептів або відкликання\відміна сервіс реквестів, які основуються на плану лікування

encounter

write

Відміна пакету по взаємодії

null

procedure

write

Відміна процедури

null

child_resources

diagnostic_report

read

Читання всіх даних, які вказані в контекстні для diagnostic_report та на сам diagnostic_report

null

encounter

Читання всіх даних, які вказані в контекстні для encounter та на сам encounter

null

condition

Читання всіх даних, які вказані в контекстні для condition та на сам condition

null

observation

Читання всіх даних, які вказані в контекстні для observation та на сам observation

null

activity

Читання всіх даних, які вказані в контекстні для activity та на сам activity

null

clinical_impression

Читання всіх даних, які вказані в контекстні для clinical_impression та на сам clinical_impression

null

allergy_intolerance

Читання всіх даних, які вказані в контекстні для allergy_intolerance та на сам allergy_intolerance

null

immunization

Читання всіх даних, які вказані в контекстні для immunization та на сам immunization

null

device

Читання всіх даних, які вказані в контекстні для device та на сам device

null

risk_assessment

Читання всіх даних, які вказані в контекстні для risk_assessment та на сам risk_assessment

null

procedure

Читання всіх даних, які вказані в контекстні для procedure та на сам procedure

null

service_request

episode_of_care

read

Читання даних з granted_resources в доступі направлення

service_request

diagnostic_report

read

forbidden_group

forbidden_group

read

Читання всіх медичних даних з даними (codes/services/service_groups), які вказані в доступі на заборонені групи  

null

diagnoses_group

episode_of_care array

read

Читання всіх даних на епізод з current_diagnoses.codes, які вказані в доступах на діагностичні групи

null

patient_id

patient_id

read

Читання всіх даних по вказаному пацієнту

null

Перевірити authorize_with

...

  1. Всі дозволи в статусі "new" повинна бути видалена через 12 hours після створення - env. configuration parameter

  2. Всі дозволи з forbidden_group має свій власний expires_at config parameter - env. configuration parameter

  3. Всі дозволи з care_plan має свій власний expires_at config parameter - env. configuration parameter

  4. Всі дозволи на картку пацієнта має свій власний expires_at config parameter - env. configuration parameter

  5. Дозволи з child_resources буде створено на сутність, яка є контекстом для child_resources

  6. Для дозволів на child_resource з ресурсом або service_request:

    1. встановити child_resource до блоку reason

    2. встановити service_request до блоку reason

  7. Перевірити, чи granted_resource та\чи reason мають коди заборонених груп:

    1. якщо є записи з заборонених груп

      1. перевірити тип authentication_method для пацієнта

        1. якщо тип 'OTP' відправити SMS (Код <code> для доступу до даних про ВІЛ/РПП https://bit.ly/nszu1677f )

    2. якщо немає записів з заборонених груп та блок diagnoses_group вказано в запиті

      1. якщо група діагнозів містить коди з довідника ICD10:

        1. перевірити тип authentication_method для пацієнта

          1. якщо тип 'OTP' відправити SMS (Код <code>: доступ на групу діагнозів {diagnoses_group_code} http://bit.ly/nszu1677b )

      2. якщо група діагнозів містить коди з довідника ICPC2:

        1. перевірити тип authentication_method для пацієнта

          1. якщо тип 'OTP' відправити SMS (Код <code> доступ на групу діагнозів {diagnoses_group_code} http://bit.ly/nszu1677e )

    3. якщо відсутні коди заборонених груп

      1. перевірити тип authentication_method по пацієнту

        1. якщо тип = 'OTP' відправити SMS (Код авторизації дій в системі eHealth: <code>')