Versions Compared

Key

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

 

Introduction:

...

I'm a self taught programmer, I do my programming now in Python for applying machine learning algorithms that I'm currently studying and web development in Django, and contributing to C++/C projects, and most of my education at college was in java, But my favourite programming language by far is Objective-C.

 

My Github: https://github.com/yousefhamza

I have contributed to many Open source projects including OpenMRS and other iOS app, and other projects in different domains.

...

 

REST API

Functionality

GET:

http://server:8080/openmrs/ws/rest/v1/visit?includeInactive=false

   Get all the active visits.

POST:

http://server:8080/openmrs/ws/rest/v1/patient/{uuid}

   To edit patients info.

 

...

Under Mobile Data Collection Project, there’s a listed description and diagrams describing the structure of of the module to be implemented in the mobile application, So I’m going to use that. And my XML Library of choice to be used in parsing will be NSXMLParser and here’s why:

  • It’s the default one in the iOS SDK so no overhead of using external library and reducing the application dependency.

  • It’s a SAX parser which is required to achieve the sequence diagram of the Mobile XForm module.

  • It supports XPath and Event-Driven XML.

...

New REST APIs utilized in v2.0:



 

REST API

Functionality

http://server:8080/openmrs/moduleServlet/xforms/xformDownload?target=xformslist&uname=name&pw=password

   Get all xforms available.

http://server:8080/openmrs/moduleServlet/xforms/xformDownload?target=xforms&uname=name&pw=password

   Get the Forms.

http://server:8080/openmrs/moduleServlet/xforms/xformDataUpload?uname=name&pw=password

   Upload filled forms.

*with property xforms.useEncounterXform to True on the server to enable editing existing encounters.

 

...

 

Date

Deliverable

27 / 4 / 2015 - 7 / 5 / 2015

   v1.2 (Stepping Up The Code)

Week 1

  • Make the app universal so iPad users *for now* can get an iPad sized app.

  • View current active visits.

Week 2

  • Better patient view

Week 3

  • Edit patients’ information from the app.

  • View offline saved patients with indicator are they synced with their online profiles or not.

  • Implement synchronisation technique between offline saved data and their corresponding profiles on the server.

Week 4

  • Add support for other languages.

  • Add support for state restoration.

  • Add support for dynamic type.

  • Update OpenMRS-iOS User Guide.

Week 5

  • Implementing SplitView for search

  • Applying some iPad specific views

Week 6

  • Apply iPad specific views to the rest of the app

  • Update OpenMRS-iOS User Guide

Week 7 - Week 9

*Work on the 8th week will be lighter

  • Implementing the chooser part of the XForm Chooser

  • Implementing the UI related for List of XForms and downloading the XForms

  • Start working on the XForm parsing engine

  • Continue implementing XForm parsing engine

  • Testing XForms parsing engine

Week 10

  • Implementing XForms controller

  • Starting implementing the presentation layer (Text, Numerical)

Week 11

  • Continue working on presentation layer (Complex [audio, video], concept sets)

Week 12 - August 17th

  • Release it as beta to be tested by the community

  • Continue testing the app XForms part specifically

  • Responding to Community feedback

  • Update the OpenMRS-iOS User/Developer manual

 

...