One of the requests that we have received is to put together a patient Summary sheet which aggregates data from multiple encounter types, plus some computations
I am wondering the most efficient approach to do this
Custom Controller and Quert to put together the data (I feel the pain already)
REST end-point to pull together the data, painful to as I need to make multiple requests to get the different data sets - like what is used for the Patient Widgets
FHIR - can this be a patient bundle? What is the easiest way to pull this together
@ssmusoke those are mainly Observations and a Patient Resource as well. By default, the current Implementation can offer bundles but not in a way you would have different resource types.
From what I see, two different resource types are defiantly needed. That is the Patient resource and the Bundle of Observation. These can be queried using the FHIR rest services of the FHIR2 Module.
@ssmusoke The patient summary is something that has been addressed with OpenMRS FHIR module following the FHIR profile of an IPS (international patient summary). @ibacher and @pmanko can give you all the details on that, including it being in production in an HIE and SHR in Haiti for continuity of care across facilities. It would be great to have you join the FHIR squad calls to make sure any gaps you see with that could be addressed for the global good.
We leverage the https://github.com/GoogleCloudPlatform/openmrs-fhir-analytics project - and specifically the bulk and debezium-based streaming pipeline - to load resources into a hapi-based Shared Health Record (https://github.com/I-TECH-UW/shared-health-record). We also use the OpenCR project for our client registry to manage patient identity. The SHR is then queried by iSantePlus to grab the data required to render a Continuity of Care Document to the user.
The SHR implementation has basic support for rendering an IPS bundle, and I need to look in to the support for IGs that Hapi provides, since you are now able to load IPS as part of the configuration:
@ssmusoke were you able to figure this out? I believe @pmanko and @ccwhite23 were able to parse the IPS in iSantePlus, but I’m not sure if that’s more custom or not.