Encounter Matching

Visit is selected by the visitUuid sent in the EncounterTransaction. Within the visit, the encounter is filtered based on the following logic for regular encounters, retrospective encounter, on behalf of encounters and encounter edits. , in that order

Regular Consultation & Retrospective Consultation

  1. by encounterUuid if sent by the client.
  2. by encounterType
  3. by sessionTime (for retrospective entry, the client should send the date as 12:00)
  4. by provider if provider or on behalf of provider
  5. by user if not a provider

Visit Document

  1. by encounterType
  2. by provider

Encounter Type Matching

Regular Consultation Encounter & Retrospective Consultation Encounter

Encounter type to be used for finding an encounter or creating a new encounter for regular consultation or retrospective consultation is based on either of the following logic in the given order,

  1. by location uuid - mapping present in entity_mapping table with entity_mapping_type as 'location_encountertype'  (OR)
        - Location encounter type mapping can be inserted using the following query:
          

    location_encountertype
    insert into entity_mapping(uuid, entity_mapping_type_id, entity1_uuid, entity2_uuid, date_created) 
    values (uuid(), <mapping_id_of_location_encountertype>, <uuid_of_location>, <uuid_of_encounter_type>, now())
  2. by default encounter type provided in global property ( bahmni.encounterType.default).

Program Consultation Encounter

Encounter type to be used for finding an encounter or creating a new encounter for program consultation is based on either of the following logic in the given order,

  1. by programUuid - mapping present in entity_mapping table with entity_mapping_type as 'program_encountertype' (OR)
  2. by default encounter type provided in global property ( bahmni.encounterType.default).

For other encounters, following encounter types are picked irrespective of location:

  1. Registration Encounter - 'REG'
  2. Radiology Upload Encounter - 'RADIOLOGY'
  3. Patient Document Encounter - 'Patient Document'
  4. Admission Encounter - 'ADMISSION'
  5. Discharge Encounter - 'DISCHARGE'
  6. Transfer Encounter - 'TRANSFER'