Covid-19_Vaccine_form.webm

About the Feature

The Bahmni Covid19 Vaccine kit artefact would enable the health care professionals using Bahmni to capture the vaccination details of the people being vaccinated and would help record statistic of the vaccination people with or without any comorbidities.

Feature List

Prerequisites

  1. Supported Bahmni Version 0.92.

  2. All new concepts are imported using OpenMRS module initializer. This OpenMRS module needs specific versions of the following modules which will be automatically installed by this package:

    1. appointments-1.2-SNAPSHOT.omod

    2. bahmni.ie.apps-1.0.0.omod 

  3. The kit can be run on a system with concepts having CIEL UUIDs

Assumptions

  1. To roll back the COVID19 vaccine kit, the forms and programs should be manually deleted.

  2. After forms and programs are used it is not possible to roll back the changes. Concepts and mappings imported cannot be deleted.

Steps to Deploy Covid19 Vaccine Kit

New Implementation

Existing Implementation (Bahmni Version 0.92)

Next Steps:

These are the manual steps required as we want to have a new display control on the patient dashboard to see and edit the form and also a new display control to see the vaccine record(in case the patient took only one dosage) or the vaccine certificate(in case of both dosages.)

  1. To file /var/www/bahmniapps/clinical/index.html add the following script:

    <script src="/bahmni_config/openmrs/apps/customDisplayControl/js/customVaccinationCertificateControl.js"></script>
  2. To the file /var/www/bahmni_config/openmrs/apps/clinical/app.json, add the following content under "conceptSetUI": tag

     "COVID-19-Starter, Vaccine Recipient Category": {
                    "dropdown": true
                },
                "COVID-19-Starter, Reason for not eligible for vaccine": {
                    "multiSelect": true
                },
                "COVID-19-Starter, Comorbidities": {
                    "multiSelect": true
                },
                "Vaccine lot expiration date": {
                    "allowFutureDates": true
                },
                "Date medication refills due": {
                    "allowFutureDates": true
                },
                "COVID-19-Starter, Side effects reported after vaccination": {
                    "allowAddMore": true
                },
                "COVID-19-Starter, Symptoms": {
                    "multiSelect": true
                },
  3. To file /var/www/bahmni_config/openmrs/apps/clinical/dashboard.json add the following

    "Vaccination": {
                    "type": "custom",
                    "displayOrder": 25,
                    "config": {
                        "title": "DASHBOARD_TITLE_VACCINATION_KEY",
                        "template": "<vaccination></vaccination>"
                    }
                }
  4. To file /var/www/bahmni_config/openmrs/apps/clinical/formConditions.js add the following:

    'Eligible for Vaccine': function (formName, formFieldValues) {
            var eligibleValue = formFieldValues['Eligible for Vaccine'];
            if (eligibleValue == 'False') {
                 var reasons = formFieldValues["COVID-19-Starter, Reason for not eligible for vaccine"];
                 var showList = ["COVID-19-Starter, Reason for not eligible for vaccine"];
    
                 return {
                         show: showList
                 }
                 } else {
                     return {
                         hide: ["COVID-19-Starter, Reason for not eligible for vaccine", "Currently taking medication", "COVID-19-Starter, Others"]
                     }
                 }
          },
        'COVID-19-Starter, Reason for not eligible for vaccine': function (formName, formFieldValues) {
            var reasons = formFieldValues["COVID-19-Starter, Reason for not eligible for vaccine"];
            var showList = [];
            var hideList = [];
    
            var showMed = false;
            var showOthers = false;
    
            for (i = 0; i < reasons.length; i++) {
                 if (reasons[i] == 'Currently taking medication') {
                     showMed = true;
                     showList.push("Currently taking medication");
                 } else if (reasons[i] == 'COVID-19-Starter, Others') {
                     showOthers = true;
                      showList.push("COVID-19-Starter, Others");
                 }
            }
                 if (!showOthers) {
                     hideList.push("COVID-19-Starter, Others");
                 }
                 if (!showMed) {
                     hideList.push("Currently taking medication");
                 }
    
                 return {
                     show: showList,
                     hide: hideList
                 }
             },
            'COVID-19-Starter, New symptoms since vaccination': function (formName, formFieldValues) {
                 var newSymptomsValue = formFieldValues['COVID-19-Starter, New symptoms since vaccination'];
                 console.log(newSymptomsValue);
                 if (newSymptomsValue == 'True') {
                     var showList = ["COVID-19-Starter, Side effects reported after vaccination"];
    
                     return {
                         show: showList
                     }
                 } else {
                     return {
                         hide: ["COVID-19-Starter, Side effects reported after vaccination"]
                     }
                 }
             },
             'COVID-19-Starter, Symptoms': function (formName, formFieldValues) {
                 var reasons = formFieldValues["COVID-19-Starter, Symptoms"];
                 var showList = [];
                 var hideList = [];
    
                 var showOthers = false;
    
                 for (i = 0; i < reasons.length; i++) {
                    if (reasons[i] == 'COVID-19-Starter, Other') {
                         showOthers = true;
                         showList.push("COVID-19-Starter, Other");
                     }
                 }
                 if (!showOthers) {
                     hideList.push("COVID-19-Starter, Other");
                 }
    
                 return {
                     show: showList,
                     hide: hideList
                 }
             }
  5. To the file /var/www/bahmni_config/openmrs/i18n/clinical/locale_en.json add the following:(if you are using English)

    "DASHBOARD_TITLE_VACCINATION_KEY": "Vaccination",
      "DASHBOARD_TITLE_APPOINTMENTS_KEY": "Appointments",
      "DASHBOARD_APPOINTMENTS_SLOT_KEY": "Slot",
      "DASHBOARD_APPOINTMENTS_SERVICE_KEY": "Service",
      "DASHBOARD_APPOINTMENTS_SERVICE_TYPE_KEY": "Service Appointment Type",
      "DASHBOARD_APPOINTMENTS_DATE_KEY": "Date",
      "DASHBOARD_APPOINTMENTS_PROVIDER_KEY": "Provider",
      "DASHBOARD_APPOINTMENTS_STATUS_KEY": "Status",
      "DASHBOARD_PAST_APPOINTMENTS_KEY": "Past Appointments",
      "DASHBOARD_UPCOMING_APPOINTMENTS_KEY": "Upcoming Appointments",
      "DASHBOARD_UPCOMING_APPOINTMENTS_KEY_LINK": "List View",
      "DASHBOARD_NO_PAST_APPOINTMENTS_KEY": "No past appointments",
      "DASHBOARD_NO_UPCOMING_APPOINTMENTS_KEY": "No upcoming appointments",
    
      "DASHBOARD_NO_VACCINATION_DETAILS_KEY": "No Vaccination Details",
      "DASHBOARD_COVID19_CERTIFICATE": "COVID-19 Certificate",
      "DASHBOARD_CERTIFICATE_OF_COVID19_VACCINATION_KEY": "Certificate of COVID-19 Vaccination",
      "DASHBOARD_COVID19_CERTIFICATE_NAME_KEY": "Name",
      "DASHBOARD_COVID19_CERTIFICATE_AGE_KEY": "Age",
      "DASHBOARD_COVID19_CERTIFICATE_SEX_KEY": "Sex",
      "DASHBOARD_COVID19_CERTIFICATE_DATE_OF_BIRTH_KEY": "Date Of Birth",
      "DASHBOARD_COVID19_CERTIFICATE_PASSPORT_NO_KEY": "Passport No",
      "DASHBOARD_COVID19_CERTIFICATE_ADDRESS_KEY": "Address",
      "DASHBOARD_COVID19_CERTIFICATE_VACCINE_DETAILS_KEY": "Vaccination Details",
    
      "DASHBOARD_COVID19_VACCINE_RECORD_KEY": "Covid-19 Vaccine Record",
      "DASHBOARD_COVID19_VACCINE_RECORD_TITLE_KEY": "Dose 1 of COVID-19 Vaccination been received and awaiting next dosage"
  6. to the file /var/www/bahmni_config/openmrs/i18n/clinical/locale_es.json add the following:(If you are using Spanish)

     "DASHBOARD_TITLE_VACCINATION_KEY": "Vaccination",
    
      "DASHBOARD_TITLE_APPOINTMENTS_KEY": "Cita",
      "DASHBOARD_APPOINTMENTS_SLOT_KEY": "Ranura",
      "DASHBOARD_APPOINTMENTS_SERVICE_KEY": "Servicio",
      "DASHBOARD_APPOINTMENTS_SERVICE_TYPE_KEY": "Tipo de cita de servicio",
      "DASHBOARD_APPOINTMENTS_DATE_KEY": "Fecha",
      "DASHBOARD_APPOINTMENTS_PROVIDER_KEY": "Proveedor",
      "DASHBOARD_APPOINTMENTS_STATUS_KEY": "Estados",
      "DASHBOARD_PAST_APPOINTMENTS_KEY": "Citas pasadas",
      "DASHBOARD_UPCOMING_APPOINTMENTS_KEY": "Citas futuras",
      "DASHBOARD_UPCOMING_APPOINTMENTS_KEY_LINK": "Vista de listado",
      "DASHBOARD_NO_PAST_APPOINTMENTS_KEY": "Sin citas pasadas",
      "DASHBOARD_NO_UPCOMING_APPOINTMENTS_KEY": "SIn citas futuras",
    
      "DASHBOARD_NO_VACCINATION_DETAILS_KEY": "No Vaccination Details",
      "DASHBOARD_COVID19_CERTIFICATE": "COVID-19 Certificate",
      "DASHBOARD_CERTIFICATE_OF_COVID19_VACCINATION_KEY": "Certificate of COVID-19 Vaccination",
      "DASHBOARD_COVID19_CERTIFICATE_NAME_KEY": "Name",
      "DASHBOARD_COVID19_CERTIFICATE_AGE_KEY": "Age",
      "DASHBOARD_COVID19_CERTIFICATE_SEX_KEY": "Sex",
      "DASHBOARD_COVID19_CERTIFICATE_DATE_OF_BIRTH_KEY": "Date Of Birth",
      "DASHBOARD_COVID19_CERTIFICATE_PASSPORT_NO_KEY": "Passport No",
      "DASHBOARD_COVID19_CERTIFICATE_ADDRESS_KEY": "Address",
      "DASHBOARD_COVID19_CERTIFICATE_VACCINE_DETAILS_KEY": "Vaccination Details",
    
      "DASHBOARD_COVID19_VACCINE_RECORD_KEY": "Covid-19 Vaccine Record",
      "DASHBOARD_COVID19_VACCINE_RECORD_TITLE_KEY": "Dose 1 of COVID-19 Vaccination been received and awaiting next dosage"
    
  7. /var/www/bahmni_config/openmrs/i18n/clinical/locale_fr.json add the following(if you are using French)

     "DASHBOARD_TITLE_VACCINATION_KEY": "Vaccination",
    
      "DASHBOARD_TITLE_APPOINTMENTS_KEY": "Appointments",
      "DASHBOARD_APPOINTMENTS_SLOT_KEY": "Slot",
      "DASHBOARD_APPOINTMENTS_SERVICE_KEY": "Service",
      "DASHBOARD_APPOINTMENTS_SERVICE_TYPE_KEY": "Service Appointment Type",
      "DASHBOARD_APPOINTMENTS_DATE_KEY": "Date",
      "DASHBOARD_APPOINTMENTS_PROVIDER_KEY": "Provider",
      "DASHBOARD_APPOINTMENTS_STATUS_KEY": "Status",
      "DASHBOARD_PAST_APPOINTMENTS_KEY": "Past Appointments",
      "DASHBOARD_UPCOMING_APPOINTMENTS_KEY": "Upcoming Appointments",
      "DASHBOARD_UPCOMING_APPOINTMENTS_KEY_LINK": "List View",
      "DASHBOARD_NO_PAST_APPOINTMENTS_KEY": "No past appointments",
      "DASHBOARD_NO_UPCOMING_APPOINTMENTS_KEY": "No upcoming appointments",
    
      "DASHBOARD_TITLE_VACCINATION_KEY": "Vaccination",
      "DASHBOARD_NO_VACCINATION_DETAILS_KEY": "No Vaccination Details",
      "DASHBOARD_COVID19_CERTIFICATE": "COVID-19 Certificate",
      "DASHBOARD_CERTIFICATE_OF_COVID19_VACCINATION_KEY": "Certificate of COVID-19 Vaccination",
      "DASHBOARD_COVID19_CERTIFICATE_NAME_KEY": "Name",
      "DASHBOARD_COVID19_CERTIFICATE_AGE_KEY": "Age",
      "DASHBOARD_COVID19_CERTIFICATE_SEX_KEY": "Sex",
      "DASHBOARD_COVID19_CERTIFICATE_DATE_OF_BIRTH_KEY": "Date Of Birth",
      "DASHBOARD_COVID19_CERTIFICATE_PASSPORT_NO_KEY": "Passport No",
      "DASHBOARD_COVID19_CERTIFICATE_ADDRESS_KEY": "Address",
      "DASHBOARD_COVID19_CERTIFICATE_VACCINE_DETAILS_KEY": "Vaccination Details",
      
      
      "DASHBOARD_COVID19_VACCINE_RECORD_KEY": "Covid-19 Vaccine Record",
      "DASHBOARD_COVID19_VACCINE_RECORD_TITLE_KEY": "Dose 1 of COVID-19 Vaccination been received and awaiting next dosage"
  8. Log on the openers UI:

Fall back mechanism (To restore the system back to original state before COVID-19 package was installed)

In case you want to install the other forms, you can refer the following page:
Bahmni COVID-19 Starter Kit

Contact Us:

Praveena Dayanand<praveena.dayanand@thoughtworks.com>

Adhavan Kp<adhavan.kp@thoughtworks.com>

Ruchika Bhargava<ruchikab@thoughtworks.com>