Info |
---|
/wiki/spaces/EN/pages/17591304241 (remove the link block before publishing the document) |
...
Page Properties | ||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||||||||||
|
...
Look at Dummy Sign Medication Request Requests for more details.
Configuration parameters
No
Dictionaries
Input parameters
Description of input parameters
Input parameter | Mandatory | Type | Description | Example | |
---|---|---|---|---|---|
1 | id | M | String | medication_request_request_id of a request | ac39-4547-bfa2-813bc87362a4 |
Request structure
See on API-specification (посилання на сторінку з API-специфікацією)
Description of the REST API request structure, example
Expand | ||
---|---|---|
| ||
|
...
Validate employee from the medication request request relates to user from token.
in case of error - return 403 “Only doctor that in Medication request Request can sign it“
Perform another validation described at Create MRR: Validate employee
Validate division
Validate division as described on Create MRR: Validate division
Validate context
Validate division as described on Create MRR: Validate context
Validate medical program
Validate medical_program_id: medical_program_id exists and has medication_request_allowed = true
in case of error return 422 ("Forbidden to create medication request for this medical program!")
...
Validate person with it’s verification status as described on Create MRR: Validate person
Validate signed content
Purpose validation: Check equality decoded signed content with previously created on IL.db.
...
Destination | Source |
---|---|
id |
|
request_number | <rd>.request_number |
verification_code | <rd>.verification_code |
created_at | <rd>.created_at |
started_at | <rd>.started_at |
ended_at | <rd>.ended_at |
dispense_valid_from | <rd>.dispense_valid_from |
dispense_valid_to | <rd>.dispense_valid_to |
person_id | <rd>.person_id |
employee_id | <rd>.employee_id |
division_id | <rd>.division_id |
medication_id | <rd>.medication_id |
medication_qty | <rd>.medication_qty |
medical_program_id | <rd>.medical_program_id |
status | ACTIVE |
is_active | true |
recall_at | NULL |
recalled_by |
NULL |
recall_reason |
NULL |
request_for_medication_request_id | $.id |
inserted_at | :timestamp |
inserted_by | user_id |
updated_at | :timestamp |
updated_by | user_id |
intent | <rd>.intent |
category | <rd>.category |
context | <rd>.context |
dosage_instructions | <rd>.dosage_instructions |
container_dosage | <rd>.container_dosage |
priority | <rd>.priority |
prior_prescription | <rd>.prior_prescription |
Generate printout form
Invoke ael.api in order to render MEDICATION_REQUEST_TEMPLATE
...
Parameter | Source | ||
---|---|---|---|
bar code
| request_number | ||
| created_at | ||
| dispense_valid_to | ||
| program.name | ||
| person.short_name | ||
| person.age | ||
| medication.name | ||
| medication_qty | ||
| started_at | ||
| ended_at | ||
| dosage_instruction_text | ||
| employee.short_name | ||
| employee.phone_number | ||
| legal_entity.name | ||
| division.name | ||
| legal_entity.address | ||
| legal_entity.edrpou | ||
| legal_entity.license | ||
| legal_entity.license.license_number | ||
| legal_entity.license.what_licensed | ||
| legal_entity.license.issued_date | ||
| legal_entity.license.issued_by | ||
| legal_entity.license.active_from_date | ||
| legal_entity.license.expiry_date | ||
| legal_entity.license.order_no | ||
| person.authentication_method | ||
| program.mr_blank_type getFromDictionary(<rd>.container-dosage.unit;'MR_BLANK_TYPES') | ||
| program.funding_source
| ||
| program.funding_source_text if {program.funding_source}<>"PERSON" then getFromDictionary({program.funding_source},'FUNDING_SOURCE)' else "" endif | ||
| person.age_unit returns in years ("р.") | ||
| medication.innm_primary_denumerator_unit getFromDictionary({innm_primary.dosage.denumerator_unit};'MEDICATION_UNIT'), | ||
| container_dosage.value <rd>container_dosage.value
| ||
| container_dosage.unit getFromDictionary(<rd>container_dosage.unit;'MEDICATION_UNIT') |
Medication request form example:
...
Code Block |
---|
UPDATE medication_request_requests SET status = 'SIGNED' WHERE id = {:id} |
Send SMS for person
If MR has program with medical program setting medication_request_notification_disabled = true, then don't send SMS.
Else:
Get authentication_method of MPI
If authentication_method == OTP - send SMS:
Generate text SMS (call Man method- templates rendering service with template "TEMPLATE_SMS_FOR_SIGN_MEDICATION_REQUEST".
Sending SMS for MPI
If authentication_method == OFFLINE (or medication_request_notification_disabled = true)
set medication_request_request.verification_code to MEDICATION_REQUEST_TEMPLATE
Calculate and set remaining quantity for the activity
If the medication request request is based on activity with quantity:
recalculate and set remaining_quantity for the activity as described at Create Medication Request: Validate based_on (p. 2.d.1 )
Response structure examples
See on API-specification (посилання на сторінку з API-специфікацією)
Description of the REST API response structure, example
Expand | ||
---|---|---|
| ||
|
...
Post-processing processes
Description of actions performed on data after processing
No
Technical modules where the method is used
List of pages describing technical modules where the method is used
Page Properties Report | ||||
---|---|---|---|---|
|
...