AngularJS and the hierarchy widget

This week I have started to learn about and use AngularJS.

AngularJS is an open source javascript framework. It is meant to give MVC capabilities to browser applications. AngularJS is maintained by google and is meant to make development and testing easier.

I will be using AngularJS in one of the final phases of the project to build a widget for a hierarchy based concept search. So here are the thoughts on the widget:

The search widget will search through the concepts with a typical ajax auto complete. Selecting a concept will 1) set the value of the auto complete to be the selected concept, 2) if the concept has a mapping to SNOMED CT, then show the SNOMED hierarchy around that concept in the tree below. In the tree, each item is a SNOMED CT ConceptReferenceTerm. Some of these have OpenMRS Concepts mapped to them. If they do, we should visually highlight it, and also display the preferred name of that Concept. We will Show one level of parents and children. If you click on a parent or child, it should redraw the tree for that term. (I.E. the user can traverse up or down by one step by clicking a row). Also, if the term you clicked on has one or more Concepts attached to it (query the API for concepts with a mapping SAME-AS SNOMED CT 123456), then visually highlight this row, and also show the OpenMRS Concepts using thier preferred names. These concept names should actually be links/buttons that set the search box above (and its form field) to that concept. Implement it all as a fragment called “chooseConceptByHierarchy”, that requires a “formFieldName” parameter, and ultimately sets a hidden input (with that form field name) to the conceptId of the chosen concept.

Once this is finished we should be pretty much done with all functionality for the project and it will just be time to clean up and make sure all the final touches are done.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s