As a result of discussions in this talk thread, we have to introduce a new domain for medication statements as an effort towards comprehensive support of medication lists in OpenMRS. This means introducing a "medication_statement" table along with its MedicationStatement
object plus a lightweight service layer.
Modelling
The MedicationStatement
domain object should be a standard POJO that extends BaseFormRecordableOpenmrsData
. The "medication_statement" table should contain the columns below:
Column | Datatype | Required | FK | Java Variable Name | Class Type | FHIR Mapping | Comments |
---|---|---|---|---|---|---|---|
medication_statement_id | int | Auto | medicationStatementId | primitive | |||
patient_id | subject | ||||||
status | status | ||||||
category_id | int | concept.concept_id | category | ||||
medication | |||||||
encounter_id | context | ||||||
adherence | int | No | concept.concept_id | ||||
adherence_reason | int | No | concept.concept_id | Should this be a string instead? | |||
medication_start_date | datetime | ||||||
medication_end_date | datetime | ||||||
date_asserted | datetime | dateAsserted | |||||
information_provider | int | person.person_id | informationSource | ||||
medication_reason_id | int | concept.concept_id | medicationReason | reason | Should we rename this to medicationReasonCoded and support free text? | ||
note | varchar(1024) | note | |||||
dose | double | dosage.doseAndRate.dose.doseQuantity | |||||
dose_units | int | dosage.doseAndRate.dose.Quantity.unit and/or code | |||||
dosing_instructions | text | dosage.text | Should we also include coded instructions? | ||||
route | int | dosage.route |