Wiki Spaces

Documentation
Projects
Resources

Get Help from Others

Q&A: Ask OpenMRS
Discussion: OpenMRS Talk
Real-Time: IRC Chat | Slack

Documentation

Page tree
Skip to end of metadata
Go to start of metadata

In order to compare different UI frameworks, we need to complete the following example in all of them:

[edit]

Set up the project

First, create a new clean project in your framework. Add the openmrs API JAR file however the framework. (You may use the 1.6.0 version, but you may need to wait for the spring-3.0 branch to be merged into trunk, and use that.)

[edit]

Patient dashboard, with tabs

Create a "patient dashboard" that has a header showing the patient's name and ID, and two tabs:

  • Demographics, showing the patient's age, sex, and address(es)
  • Encounters, showing a table of the patient's encounters.
    • Requirement: this "encounter table" must be a reusable widget. If the framework supports it, make it a native component. If not, make a taglib, or use a <jsp:include .../> or something similar.)

(Having a patient search page is optional. It's sufficient to ask people to go to openmrs/patient.form?patientId=123. Having a login page is optional. You're allowed to hardcode a Context.authenticate("admin", "test").)

More details: http://archive.openmrs.org/wiki/Image:Bake-off_requirement_1_-_dashboard.png

[edit]

Pluggable module

Next, create a "module" that adds another tab to the patient dashboard. This doesn't need to be a real OpenMRS module, but you need to show that starting your application with a JAR file in some /modules folder adds one more tab The tab should be called "Weights" and it should show:

  • a table of all encounters that have a weight
    • this must be implemented by re-using the encounter table component created for the encounters tab.
  • a graph of weight / time

More details: http://archive.openmrs.org/wiki/Image:Bake-off_requirement_2_-_module.png