Purpose
This method allows to get contexts of Procedure in order to create approval on episode and receive access to other medical events.
This WS allows to cancel existing procedure and change its status to entered_in_error
in case of any mistake. The new correct procedure could be created instead. Method receives signed message (pkcs7) that consists of signed content, digital signature and signer public key. All signature fields will be validated (including signer certificate authority)
Important
Signed content of procedure must be equal to procedure stored in DB. See Get Procedure by search params
status_reason
andexplanatory_letter
(optional) must be added to signed content
Please see Cancel Procedure and [Dummy Cancel Procedure for more details
Specification
Logic
Service returns contexts (episode and origin_episode), procedure based on:
Get Procedure object by procedure_id from procedures (MongoDB)
Get procedure.encounter.identifier from Procedure object
Call https://e-health-ua.atlassian.net/wiki/spaces/EH/pages/17049388285 :
Get Encounter object by procedure.encounter.identifier (procedure.encounter.identifier = encounter._id)
AFTERGet encounter.episode from Encounter object
Get procedure.origin_episode from Procedure object
Render a response according to specification
Input parameters
Input parameter | Values | Type | Description | Example |
---|---|---|---|---|
patient_id | String | Patient identifier |
| |
procedure_id | String | Procedure identifier |
|
Request structure
See on Apiary
Authorize
Verify the validity of access token
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 = 'medical_event_context:read')
Return (403, 'Your scope does not allow to access this resource. Missing allowances: medical_event_context:read') in case of invalid scope(s)
Headers
Content-Type:application/json
Authorization:Bearer mF_9.B5f-4.1JqM
Request data validation
Validate Person
Get Person identifier from the URL
Check it exists in DB
Return 404 ('not_found') in case of error
Validate Encounter
Get Procedure identifier from the URL
Check it exists in DB
Return 404 ('not_found') in case of error
Check Procedure belongs to patient
Return 404 ('not_found') in case of error
Processing
Response structure*
See on Apiary