Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Виправлення некоректних посилань
Table of Contents

...

  1. Тільки автотифікований та авторизований користувач (DOCTOR або SPECIALIST) з відповідною спеціальністю, вказаної в config, має можливість створення Плану лікування.

  2. План лікування може бути створений від юридичної особи MSP, PRIMARY_CARE або OUTPATIENT.

  3. План лікування повинен бути підписаний за допомогою електронного ключа.

  4. Плін лікування створюється в асинхронний спосіб, як і всі медичні події.

  5. Активності до Плану лікування додаються за допомогою сервісу Create Care Plan activities. Але, План лікування може бути відокремлено створено без активностей.

...

  • Отримати patient_id з URL

  • Первірити статус пацієнта/неідентифікованої особи активний

    • в разі помилки - повернути код 409 ('Person is not active')

  • Перевірити, що verification_status персони не дорівнює NOT_VERIFIED.

    • в разі помилки повернути 409, "Patient is not verified"

  • Захешувати patient_id та зберегти в поле $.subject

...

  • Отримати user_id з токену. Первірити, що автор належить до користувачів, які є співробітниками.

    • в разі помилки - повернути код 422 ('User is not allowed to create care plan for the employee')

  • Первірити, що автор активний та погоджений та належить до юридичної особи (client_id from token).

    • в разі помилки - повернути код 403 ('Access denied')

  • Первірити тип співробітника:

    • якщо SPECIALIST:

      • Перевірити, що співробітник має хоча б одну роль, яка:

        • активна та має активний статус

        • відповідає сервісу healthcare зі значенням providing_conditions=$.terms_of_service

          • в разі помилки - повернути код 422 ('Employee does not have active role that correspond to the submitted terms of service')

    • Для DOCTOR, додаткові перевірки не потрібні

  • Перевірити спеціалізацію автора (speciality_officio == true) вказану в config для вказаної категорії плану лікування.

    • в разі помилки - повернути код 409 (“Invalid employee speciality”)

...

  • Первірити, що посилання валідне на ресурс взаємодії

    • Перевірити, що взаємодія активна (статус НЕ entered_in_error)

      • в разі помилки - повернути код 422 ('Encounter in "entered_in_error" status can not be referenced')

    • Первірити, що взаємодія пов'язана з пацієнтом ($.subject)

      • в разі помилки - повернути код 422 ('Encounter with such id is not found')

  • Первірити первинні діагнози у взаємодії:

    • Перевірити, що код стану є в переліку доступних кодів станів для категоріїї Плану лікування diabetics (значення чартів: в config)

      • в разі помилки - повернути код 422 ('Primary diagnosis condition code and care plan category mismatch')

    • Первірити, що system/codes повністю відповідають значенню в полі Addresses

      • в разі помилки - повернути код 422 ('Primary diagnosis condition codes do not match with codes in addresses'), для випадку, коли код станів в addresses не таке як діагнозі взаємодії.

  • Перевірити, що епізод пов'язаний зі взаємодією:

    • існує

      • в разі помилки - повернути код 422 ('Encounter refers to episode that does not exist')

    • активний

      • в разі помилки - повернути код 422 ('Encounter refers to episode that is not active')

    • керуюча компанія відповідє юридичній особі автора (client_id)

      • в разі помилки - повернути код 422 ('Encounter is from another legal entity')

...

  • Сгенерувати номер заявки (див Human readable requisition number), який має посилання на id Плану лікування

  • Встановити атрибути $.requisition

...

Якщо пацієнт - не неідентифікована особа та його метод автентифікації визначений  Determination of a default authentication method and return person's active auth_methods як OTP або third_person.OTP, відправити СМС до пацієнта з номером заявки.

...