Table of Contents |
---|
Purpose
This method is designed to reject previously created Medication dispense
Key points
Only authenticated and authorized users of a legal entity who has created
...
Specification
WS logic
...
Medication dispense can reject Medication dispense.
Medication dispense can be rejected only from ‘NEW' status.
Specification
Page Properties | |||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Logic
Update Medication dispense data in OPS DB:
set status = ‘REJECTED’
updated_by = user_id
updated_at = now().
Preconditions
No
Global and configurable parameters
No
Input parameters
Input parameter | Values | Type | Description | Example |
---|---|---|---|---|
id | String | Medication Dispense Response Identifier. Required. | b075f148-7f93-4fc2-b2ec-2d81b19a9b7b |
Filters
No
Request structure
API paragraph not found
Authorize
Verify the validity of access token
...
in case of error - 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 = 'medication_dispense:reject')
...
return 403 (“Your scope does not allow to access this resource. Missing allowances: medication_dispense:reject”) in case of invalid scope(s).
Headers
API paragraph not found
Validate request
API paragraph not found
Request data validation
Validate Medication dispense
Get
...
- Extract legal_entity_id (client_id) from token
Validate context
- Only users of legal entity who has created Medication Dispense and NHS Admin can reject Medication Dispense
- medication_dispense.legal_entity_id = client_id (context) or client_id (context) (type) in TOKENS_TYPE_ADMIN
Validate status (transition)
- Dispense should be active in order to process it
- is_active = true
- status = 'NEW'
Change dispense status
Update dispense status to REJECTED
...
Parameter
...
Source
...
Description
...
See: Status Charts (reimbursement)
...
Medication dispense identifier from the URL
Check Medication dispense exists in DB (OPS)
Return 404 ('not_found') in case of error.
Check Medication dispense belongs to legal entity
Return 404 ('not_found') in case of error.
Validate User
Extract user_id from token
Return 404 ('not_found') in case employee didn’t create medication dispense.
Validate transition
Get status of Medication dispense by $.id in OPS DB. Check that Medication dispense is in status ‘NEW’
in case of error - return 409 ("Can't update medication dispense status from {status} to REJECTED").
For more information look at Medication dispense status model.
Processing
API paragraph not found
Response structure
Example:
Expand | ||
---|---|---|
| ||
|
Post-processing processes
No
HTTP status codes
Page Properties | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Backward compatibility
API paragraph not found