GSoC 2018 - Improved built-in reports project

gsoc2018
Tags: #<Tag:0x00007f88e8bba828>

(Rafal Korytkowski) #21

Thanks for the update! All cleared. I’ve added you to approvers for the BIR project so you can move issues to ready for work yourself.


(Jeyasumangala Rasanayagam) #22

Thanks @raff :slight_smile:

I have done the required changes for this tickets so far,

  • RA-1500 - Remove the duplicate data from the List of New Patient Registrations

    I have changed the existing query of the report to remove the duplicate entries from the table.

  • RA-1501 - Create Number of Registrations for all locations Report

    I created a new report to fetch all the number of registrations from all locations. It will send the collection of data as Location Name with number of registration for each location. So When the user comes to the Number of Registrations view, He/She can get the Location Name with Number of Registrations without selecting the locations (But User can select the start date to fetch the data)

    image

  • BIR-3 - Browser router failed to redirect while refreshing the pages

    Actual problem was occurred when I tried to click a patient row from Patients for a Diagnosis report to goto the patient dashboard. Then I got 404 error when press the back button from patient dashboard to return to built in reports module. The router was not initiated at this page since we fixed the router in the index page of the module.

    Built-in-reports module uses BrowserRouter for the routing. It’s fail while refreshing the web page or pressing back button in the browser. I have changed to HashRouter to resolve this issue and now it’s working as expected.

I will send new PRs for your review today and will start to discuss about the further changes.

Thanks


(Rafal Korytkowski) #23

Hi @sumangala28,

I hope you passed all your exams now and you can focus entirely on the project.

Let me say it again that I expect daily reports of your progress on this thread. How are RA-1501 and BIR-3 going?


(Jeyasumangala Rasanayagam) #24

Hi @raff,

My exams will be finished coming Wednesday. After that, I can spend my semester vacation with my project and work more to cover the tasks I missed during my exam time.

RA-1501 and BIR-3, both are completed and tested on my local instance. I just need to follow some minor formatting before sending the PR. I will update the PR on Wednesday after the exams.

And I have to add those reports to built-in reports module as well, So I will update that PR on the same day.

Thank you.


(Jeyasumangala Rasanayagam) #25

Hi @raff

I have completed these following tasks, Please review and provide your suggestions :slight_smile:

  • BIR-3 : HashRouter added to the module instead of BrowserRouter
  • BIR-4 : Add Number of Registration for all Locations to the Module
  • BIR-5 : Added implementation to change the view of the bar chart
  • RA-1501 : Added Number of Registrations for all locations Report

I have attached some screen shots of the implementation here,

Thanks.


(Jeyasumangala Rasanayagam) #26

Hi @raff,

Here after, I would like to work on this following task,

Number of Admissions/Discharges/Transfers views should have to changed in way to provide more information to the user(come up with your own ideas to visualize data)

I will create the tickets according to the tasks and start to work on those tasks immediately


(Jeyasumangala Rasanayagam) #27

Hi @raff,

I’m working on Number of Admissions/Discharges/Transfers reports. I have already changed the Number of Registration report which can display all the locations with the registration count. Like that way, I would like to change these following reports as well,

  • Number of Discharges
  • Number of Transfers

So I need add some extra reports to the referenceMetaData Module like this. I have changed the package name for this reports for better grouping. So if you have time, please have a look at this PR, and give some comments. So then, I can follow this way, and package naming for those three reports as well.

Thanks.


(Jeyasumangala Rasanayagam) #28

Hi @raff

Please review this PRs and provide your comments

  • RA-1505 : Create Number of Discharges for all locations Report
  • RA-1506 : Create Number of Transfers for all locations Report

Thanks.


(Jeyasumangala Rasanayagam) #29

Hi @raff

Please review this PRs and provide your comments,

  • BIR-7 : Add Number of Discharges for all Locations Reports to the Module
  • BIR-8 : Add Number of Transfers Report for all Locations to the Module

I have re-opened BIR-4 to update the report UUID. It was mistakenly added a old UUID with that PR. Please review and merge this PR to get work with new report UUID.

Thanks.


(Jeyasumangala Rasanayagam) #30

Hi @raff

I would like to work on this following task for this week.

Number of visit notes/ number of visits views should have to changed in way to provide more information to the user(come up with your own ideas to visualize data)

I already done some implementations to improve the visits reports in referenceMetaData module. The Visit report can give a number of total visits for given date period. The content of that report isn’t enough for a better report. So it should be improved with following contents,

  • Total Number of visits grouped by visit types (New)
  • Users should able to get the visit report for all locations or a given location (New)
  • Users should able to get the visit report with in a given date period (Existing)
  • Bar chart should be added into the bottom of the report as usual. (New)

Please change the status of this ticket - RA-1508 ticket for my work.

Thanks.


(Jeyasumangala Rasanayagam) #31

Hi @raff,

I have added some improvements to the Number of Visits page by adding those changes mentioned above. I have attached the screen shots before and after the changes here for your view,

Before the Changes

After the Changes

I will send the PR for this improvements soon. In the mean time, If you have time please make these two tickets to ready for work.

  • RA-1508 : Create Number of Visits with visit type for given location and date report
  • RA-1509 : Improve Number of Visit Notes with visit type for given location and date report

While working on this report, I was able to find some issues. Those are,

  1. Count in this report only contains the past visit. Active visits aren’t included into this report since those haven’t end date. Do we want to count the active visits as well?
  2. Could not include the visit which ended today(on the active day) into this report. Because end date selector disabled the tomorrow(Next day) date for end date option, and default selected the end date with “12.00AM”. So it missed to capture the active day.

Shall I add some changes to fix those issues? Please provide your comments to make this better :slight_smile:

Thanks.


(Rafal Korytkowski) #32

Good observations @sumangala28.

  1. I think it would be best to have a checkbox to “Include Active Visits” under the date pickers.

  2. I’d change the end date selector to use 11:59 PM instead of 12:00 AM by default.

What do you think?


(Jeyasumangala Rasanayagam) #33

Hi @raff

I think it would be best to have a checkbox to “Include Active Visits” under the date pickers.

I have added a selector to switch between include active visits and exclude active visits from the report. Actually we need to deal only with the endDate property to include and exclude the active visits (Active visits doesn’t have the end date property until the end). So I have added a condition to the SQL statement as follows,

...... v.date_started >= :startDate AND (v.date_stopped <= :endDate OR True= :activeVisits)

  • If activeVisits is true, then It will not consider the endDate (Active visits will be included into the reports)
  • If activeVisits is false, then it will consider the results of endDate (Active visits will be excluded from the reports)

I’d change the end date selector to use 11:59 PM instead of 12:00 AM by default.

By the default, We only deal with the Date in the module. It will automatically consider the date format of the DateTime for the selection here. So I configured the date time picker to send the end date with an extra day. So If the user selects “2018-07-04”, then it will be considered as “2018-07-05” for the report selection.

Please let me know, if there are any changes required in the above methods.

Thanks.


(Jeyasumangala Rasanayagam) #34

Hi @raff

I have completed the following tickets and sent the PRs. Please review these following PRs, when you have enough time.

  1. RA-1508 : Create Number of Visits with visit type for given location and date report

  2. BIR-9 : Improve Number of Visits with visit type for given location and date report

Please have a look at these attached screen shots of the updated report.

Without Active Visits

With Active Visits

Please let me know, if there are any chances required to improve the Number of Visits report.


Here after, I am going to work on this following task for Visit Notes Report.

Number of visits notes views should have to changed in way to provide more information to the user(come up with your own ideas to visualize data)

Thanks.


(Jeyasumangala Rasanayagam) #35

Hi @raff

I have added some improvements to the Visit Notes report. New improvements are,

  • User can get the total Number of visit notes grouped by visit types.
  • Users should able to get the visit notes report for all locations or a given location.
  • Bar chart added into the bottom of the report as usual.
  • Users can include and exclude the active visits in the visit notes report
  • Changed the end Date selection to support current day end. So users can get the reports up to current day end including active visits

I have completed the following tickets and sent the PRs. Please review these following PRs, when you have enough time.

  1. RA-1509 : Create Number of Visit Notes with visit type for given location and date report (PR : https://github.com/openmrs/openmrs-module-referencemetadata/pull/36)

  2. BIR-10 : Improve Number of Visit Notes with visit type for given location and date report (https://github.com/openmrs/openmrs-owa-builtinreports/pull/10)

I have added some screen shots of the improvements here,

Before without improvements

After including improvements


Please let me know, if there are any chances required to improve the Number of Visit Notes report.

Thanks.


(Jeyasumangala Rasanayagam) #36

Hi @raff

I have already started to work on the following task,

List of Providers, once the user clicks on a row in the table, user should be able to see more detailed page about the provider. (Who created this provider? Which unit this provider is being assigned to work? Top 10 patients who was recently worked with this provider.)

This is similar to the Diagnosis report improvements which I done at very first time. So I thought to follow those conventions and elements to improve the List of Providers report also. These are the new elements which will be added into this report,

  1. Provider Information in the header
  2. Which unit this provider is being assigned to work
  3. Top 10 patient information who was recently worked with this provider
  4. Usual bar chart in the bottom of the report (Count of patients vs date)

I have attached my mid term video presentation for the project here,

Thanks.


(Jeyasumangala Rasanayagam) #37

Hi @raff

I have completed the list of providers report improvements. Could you please make this following ticket to ready for work? Then I can send the PR to the repository.

Thanks.


(Jeyasumangala Rasanayagam) #38

I need to change the reportUuid for each time to get the refreshed report since it was cached by the system. So how can we ensure that the user will get the updated reports using the same report uuid?

@raff Do we need to update the report Uuid with each updates of this module?


(Jeyasumangala Rasanayagam) #39

Hi @raff

I have completed this task and updated the PR for your review.

List of Providers, once the user clicks on a row in the table, user should be able to see more detailed page about the provider. (Who created this provider? Which unit this provider is being assigned to work? Top 10 patients who was recently worked with this provider.)

  1. Provider Information in the header (Full name, role, and when created)
  2. Top 10 patient information who was recently worked with this provider
  3. Link to the patient dashboard from the patient list (Just need to click the row to goto the patient dashboard)
  4. Usual bar chart in the bottom of the report (Count of patients vs date)

Please review these following PRs,

  • RA-1514 : Create List of Patients Reprot who worked with given Provider
  • BIR-11 : Improve the List of Providers Report in the Built-in-Reports module

These are some of the screen shots of the improvements,

Thanks.


(Jeyasumangala Rasanayagam) #40

Hi @raff

As you suggested here,

I have worked to add these following changes to the Number of Admissions Report,

  • Removed the location selector from the report
  • Added Total Count to the bottom of the table.

Please see the attach screen shot,

Please review this PR :

Thanks.


Improved Built-In Reports module - Mid Term Presentation - GSoC 2018