Purpose
This WS gives opportunity to reject and close merge request.
Specification
Service logic
Only authenticated and authorized SPECIALIST or RECEPTIONIST employees can use this WS.
Usage of this WS allowed in EMERGENCY or OUTPATIENT legal entities.
Only NEW or APPROVED merge request can be rejected.
The request can be rejected only by employee who made the request.
Change status should be logged in the Event manager.
Authentication
Verify the validity of access token
Return 401 in case validation fails
Check user scopes in order to perform this action (scope = 'merge_request:write')
Return 403 in case invalid scope(s)
Check the employee has created this merge request. Thus select inserted_by from il.merge_requests of this merge request and compare it with user_id from the token.
Check that client_id from the token maches with il.merge_requests.legal_entity_id
If not match - return 422 error (User doesn’t belong to legal entity where the merge request was created)
Validate merge request
Validate merge request id exists in DB
In case of error - return 404
Check merge request status is NEW or APPROVED
In case of error - return 409 (Invalid merge request status)
Update object in DB
mpi.merge_requests table
Parameter | Source | Description |
status | Request: status | Status of the request, required. Set REJECTED |
updated_by | uuid | Extract user from token |
updated_at | timestamp | Get current date-time |