Purpose
This method allows to get the context of Allergy Intolerance 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 Allergy Intolerance identifier from the URL
Check it exists in DB
Return 404 ('not_found') in case of error
Check Allergy Intolerance belongs to patient
Return 404 ('not_found') in case of error
Service logic
Service returns context (episode), allergy intolerance based on:
Get Allergy Intolerance object by allergy_intolerance_id from allergy_intolerances (MongoDB)
Get allergy_intolerance.context.identifier from Allergy Intolerance object
Call https://e-health-ua.atlassian.net/wiki/spaces/PCR/pages/17003184199 :
Get Encounter object by allergy_intolerance.context.identifier (allergy_intolerance.context.identifier = encounter._id)
AFTERGet encounter.episode from Encounter object
Render a response according to specification