@Zatoner_Dev, @ivange94 it is my pleasure to have you guys as my mentor for this summer. I have opened this topic for discussions, questions and suggestions related to my gsoc project: Integrating OHIF Viewer to new Radiology OWA. The main goals of this project is the development of a new OWA for LibreHealth Radiology and Integrating OHIF Viewer as a radiology image viewer.
@lehone can you make a list of the deliverables for your project here.
After looking at the user stories, I came up with a list of things that need to be done at the back-end:
- Edit RadiologyStudy.java by adding the following fields: patient, startDate, approvedDate, approvedBy, claimedDate, claimedBy, status(Draft, Preliminary or Finalized)
- Add REST endpoints to create, update, search, get and delete RadiologyStudy.
- Add PRELIMINARY as a status for RadiologyReport
For now, these are the changes required, based on the user stories. @judywawira, @Zatoner_Dev, @ivange94 I will like to know if there is something which I left out or something which isn’t suppose to be on the list?
Secondly, I will also like to know how I can get User’s privileges from the OWA via REST, in order to provide access control over certain operations like Approving a Study, Claiming a study etc.
My suggestion is not to lock yourself in the existing OpenMRS data model. I strongly suggest that you look at the Diagnostic Medicine FHIR Module. It has a workflow that describes the use of many radiology related REST resources. Creating new REST endpoints with a chatty, proprietary approach with limited interoperability Profiles is not a good direction.
I support @sunbiz on not locking yourself in existing OpenMRS model but go the fhir direction.
But I didn’t get this part
Okay, so are you suggesting that I create new Resources from scratch based on FHIR specifications?
Yes @lehone I would look at existing Radiology module I think @robby will have it up pretty soon and then go through every single function and determine where it’s getting it’s data from
You can also run the owa from Larry s attempt
Then identify what fhir endpoint you will need for that component - and once all complements are available we will compile them into the owa
okay @judywawira. Please, what is the difference between a Radiology Order and a Procedure Request? They seem to be similar and I don’t know their differences.
We will treat them as the same
Ok. Will be waiting to hear from you after you look at the Radiology module
No, please dont create new REST Resources. FHIR provides the REST resources that you need. You should think about creating services (microservices actually) that can take a FHIR ProcedureRequest (aka order) and transform it into a Modality Worklist (aka DICOM file) to be sent to a PACS like orthanc. You can create the microservice using this tutorial - https://spring.io/guides/gs/reactive-rest-service/
I meant that the OpenMRS REST services are chatty, and use proprietary payloads. This is another excellent tutorial for anyone who wants to create new RESTful services for non-FHIR things like making worklist - https://spring.io/guides/tutorials/react-and-spring-data-rest/
You will have a frontend component - specifically doing orders and a backend component
The backend component implements the DICOM workflow – So you would be working to implement a modality work list - We thought that you will need to create a new spring data app and during midterms we will merge it with what @yashdsaraf will have worked on
Thereafter you will do the UI component that integrates the OHIF and orthanc (this already exists and is the current module)-- once @r0bby completes setting up the demo servers i can point you to this workflow …
It’s up – the viewer is not…
need to show the whole system
radiology demo is up now
I tried with mysql and with simple CrudRepositories but could not store a Patient’s record because the pojo’s class wasn’t annotated as an Entity.
I also tried with Mondod and whith MondoRepository as documented in the spring gs guide but had this error while trying to save a Patients’s record
Caused by: org.springframework.dao.InvalidDataAccessApiUsageException: Cannot autogenerate id of type org.hl7.fhir.dstu3.model.IdType for entity of type org.hl7.fhir.dstu3.model.Patient!
My Patient Repository looks like this
I used the CommandLineRunner to create and save a patient
please any suggestions on how to go about saving the data will be helpful?