Overview
This web service is designed to update existing episode of care for the patient.
Specification
Validation
Validate token
- Verify the validity of access token
- Return 401 in case validation fails
- Verify token is not expired
- in case of error return 401
Validate scopes
- Check user scopes in order to perform this action (scope = 'episode:write')
- Return 403 in case invalid scope(s)
Validate legal entity
- Validate episode belongs to the legal entity where the current user works
- ME.episode.managing_organization==token.client_id
- in case of error return 422 "Managing_organization in the episode does not correspond to user`s legal_entity"
- ME.episode.managing_organization==token.client_id
Request validation
- ME.episode.status == "active"
- in case of error "Episode in status {episode_status} can not be updated"
- Validate care_manager
- $.care_manager.identifier.type.coding.[0].code = "employee"
- in case of error return 422 "Submitted code is not allowed for this field"
- $.care_manager.identifier.type.coding.[0].system = "eHealth/resources"
- in case of error return 422 "Submitted system is not allowed for this field"
- $.care_manager.identifier.value must meet the following requirements
- PRM.employee.type = "DOCTOR"
- in case of error return 409 "Employee submitted as a care_manager is not a doctor "
- PRM.employee.status= "active"
- in case of error return 409 "Doctor submitted as a care_manager is not active "
- PRM.employee.legal_entity = token.client_id
- in case of error return 409 "User doesn`t have permitions to set the employee as a care_manager of the episode"
- PRM.employee.type = "DOCTOR"
- $.care_manager.identifier.type.coding.[0].code = "employee"
Validate referral_requests (service requests)
Service requests must relates to the same patient as episode of care
You can reference only active and used service request
Service request must be used in the same legal entity
$.referral_requests.identifier.type.coding.[0].code = "service_request"in case of error return 422 "Only service_request could be submitted as a referral_request"
$.referral_requests.identifier.type.coding.[0].system = "eHealth/resources"in case of error return 422 "Submitted system is not allowed for this field"
$.referral_requests.identifier.value must meet the following requirementsME_DB.service_request.status == "active"ME_DB.service_request.used_by is not emptyin case of error return 422 "Service request must be active"
ME_DB.service_request.used_by relates to the same legal entity as userin case of error return 422 "Service request must relates to the same legal entity"
Request processing
- Set patients.episodes.#{id}.care_manager.display_value= ((PRM.parties.first_name + PRM.parties.second_name + PRM.parties.last_name) where PRM.parties.id == PRM.employees.party_id) where PRM.employees.id== $.care_manager.identifier.value
- Set episodes.managing_organization.display_value = PRM.legal_entities.public_name where ( PRM.legal_entities.id == $.managing_organization.identifier.value)