...
Verify the validity of access token
Return 401 in case validation fails
Check user scopes in order to perform this action (scope = 'preperson_merge_request:write')
Return 403 in case invalid scope(s)
Validate
...
schema
Validate request using schema (TBD)
Validate legal entity
Check that legal entity is active (status = ACTIVE, SUSPENDED)
...
Extract client_id from token (token.client_id == legal_entity_id)
Check legal entity status (status = ACTIVE, SUSPENDED)
...
Validate preperson merge request
Validate preperson merge request id exists in DB
In case of error - return 404
Check preperson merge request status is NEW
In case of error - return 422 (Incorrect status to approve preperson merge request)
Validate legal entity
Validate legal entity as on create preperson merge request process.
Validate person
Validate person as on create preperson merge request process.
Validate preperson
Validate preperson as on create preperson merge request process, but w/o searching pending merge requests.
Validate employee
Validate employee as on create preperson merge request process
Determine authorization method
...
Next steps is similar to determine authorization method process on approve patient request
Update object in DB
mpi.preperson_merge_person_preperson_request table
Parameter | Source | Description |
---|---|---|
status | Request: status | Status of the request, required. Set APPROVED |
updated_by | uuid | Extract user from token |
updated_at | timestamp | Get current date-time |
...