Table of Contents |
---|
...
Якщо блок forbidden_group вказано в запиті
Check forbidden group in the request exists and is_active in DB
in case of error return - 404 (not found)
Перевірити diagnoses_group
Якщо diagnoses_group block вказано в запиті
Check diagnoses_group in the request exists and is_active in DB
in case of error return - 404 (not found)
Перевірити пацієнта
Якщо patient block вказано в запиті
Отримати patient_id з URL:
Перевірити, що person_id з запиту відповідає patient_id з URL
в разі помилки - повернути 404 (“Approval for one patient can not be created in another patient’s context”)
існує та is_active в DB
в разі помилки - повернути 404 (Person is not found)
Перевірити блок child_resource
Якщо child_resource не пустий:
перевірити, що access_level == read
в разі помилки - повернути 422 ("$.access_level. value is not allowed in enum")
перевірити, що контекст $.child_resource.identifier.value відповідає $.resource.identifier.value
в разі помилки - повернути 422 (Child resource context id is not equal to granted resource id)
перевірити, що service_requests / forbidden_groups / diagnoses_group / patients не заповнені
в разі помилки - повернути 422 (schema does not allow additional properties)
перевірити, що максимальна кількість сутностей в ресурсі = 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
...
Всі дозволи в статусі "new" повинна бути видалена через 12 hours після створення - env. configuration parameter
Всі дозволи з forbidden_group має свій власний expires_at config parameter - env. configuration parameter
Всі дозволи з care_plan має свій власний expires_at config parameter - env. configuration parameter
Всі дозволи на картку пацієнта має свій власний expires_at config parameter - env. configuration parameter
Дозволи з child_resources буде створено на сутність, яка є контекстом для child_resources
Для дозволів на child_resource з ресурсом або service_request:
встановити child_resource до блоку reason
встановити service_request до блоку reason
Перевірити, чи granted_resource та\чи reason мають коди заборонених груп:
якщо є записи з заборонених груп
перевірити тип authentication_method для пацієнта
якщо тип 'OTP' відправити SMS (Код <code> для доступу до даних про ВІЛ/РПП https://bit.ly/nszu1677f )
якщо немає записів з заборонених груп та блок diagnoses_group вказано в запиті
якщо група діагнозів містить коди з довідника ICD10:
перевірити тип authentication_method для пацієнта
якщо тип 'OTP' відправити SMS (Код <code>: доступ на групу діагнозів {diagnoses_group_code} http://bit.ly/nszu1677b )
якщо група діагнозів містить коди з довідника ICPC2:
перевірити тип authentication_method для пацієнта
якщо тип 'OTP' відправити SMS (Код <code> доступ на групу діагнозів {diagnoses_group_code} http://bit.ly/nszu1677e )
якщо відсутні коди заборонених груп
перевірити тип authentication_method по пацієнту
якщо тип = 'OTP' відправити SMS (Код авторизації дій в системі eHealth: <code>')