erDiagram
consultation ||--o{ consultation_section : "contains"
patient ||--o{ consultation_section : "belongs_to"
organisation ||--o{ consultation_section : "hosts"
location ||--o{ consultation_section : "occurs_at"
appointment_slot ||--o{ consultation_section : "scheduled_in"
consultation_section ||--o{ observation : "references"
consultation_section ||--o{ diary : "references"
consultation_section ||--o{ issue_record : "references"
consultation_section ||--o{ test_request : "references"
consultation_section ||--o{ report : "references"
consultation_section ||--o{ care_plan_detail : "references"
consultation {
bigint consultation_id PK
varchar patient_id FK
varchar organisation FK
}
consultation_section {
bigint consultation_section_id PK
bigint consultation_id FK
varchar patient_id FK
varchar patient_guid FK
varchar patient_organisation_guid FK
varchar consultation_organisation_guid FK
varchar organisation FK
varchar entered_by_user_in_role_id FK
varchar authorising_user_in_role_id FK
varchar location_guid FK
varchar appointment_slot_guid FK
}
patient {
varchar patient_id PK
}
organisation {
varchar organisation PK
varchar organisation_guid
varchar emis_organisation_id
varchar organisation_type_description
}
location {
varchar location_guid PK
bigint location_code_id
varchar location_type_description
}
appointment_slot {
varchar appointment_slot_guid PK
}
observation {
bigint observation_id PK
bigint consultation_section_id FK
}
diary {
bigint diary_id PK
bigint consultation_section_id FK
}
issue_record {
bigint issue_record_id PK
bigint consultation_section_id FK
}
test_request {
bigint test_request_id PK
bigint consultation_section_id FK
}
report {
bigint report_id PK
bigint consultation_section_id FK
}
care_plan_detail {
bigint care_plan_detail_id PK
bigint consultation_section_id FK
}