Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Featured add: 2.6

This page provides documentation of widgets that can be added to the patient dashboard 

...

keyrequireddefaultvaluesdescriptionminimum version
conceptsrequired
Comma delimited list of Concept numeric id, uuid, or mapping* Provides the concepts whose most recent obs  or group observations are returned are returned.
* If the concept has no value it is returned with no value
* Text showing how recent the obs is, today, yesterday, n days/months/years ago in smaller italic text whose title is the actual obs date

conceptNameTypeoptional
  • FSN
  • shortName
  • preferred
Specifes the preferred format for displaying both the concept and any value-coded concepts. The values correspond to "FULLY_SPECIFIED", "SHORT", and locale_preferred = true, respectively.
maxAgeoptional
Numeric integer with a suffix for example:
*1d – 1 day
*2w – 2 weeks
*4m – 4 months from the current date
The maximum age of most recent obs for each of the items in the concept list
obsGroupLabelsoptionalnone
  • FSN
  • shortName
  • none

May be used when obs grouping concept uuid(s) are used in the concept key.
Specifies the format in which to display obs group member prefixes, FSN, shortName, none. The prefixes to display refer to either Fully Specified Name, Short Name of the underlying member concept or No prefix respectively.


nLatestObsoptional1Numeric integerSpecifies the number of latest non voided observations for a/each concept specified in the concepts key.

...

keyrequireddefaultdescriptionminimum version
programrequired

Program UUID (ie. uuid of a program in OpenMRS Program table)
dateFormatoptional
yyyy-MM-dd
Date format to use when displaying dates
locationTagoptionalnull

UUID of a location tag. If specified, the options in the "program enrollment location" drop-down will be limited to locations with tag.

...

Privilege

markPatientDeadOutcomeoptionalDescription
Task: enrollInProgram
Whether the user has the ability to enroll a patient in a program
Task: editPatientProgramWhether the user has the ability to edit an existing patient program
Task: deletePatientProgramWhether the user has the ability to delete an existing patient program

...

languagejava
firstline1
titleExample Visits By Encounter Type widget app configuration
linenumberstrue
null

UUID of a concept. If that concept is selected as the "Program Outcome", user will be redirected to "Mark Patient Deceased" page 

(assuming the user has the "Task: coreapps.markPatientDead" privilege).  For example, if you have an outcome of "Patient Died" this allows you

to config the widget to redirect to the "Mark Patient Deceased" page if that outcome is selected.

since Core Apps 1.31.0
dashboardoptionalnull

ID of a patient dashboard.  Used so that the widget can know the context it is rendered in.  Currently, this is used in conjunction with

the "markPatientDead" functionality: this dashboard id is passed on to the Mark Patient Dead controller so it can properly generate a return 

URL to the appropriate dashboard.

since Core Apps 1.31.0

Privileges

PrivilegeDescription
Task: enrollInProgram
Whether the user has the ability to enroll a patient in a program
Task: editPatientProgramWhether the user has the ability to edit an existing patient program
Task: deletePatientProgramWhether the user has the ability to delete an existing patient program



Code Block
languagejava
firstline1
titleExample Visits By Encounter Type widget app configuration
linenumberstrue
{
  "id": "coreapps.programStatus",
  "instanceOf": "coreapps.template.dashboardWidget",
  "description": "List of Programs",
  "order": 10,
  "config": {
    "widget": "programstatus",
    "icon": "icon-stethoscope",
    "label": "Program Status",
   	"dateFormat": "dd MMM yyyy",
	"program": "7b6a71b1-742d-4d39-ac53-8ae6d4db960c",
	"locationTag": "ef54a24a-dd76-4636-b94d-f7b486107369"
  },
  "extensions": [
    {
      "id": "org.openmrs.module.coreapps.mostRecentVitals.clinicianDashboardSecondColumn",
      "appId": "coreapps.programStatus",
      "extensionPointId": "7b6a71b1-742d-4d39-ac53-8ae6d4db960c.firstColumnFragments",
      "extensionParams": {
        "provider": "coreapps",
        "fragment": "dashboardwidgets/dashboardWidget"
      }
    }
  ]
}

Image Samples 

Prior to enrollment:

Image Removed

After enrollment:

Image Removed

 Editing enrollment:

Image Removed

...

Given a program, shows all of a patient's enrollments in that program by rendering a Program Status widget (see above) for each program, ordered from most recent to oldest.

Configuration Parameters

...

yyyy-MM-dd

...

UUID of a location tag. If specified, the options in the "program enrollment location" drop-down will be limited to locations with tag.

...

Prior to enrollment:

Image Added

After enrollment:

Image Added

 Editing enrollment:

Image Added

Anchor
programhistory
programhistory
Program History

Given a program, shows all of a patient's enrollments in that program by rendering a Program Status widget (see above) for each program, ordered from most recent to oldest.

Configuration Parameters

keyrequireddefaultdescriptionminimum version
programrequired

Program UUID (ie. uuid of a program in OpenMRS Program table)
dateFormatoptional
yyyy-MM-dd
Date format to use when displaying dates
locationTagoptionalnull

UUID of a location tag. If specified, the options in the "program enrollment location" drop-down will be limited to locations with tag.


includeActiveoptionaltrueIf set to false, excludes the active program enrollment (if any) from the list
markPatientDeadOutcomeoptionalnull

UUID of a concept. If that concept is selected as the "Program Outcome", user will be redirected to "Mark Patient Deceased" page 

(assuming the user has the "Task: coreapps.markPatientDead" privilege).  For example, if you have an outcome of "Patient Died" this allows you

to config the widget to redirect to the "Mark Patient Deceased" page if that outcome is selected.

since Core Apps 1.31.0
dashboardoptionalnull

ID of a patient dashboard.  Used so that the widget can know the context it is rendered in.  Currently, this is used in conjunction with

the "markPatientDead" functionality: this dashboard id is passed on to the Mark Patient Dead controller so it can properly generate a return 

URL to the appropriate dashboard.

since Core Apps 1.31.0



Code Block
languagejava
firstline1
titleExample Visits By Encounter Type widget app configuration
linenumberstrue
{
  "id": "coreapps.programHistory",
  "order": 10,
  "config": {
    "icon": "icon-stethoscope",
    "label": "Previous Enrollment",
   	"dateFormat": "dd MMM yyyy",
	"program": "7b6a71b1-742d-4d39-ac53-8ae6d4db960c",
	"locationTag": "ef54a24a-dd76-4636-b94d-f7b486107369",
	"includeActive": "false"
  },
  "extensions": [
    {
      "id": "org.openmrs.module.coreapps.mostRecentVitals.clinicianDashboardSecondColumn",
      "appId": "coreapps.programHistory",
      "extensionPointId": "7b6a71b1-742d-4d39-ac53-8ae6d4db960c.secondColumnFragments",
      "extensionParams": {
        "provider": "coreapps",
        "fragment": "program/programHistory"
      }
    }
  ]
}

...

keyrequireddefaultdescriptionminimum version
displayActivationDateoptional
false
Specifies whether to display date of medication dispensation.
detailsUrloptional
null
URL to redirect the user to  the user to a drug orders management page. NB. {{patientUuid}} in the url is replaced by the patient's uuid. To use the Order Entry OWA for drug order management, the url in the example below can be used to access the app. The Order Entry OWA can be installed as detailed in the installation guide.
returnUrloptional/openmrs/coreapps/clinicianfacing/patient.page?patientId={{patientUuid}}Specifies the return url when leaving the order entry ui. NB. {{patientUuid}} in the url is replaced by the patient's uuid.

...

  • obsgroup table
    • Similar to the obsaccrossencounters but for obsgroups.  Should allow for multiple obs within an obsgroup.
    • Use case:  A list of medications dispensed with encounter date, medication name, and frequency
  • Graphs
    • Graphs with log scale
      • Use case:  Viral load scale could vary from non-detectable to 10,000.  It would be helpful to graph.
    • Multiple variable graphs
      • Use case:  Graph 2 or more variables (concepts) on the same graph.  Use for weight and height.
    • BMI graph
      • Use case:  Based on weight and height, graph weight and calculated BMI on a single graph.