Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents

...

Page Properties

Project Name

Електронний рецепт

COVID-certificate

Project abreviation

ePrescription

SVC

Developer

API paragraph not found

Розробник методу API. Наприклад, Edenlab

Project Manager

API paragraph not found

Mykhailo Zhushman (Unlicensed)

Tech Lead

API paragraph not found

Product Owner

API paragraph not found

Yevhen Batura NHSU

Вusiness analyst

API paragraph not found

Taras Khometa (Unlicensed)

Status

Status
colourGreen
titleAPPROVED

Status
colourGreen
titleAPPROVED

Version

API paragraph not found

1.0

Date of release

API paragraph not found

Link

https://uaehealthapi.docs.apiary.io/#reference/public.-reimbursement/medication-request/block-medication-request

Посилання на Apiary або Swagger

Resource

/api/medication_requests/{{id}}/actions/block

Наприклад: /api/persons/create

Scope

medication_request:block

Зазначається потрібний scope

Components

ePrescription, Reimbursement

Зазначається перелік бізнес компонентів, які використовують цей метод, наприклад: ePrescription

Microservices

API paragraph not found

Перелік мікросервісів, які використовує метод API. Наприклад: Auth, ABAC

Protocol type

REST

Тип протоколу, який використовується запитом, наприклад: SOAP | REST

Request type

PATCH

Тип HTTP методу, який використовується запитом, наприклад: POST | GET…

Sync/Async

Sync

Метод є синхронним чи асинхронним?

Logic

Key points

  1. Only authenticated and authorized user with appropriate scope can block Medication request.

  2. Medication request can be blocked only from ‘ACTIVE' status.

  3. In order to block medication request block_reason and block_reason_code should be added in request.

  4. This method can't be used by employees with type 'PHARMACIST'. For pharmacists please use Block Medication Request by Pharmacy User.

Service logic

  1. Update Medication request in OPS DB:

    1. set is_blocked = true

    2. set block_reason_code = $.block_reason_code

    3. set block_reason = $.block_reason

    4. set updated_by = user_id

    5. set updated_at = now()

  2. Send SMS for person

    1. If Medication request has program with medical program setting medication_request_notification_disabled = true, then don't send SMS.

      Else:

      1. Get authentication_method of person from MPI

      2. If authentication_method == OTP, then send SMS to a person from Medication request:

        1. Generate SMS text

          1. get template from block_template_sms parameter

          2. enrich template with data from Medication request

        2. Send SMS to a person with text from template (“Ваш рецепт <request_number> заблоковано. Зверніться до вашого лікаря”)

  3. Add new record in Event manager:

field

value

event_type

StateChangeEvent

entity_type

MedicationRequest

entity_id

$.id

properties.is_blocked.new_value

true

event_time

$.update_at

changed_by

$.changed_by

Preconditions

No

Global and configurable parameters

...