Capturing Patient allergies

The ability to capture patient allergies has been introduced recently in Bahmni. This allows the providers to search for an allergen and capture the reactions and also mark its severity. The following workflow demonstrates how allergies can be captured for the patients.

 

The new allergies display control has an “add” button, which is enabled only when the patient has an active visit

Add button on Allergies widget to capture allergies

Once the add button is clicked, the side panel opens which allows the providers to search for allergens. The provider can either type the name of the allergen (example “Milk products”) or type in the category “food” which displays all the allergens under food. The categories and allergens are obtained from CIEL and can be configured by implementation requirements.

 

Side panel to capture allergen

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Once the allergen is selected, the user can capture multiple reactions associated with the allergen. The user can either search for the reactions or select using the checkboxes

Finally, the provider can select the severity and add additional comments and save the observation.

This is reflected on the patient dashboard as seen under

Technical Details:

The Allergies display control is developed in React framework and is rendered using the Micro frontend Architecture. The code related to Allergies Display control resides in Bahmni Apps → Micro-frontends → next-ui folder. All the development related to Add Allergies side panel is developed using the components provided by Carbon Design System.

All the data captured for Allergies is in accordance with FHIR resources. https://build.fhir.org/allergyintolerance.html

The list of Allergens, Reactions & Severities are stored as Concepts Sets. The application supports 4 kinds of allergens and are to be added as concepts Sets.

  1. Medication allergens

  2. Environmental Allergens

  3. Food Allergens

  4. Other Allergens.

Note: Once an allergen & corresponding Reactions is captured for a patient. We cannot add the same allergen for the same patient.

Eg: For a patient, If we capture the data as Allergen: Bee, Reaction: Anaemia, Cough, Severity: Moderate. We cannot perform an edit or capture another set of reactions for the Allergen: Bee for that patient.

Reaction Severities:

The FHIR Standards support only 3 types of Severities:

  1. Mild

  2. Moderate

  3. Severe

https://hl7.org/fhir/valueset-reaction-event-severity.html

Configurations to be added:

In clinical app.json file we need to add config map which provides the uuids for the concept sets for all the allergen kinds , Reactions & Severities.

{ "allergyControlConceptIdMap": { "medicationAllergenUuid": "ccb80eea-e8f6-4016-9c29-fcfda516018b", "foodAllergenUuid": "d0ac880e-bfa3-4868-8762-3630b14ba56d", "environmentalAllergenUuid": "cff155eb-5258-463d-a54c-3644b37f9def", "otherAllergenUuid": "df2e7016-5f2e-41f4-b376-73762429a1c5", "allergyReactionUuid": "34a3f301-8d26-413c-b94c-41af2a01957a", "allergySeverityUuid": "80536f34-cee0-4024-983d-152648ba785b" }, showTextAsAbnormal: true }
  • Add the custom attribute in a CSV file located at

/masterdata/configuration/concepts/allergies.csv
  • Specify the attribute properties

Uuid,Void/Retire,Mappings|SAME-AS,Fully specified name:en,Short name:en,Description:en,Fully specified name:fr,Short name:fr,Description:fr,Data class,Data type,Complex data handler,Answers,Members,Allow decimals,Units,Normal low,Normal high,Absolute low,Absolute high,_version:1,_order:1200 ccb80eea-e8f6-4016-9c29-fcfda516018b,,,Reference application common drug allergens,,A convenience set to allow for easy selection of common drug allergens,,,,ConvSet,N/A,,,ACE inhibitors;Codeine,,,,,,,, 34a3f301-8d26-413c-b94c-41af2a01957a,,,Reference application allergic reactions,,A convenience set of reactions to allergens for documenting allergy history,,,,ConvSet,N/A,,,Mental status change;Anaemia,,,,,,,, 80536f34-cee0-4024-983d-152648ba785b,,,Allergy Severities,,,,,,Misc,Coded,,,Mild;Moderate;Severe,,,,,,,,

By default, In the display control only the entries with severity as Severe are coloured Red, But by enabling the config variable showTextAsAbnormal all the entries can be seen with Red text.

When showTextAsAbnormal is set to false:

 

When showTextAsAbnormal is set to True:

 

 

 

Reference JIRA Tickets:

  1. https://bahmni.atlassian.net/browse/BAH-3221

  2. https://bahmni.atlassian.net/browse/BAH-3279

  3. https://bahmni.atlassian.net/browse/BAH-3701

 

The Bahmni documentation is licensed under Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)