serenity-health / roadmap

Public roadmap for development of Serenity's apps reported by our community of users
0 stars 1 forks source link

feature/save diagnostic report turnaround time #98

Closed chris-dare closed 2 years ago

chris-dare commented 2 years ago

Tell us about your request! To aid in reporting, we'd like to save the diagnostic report turnaround time (instead of computing it on the fly) Turnaround time (TAT) is the amount of time taken to complete a process or fulfill a request. The definition of diagnostic TAT is subjective and has different perspectives:

  1. For a patient, this will likely be the delta between confirmation of a service request via payment and availability of approved diagnostic report We will call this the billing_turnaround_time
  2. For a clinician, this will be the delta between the creation of the service request and availability of approved diagnostic report. We will call this the total_turnaround_time
  3. For a lab technician, this will be the delta between the time of specimen collection and availability of approved diagnostic report. We will call this the intra_laboratory_turnaround_time

Which app does this concern? Provider portal

What will be benefit of this feature? Diagnostics team can measure and improve their service delivery

Describe the solution you'd like Compute and save each turnaround time on the approval of diagnostic report. (TAT should be saved on the diagnostic report since a service request may yield multiple diagnostic reports) Save the turnaround time in minutes rounded to 2 dp

Describe alternatives you've considered

Additional context Did some reading on medical papers from NIH in addition to asking the NMC diagnostic and medical product champions:

Other reads:

chris-dare commented 2 years ago

@DanielDarko12 please share your thoughts on this

chris-dare commented 2 years ago

Hi @TuyizereBapt,

The computations for turnaround times will take place in DiagnosticReport.approve before the instance is saved

chris-dare commented 2 years ago

Hi @TuyizereBapt,

Diagnostics.models.Specimen contains the dates of collection a sample. Multiple samples can be collected for the same service request and so what you want to use is the earliest time for a given set of specimen related to the diagnostics.models.DiagnosticReport.based_on