GSoC 2017: Android Client Feature Parity Discussion

Hello everyone, I will be working on the Android Client, below are the features I will be implementing over the GSoC period.

  1. Feedback /Bug Report System: As suggested by my mentor, the user should be able to send a log report to us via email whenever the app crashes. Currently, the logs are already saved in a file, so whenever the app crashes we can show a custom error message to the user using ACRA (https://github.com/ACRA/acra) and then the user can select to send us the crash report or discard the message. ACRA will also help to get detailed crash reports for proper debugging.

  2. Visual Improvements: a. I will use William Charts (https://github.com/diogobernardino/WilliamChart) to better represent the Vitals data as graphs which will help in proper visualization. b. Other small improvements include using sliders in place of EditText etc. c. I will add a demo for the app so that whenever someone runs the app the for the first time they can get a gist of all the features. For this, I will use https://github.com/deano2390/MaterialShowcaseView .

  3. Vitals : I will add functionality to add doctor information, and other useful information of the patient, along with this I will add feature to generate the patient report (probably as pdf) and ability to send them to other doctors too. For this, I will use the Complex obs (https://wiki.openmrs.org/display/docs/Complex+Obs+Support) functionality.

  4. Provider Module : Adding the provider module functionality is a large feature request by our community. I will use Provider Management Module documentation present on the Wiki (https://wiki.openmrs.org/display/docs/Provider+Management+Module) to add the support for the provider module. I will add the following functionalities : a. Search for providers and edit their demographic information b. Assign/unassign patients to providers (via relationships) c. Assign/unassign supervisees to providers (via relationships) I will also add a provider dashboard which will have the following functionalities : a. Add: search for a patient (in the patient relationship pages) or provider (in the supervisees pane) to add as a patient/supervisee of the current provide b. Edit: edit the start date of a patient/supervisee relationship c. Transfer: transfer the selected patients/supervisees to another provider/supervisor d. Remove: end the provider-patient or supervisor-supervisee relationship for the selected patient/supervisee e. Void: void the provider-patient or supervisor-supervisee relationship for the selected patient/supervisee

  5. Appointment Scheduling: I will also implement the Appointment scheduling to the android app. I will use the Appointment Scheduling Module (https://wiki.openmrs.org/display/docs/Appointment+Scheduling+Module).

1 Like

The Complex obs feature is for adding patient information currently, according to the JIRA issue. We’ll explore generating patient report and doctor files but that’s not a priority.

FYI re:automated bug reporting – Anonymous JIRA issue creation was disabled due to spam.

Hello Everyone, My first blog post about the community bonding period can be found here.

I will start my work with AC-403. I was thinking it will not be good to show logs to the user after a crash.

Hello Everyone, I have completed the Feedback/Bug report system. Pull request : https://github.com/openmrs/openmrs-contrib-android-client/pull/378 Blog Post : https://medium.com/@DefCon_007/gsoc-week-1-157264c010b7

Dialog screenshot :

Sample email body : https://pastebin.com/kaKDBh4p

Nice work. You’re progressing with this week’s issues, I presume? As discussed you’ll be implementing the UI changes this week.

@avijitghosh82 Yes ! As mentioned I will be working on Visual improvements. I will send the work of two weeks combined.

@raff , @defcon informed me that the forms on qa.refapp are not working, and the patient registration fails. I tried to edit the forms from admin panel, but wasn’t able to fix the issue. Could you please help us out on the server configuration part? He’s trying to add support for different kinds of forms after a user submitted a question on talk.

@avijitghosh82 i have just fixed patient registration. Can you try again?

@dkayiwa The website is not opening now. Also can you please copy the forms of devpost04 to qa-refapp like vitals etc.

I have submitted the PR for adding the charts to the patient dashboard. In place of William Charts, which I mentioned in my proposal I used https://github.com/PhilJay/MPAndroidChart .