GSoC 2017 - More Metadata Management in AdminUI

Can we code these in a way that will allow the functions to be easily separated later? While lumping is fine now, eventually we may want:

  • openmrs-owa-admin-module
  • openmrs-owa-admin-scheduler
  • openmrs-owa-admin-concept
  • openmrs-owa-admin-encounter

What about openmrs-owa-admin-metadata instead of a “Metadata Dmin” or “Metadat Admin” owa module? :wink:

I develop these modules as single OWA now, but at the end of the project, We would like to combine all the related modules into single OWA.
Creating separate OWAs may increase the user complexity to access the fungal sites and a user can’t get the related functionalities with only that OWA.

@dkayiwa also suggested me to develop two OWAs at the end of the project.

If the openmrs-owa-admin-metadata haven’t proper meaning, then we want to add that missing ‘a’ :wink: . But it seems ugly :grin:

How to create the module under OpenMRS Organization? Are there any formalities to do this? I would like to create one for my current working OWA :slight_smile:

Did you take a look at this? https://wiki.openmrs.org/display/docs/GitHub+Conventions

Thank you @dkayiwa for the help. I read and requested.

I have completed half part of my first section. I have updated my blog with the development progress and Screen Shots of the Module Management OWA development. Please take a look and give me your suggestions to the improvement. :slight_smile:

URL : https://medium.com/@suthagar23/openmrs-module-management-owa-3f3156ce076a

I have completed Search and Install modules from OpenMRS Module Repo also. I used OpenMRS Add Ons? to get the module’s data from Online server.


There are two ways to achieve this action, (Search and Click install)

  1. My backend service will download the module file(.omod) and save it to the local storage, then It will POST to the Module API automatically to load that module
  2. My backend service will read the file data using GET method and combine it to Multipart File inside the controller. Then it will send that file to Module API to load that module.

Which is the best way to achieve the Seach and Install Modules?

I have used 2nd way here (because 1st way may cause some privilege problems to download and save the module inside the local storage)

Do you mind explaining a bit what you mean by your backend service? My understanding was that since this is an OWA, it is all client side.

@dkayiwa Sorry for the confusions

You can assume my Angular Controllers and Angular Services as Backend and HTML View as front-end :smiley:.

So I meant my angular seachController(including GET/POST Services) as backend service

I like your thinking which led you to choose the second option because local storage may be turned off by some clients, or not even have enough space left for the module size. :slight_smile:

1 Like

This is my week - 02 update : Upload module to OpenMRS through REST

1 Like

System Information OWA

Next, I want to implement another OWA to display the system information which was currently displayed under admin/maintenance/systemInfo.htm. Module part was implemented through legacy-UI module - System Information Controller class.

It’s required the WebServices REST feature to display that system information through the OWA. Currently, It hasn’t REST feature for this section, So I want implement REST feature for SystemInfo section.

I just created SystemInfomationResource1_8 and implemented REST feature for this section. Now, I can reterive SystemInformation to my OWA through this REST service using JSON format.


But there are some issues want to fix for the better REST implementation. I have raised the problem in this talk thread, @dkayiwa take a look at here and help to improve this REST part.

Hi @dkayiwa and @wyclif ,

I have completed System Information OWA :slight_smile: and now able to display all the system details. I have attached the Screenshot of the OWA here,


Apart from that, I would like to implement some other features in this section.

  1. I would like to implement this as Tap Panel based details then each tap will contain separated information. The user wants to click each tap to get that information.
  2. Here why we want to include module information? There is another module(Manage Modules OWA) for module management. So Can I remove module information from this part?
  3. If module information should be included here, under the module information Section, I would like to include one button to get More details about that module.
  4. Display Memory details using PiChart with Percentages. It will easy to identify by the user.
  5. Want to clearly state the values (System Language : en should be like English)

I would like to get you ideas to improve this part :slight_smile:

3 Likes

My take on this is that, let us start by reproducing only that functionality which existed in the legacyui. After all is done, and you still have the guts to do more, we can then think of those extra features. :slight_smile:

Having said the above, allow me to also say that you are making great progress! Plese keep it up. :smile:

1 Like

Thanks, @dkayiwa . So better to complete the existing parts by now and then I will make those improvements.

Yah, I would like to do more … So will keep this commitment forever :wink:

This is my week - 03 update : System Information OWA(https://medium.com/@suthagar23/system-information-open-web-app-d5dd78c5f49)

Hi @dkayiwa and @wyclif

There are some pending parts in Module Management and Code review also. I would like to start working on Encounters OWA.

I haven’t repo under OpenMRS, So how can I get your code review comments? Shall I just commit to my GitHub and give it you for the review?

Yes that should be fine for now.

This is my week - 04 update : SysAdmin OWA (https://medium.com/@suthagar23/openmrs-system-administration-owa-ca7a7881b682)

Hi @dkayiwa and @wyclif ,

I have updated REST Module for SystemInfo and uploaded SysAdmin here. Can you please take a look at here (https://modules-refapp.openmrs.org)?

This is my code base for the SysAdmin : https://github.com/suthagar23/openmrs-owa-sysadmin

There are some pending tasks in Encounters, So probably I will combine it as soon as possible :slight_smile:

How do i access it from the home page?