Table of Contents |
---|
Purpose
...
Page Properties | |||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
...
Check ended_at >= started_at
in case of error - return 422 error “Ended date must be >= Started date!“
Validate started_at >= created_at, but not greater than (created_at + MEDICATION_REQUEST_REQUEST_EXTENDED_LIMIT_STARTED_AT_DAYS)
if invalid - return 422 error (message: "The start date should be equal to or greater than the creation date, but the difference between them should be not exceed {{MEDICATION_REQUEST_REQUEST_EXTENDED_LIMIT_STARTED_AT_DAYS}} day(s).")
Validate started_at >= current_date()if invalid - return 422 error (message: "Started date must be >= current date!")
Check created_at >= (current date - MEDICATION_REQUEST_REQUEST_DELAY_INPUT)
in case of error - return 422 “Create date must be >= Current date - MRR delay input!”
...
Check compatibility of innm with medication list for the program
if data is not found:
add to response: status = INVALID
add to response: rejection_reason = "Innm not on the list of approved innms for program {program_name}"
Expand | ||
---|---|---|
| ||
|
2. Check if there is at list one record of Brand with requested primary container volume
a. if not exist - return 404 error (message: "Innm not on the list of approved innms for program {program_name}Not found any appropriate medication with such container parameters")
3. Check if there is at list one record medication_qty <= max_request_dosage or (max_request_dosage is null)
a. if not exist - return 404 error (message: "Not found any appropriate medication complying with max_request_dosage limit")
4. Check compliance of medication quantity: remainder of the division (medication_qty/package_min_qty) is equal to 0
...
Validate employee_id as described on Create Medication request Request. Except on Prequalify method a declaration has not checked for the employee.
6. Check Care plan and Activity
...
Validate "context" is an active (not entered-in-error) entity from corresponding dictionary, that belongs to the current patient
Validate there is an entity in collection $.data.context.identifier.type.coding[0].code with id == $.data.context.identifier.value that belongs to the current patient
in case of error - return 200 with status = INVALID and rejection_reason = “Entity not found“
encounter diagnosis is not empty in $.encounter.diagnosis
in case of error return 422 ("Encounter without diagnosis can not be referenced")
Validate context.identifier.type.coding[0].code = encounter
in case of error return 422 ("value is not allowed in enum")
encounter diagnosis is not empty in $.encounter.diagnosis
in case of error return 422 ("Encounter without diagnosis can not be referenced")
9. Check person
It is needed to check if person has allowed verification status to get medication.
...
11. Check provision for a programs
It is needed to check if medical program can be provided by pharmacies.
If medical program has funding_source = LOCAL:
Check there is exists any active medical program provision with msp_legal_entity_id equal to employee's legal entity
in case of error - return 200 with status = INVALID and rejection_reason = "Medical program is not provided for legal entity specified in the medication request"
Response structure
Collect array for all programs in payload with status for each (VALID or INVALID) and rejection_reason.
...