Atlassian uses cookies to improve your browsing experience, perform analytics and research, and conduct advertising. Accept all cookies to indicate that you agree to our use of cookies on your device. Atlassian cookies and tracking notice, (opens new window)
/
Will be DEPRECATED_Get Medication request by ID_EN
This WS is designed to return Medication request details.
Search Medication Request possible in 2 options: by `medication_request.id` OR `medication_request.request_number`.
According to requirements:
User can see all Medication Requests of which he is an author
User of MSP, PRIMARY_CARE, OUTPATIENT (DOCTOR, SPECIALIST, etc) can see all Medication requests from the user's legal entity
User of MSP, PRIMARY_CARE (DOCTOR, etc) can see all the Medication requests of the patients whom he has an active declaration with by yourself a doctor (employee_id)
User of PHARMACY or NHS_ADMIN (PHARMACIST, etc) can see all Medication requests (without limitations)
User of MSP, PRIMARY_CARE, OUTPATIENT (DOCTOR, SPECIALIST, etc) can see all Medication requests based on the approval of the care plan that is contained in the Medication request
Посилання на ресурс, наприклад: /api/persons/create
Scope
medication_request:details
Scope для доступу
Components
ePrescription
Зазначається перелік бізнес компонентів, які використовують цей метод, наприклад: ePrescription
Microservices
API paragraph not found
Перелік мікросервісів, які використовує метод API, наприклад: Auth, ABAC
Protocol type
REST
Тип протоколу, який використовується запитом, наприклад: SOAP | REST
Request type
GET
Тип запиту API, наприклад: GET, POST, PATCH…
Sync/Async
Sync
Метод є синхронним чи асинхронним?
Logic
Verify the validity of access token
Return 401 in case validation fails
Check user scopes in order to perform this action (scope = 'medication_request:details')
Return 403 in case invalid scope(s)
Get `client_type` from `mithril.clients`
Logic WS for `client_type` = MSP
Get `my_party_id` from `$.context.user_id`
Return 500 in case ("Not found party for this user!")
Get list from `prm.employees` for this `party_id` & `$.context.legal_entity_id`
Search Medication requests by filters:
SELECT * FROM medication_request MR
INNER JOIN employees E
ON E.party_id = my_party_id
AND (E.id = $.employee_id OR $.employee_id IS NULL)
AND (E.legal_entity_id == $.context.legal_entity_id OR $.context.legal_entity_id IS NULL)
LEFT JOIN declarations D
ON D.Employee_id = E.id
AND E.status = ACTIVE
AND D.status = ACTIVE
AND MR.person_id = D.person_id
WHERE (MR.id = $.id OR MR.request_number = $.id)
AND MR.employee_id == E.id
AND MR.is_active = TRUE
Logic WS for medication requests based on care plan
Get party_id from $.context.user_id
Get list from $.prm.employees for this party_id
Get care_plan_id from $.medication_requests.based_on_care_plan_id
Check $.approvals for user's employees (granted_to) on care_plan_id (granted_resources) and $.medication_requests.person_id (granted_by)
Search Medication requests by filters: based_on_care_plan_id, person_id.
SELECT * FROM medication_request MR
WHERE (MR.id = $.id OR MR.request_number = $.id)
AND MR.based_on_care_plan_id = $.id
AND MR.person_id = $.id
AND MR.is_active = TRUE
Logic WS for `client_type` = PHARMACY or NHS_ADMIN
Search Medication request by $.id:
SELECT * FROM medication_request MR
WHERE (MR.id = $.id OR MR.request_number = $.id)
AND MR.is_active = TRUE
Preconditions
No
Global and configurable parameters
No
Input parameters
Input parameter
Values
Type
Description
Example
Input parameter
Values
Type
Description
Example
id
String
Medication Request identifier OR request_number
48416485-cc98-46c4-8bba-e321de9e1ecd
Filters
No
Request structure
API paragraph not found
Authorize
Request to process the request using a token in the headers
Parameters that are used when processing the request
Configuration parameters
Access to the method is defined by the scope medication_request:details. Permission for this scope is determined by the System administrator by configuring scopes in the context of clients and roles.