ЕСОЗ - публічна документація
Deactivate Medication
Purpose
This WS is designed to deactivate medication by ID (post).
Specification
Link | API paragraph not found |
Resource | /medications/{{id}}/actions/deactivate |
Scope | medication:deactivate |
Components | Drugs and Program medications |
Microservices | API paragraph not found |
Protocol type | REST |
Request type | PATCH |
Sync/Async | Sync |
Public/Private/Internal | Internal |
Logic
This method is used to deactivate Medication. Fields descriptions are listed in request Example view.
Input parameters
Input parameter | Values | Type | Description | Example |
---|---|---|---|---|
id |
| String |
|
|
Authorize
Verify the validity of access token
Check user scope (scope = 'medication:deactivate') in order to perform this action
In case error - generate 401 response
Request to process the request using a token in the headers
Headers
Наприклад:
Content-Type:application/json
Authorization:Bearer c2778f3064753ea70de870a53795f5c9
Request data validation
Validate PK Medication
Purpose validation: Check on existing Medication record
Check exist Medication by $.id.
if invalid - return 404 error (message: "Medication is not found!")
Medication should't have active program medications
Check that no active program medications exist in program_medications table in PRM DB with medication_id =
$.id
if invalid - return 409 error (‘Medication is participant of an active Medical Program’)
Validate status
Purpose validation: Medication should be active (is_active == TRUE)
Validate `is_active` == TRUE
if invalid - return 409 eror (message: "Medication should be active !")
Validate type
Purpose validation: Medication should be type = BRAND
Validate `type` == BRAND
if invalid - return 409 eror (message: "Medication must be type = BRAND !")
Processing
Update medication
Update medication record by $.id set values:
Destination | Source |
is_active | FALSE |
updated_at | :timestamp |
updated_by | user_id |
Response structure
See on Apiary
Example:
HTTP status codes
HTTP status code | Message | What caused the error |
---|---|---|
200 |
|
|
422 |
|
|
ЕСОЗ - публічна документація