Use of Angular in Patient List and Visit Tasks Modules

The Banda Health team is finishing up work on the Patient List and Visit Tasks modules and we were recently asked via email about our usage of Angular in our front end. Rather than just answer that question for a single person in an email I thought it might be interesting to post it here and get feedback on our approach.

Both of these modules do use the version of Angular included in uicommons (for the 2.3.1 refapp release) as well as some helper Angular services and controllers that we added to the openhmis.commons module. An example of how these modules are loaded can be seen in the top section of the patient list entities.gsp page. These modules capitalize on the work that we’ve already done to update the Cashier and Inventory modules for the reference application to help with:

  • Displaying tabular lists
  • Providing list paging
  • Providing a consistent look and UX for all management pages
  • Consuming standard omrs REST services and openhmis.commons entity framework REST services (See the base resources defined here and the resources implemented here for examples of our openhmis.commons resources)

On the back end we use openhmis.commons REST resources that fit into our entity framework which simplifies, among other things, getting data into and out of the database, searching, and paging. I think that the structure of rendering our pages using gsp and including Angular in those pages is the standard approach, though we’d welcome any feedback if we are doing something strange or just plain wrong.

If anyone has questions or comments on these modules or our use of Angular we would love to hear them!