Purpose
This method allows to get contexts of Procedure in order to create approval on episode and receive access to other medical events.
Specification
Authorization
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)
Validations
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
Service 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/PCR/pages/17003184199 :
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