Table of Contents |
---|
Purpose
This WS is designed to block previously created Medication request with indicating block_reason_code and block_reason.
Key points
Only authenticated and authorized user with an appropriate scope can block Medication request.
Medication request can be blocked only from the ‘ACTIVE' status.
Specification
Page Properties | |||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Logic
Update Medication request in OPS DB:
set is_blocked = true
set block_reason_code = $.block_reason_code
set block_reason = $.block_reason
set updated_by = user_id
set updated_at = now()
Send SMS for person
If Medication request has program with medical program setting medication_request_notification_disabled = true, then don't send SMS.
Else:
Get authentication_method of person from MPI
If authentication_method == OTP, then send SMS to a person from Medication request:
Generate SMS text
get template from block_template_sms parameter
enrich template with data from Medication request
Send SMS to a person with text from template (“Ваш рецепт <request_number> заблоковано. Зверніться до вашого лікаря”)
Add new record in Event manager:
field | value |
---|---|
|
|
|
|
| $.id |
| true |
| $.update_at |
| $.changed_by |
Preconditions
No
Global and configurable parameters
...
_by |
Input parameters
Input parameter | Values | Type | Description | Example |
---|---|---|---|---|
id | String | Medication Request identifier | d290f1ee-6c54-4b01-90e6-d701748f0851 |
Filters
...
Request structure
...
Example:
Expand | ||
---|---|---|
| ||
|
Authorize
Verify the validity of access token
in case of error - return 401 (“Invalid access token”) in case of validation fails.
Verify that token is not expired
in case of error - return 401 (“Invalid access token”).
Check user scopes in order to perform this action (scope = 'medication_request:block')
return 403 (“Your scope does not allow to access this resource. Missing allowances: medication_request:block”) in case of invalid scope(s).
Headers
Content-Type:application/json
...
Validate $.block_reason_code is a value from MEDICATION_REQUEST_BLOCK_REASON dictionary
in case of error - return 422 ("value is not allowed in enum").
Check that $.block_reason_code is present in <EMPLOYEE_TYPE>_MEDICATION_REQUEST_BLOCK_REASON_CODES chart parameter for validated user
in case of error - return 422 ("Block reason code is not allowed for <employee_type>").
Parameters that are used when processing the request
Configuration parameters
...
.
...
Dictionaries
API paragraph not found
...
API paragraph not found
Response structure
...
Example:
Expand | ||
---|---|---|
| ||
|
Post-processing processes
No
HTTP status codes
HTTP status code | Message | What caused the error |
---|---|---|
200 | Response |
|
401 | Invalid access token |
|
403 | Your scope does not allow to access this resource. Missing allowances: medication_request:block |
|
404 | Medication request does not exist |
|
409 |
|
|
422 |
| Request validation fails |
Backward compatibility
...