SORMAS-Foundation / SORMAS-Project

SORMAS (Surveillance, Outbreak Response Management and Analysis System) is an early warning and management system to fight the spread of infectious diseases.
https://sormas.org
GNU General Public License v3.0
292 stars 140 forks source link

Covid-19 Lab Certification / City of Oberhausen/Germany #5318

Open rrz-dev opened 3 years ago

rrz-dev commented 3 years ago

Situation Description

The city of Oberhausen wants to use SORMAS for tracking and planning of Covid-19 cases and laboratory tests.

The city of Oberhausen Fire Department is planning Covid-19 testing at utility facilities. A lab order must be generated for the sample to be tested. This should be generated with Sormas and the necessary information should be stored in the task so that it can be easily processed.

We would appreciate the opportunity to discuss these requirements with a project manager (preferably in German). First attempts to contact the SORMAS team at the start of development via EMail were unfortunately rejected due to lack of time.

Feature Description

We extended the task form and data structure with all necessary fields for lab certification generation. We added a new action to the form to create a PDF form, that is printable by the user. We extended the task list with some new quick filters and mass editing actions.

As the features and data is only usefull in germany, all new fields are limited to germany.

Additional Information

The city of Oberhausen has commissioned Aleri Solutions GmbH with the implementation. The feature has already been developed and the resulting code is to be submitted to the open source repository. This feature can be used by various other cities in germany, as they have similar requirements.

MateStrysewske commented 3 years ago

@JaquM @kwa20 Can you suggest how to move forward with this issue? We'd basically need a functional confirmation before we could merge this into the development branch. I guess it would probably be necessary for @rrz-dev to very specifically list the development specifications here (i.e. which exact fields are added where, what is added to the UI where, etc.) for you to evaluate that, right?

@rrz-dev Concerning the technical approach - there are quite a lot of things I've seen in the PR where I don't agree with the approach. For example, since this seems to be an issue that is very specific to Germany, adding so many additional fields e.g. to the task is not really an option. We might need an individual entity for that instead. I'll go more into detail once the functional part of this issue has been discussed.

kwa20 commented 3 years ago

@MateStrysewske @rrz-dev Yes, a detailed specification would help a lot to evaluate what has been done.

Candice-Louw commented 3 years ago

@rrz-dev - do you have an update on delivering this document, please? You are welcome to contact me directly if it is easier.

rrz-dev commented 3 years ago

I'm looking forward to provide the information until tomorrow.

Candice-Louw commented 3 years ago

@rrz-dev - any update yet, please?

rrz-dev commented 3 years ago

These are the changes we added to SORMAS to meet the requirements of the city of Oberhausen:

The requirement is, that the employees of city of Oberhausen needs to generate and print "lab certificates" when planning "sample collection tasks". This print has to be send with the sample to the laboratory to identify it.

For this requirement we changed the Task detail view. We added all necessary edit fields for the "lab certificate" but only, when TaskType.SAMPLE_COLLECTION is selected.

Changed: Task detail view

This fields need to be saved to the database for generating and printing the "lab certificates" at a later time. For this we extended the TaskDto / Entity with all the needed fields.

Changed: TaskDto / Entity

The "lab certificate" is issued by a health department of a region. For this we created a new FacilityType "Health Department" to be able to add this to the SORMAS settings, make it selectable when creating a "lab certificate" and changed the FacilityEdit form to meet this requirement.

Changed: added new FacilityType "Health Department"

Changed: FacilityEdit form

Some more information was needed for the new health department facility, so we extended the FacilityDto / Entity to store this information in the database.

Changed: FacilityDto / Entity

For working with a bigger number of tasks we extended the task list with new actions and filters.

Changed: Task list / grid

To enable the new functions only to a specific user group we added the UserRole "Fire department".

Changed: UserRole

The generation of "lab certificates" is done by a newly added, external java dependency: "de.aleri.lab-certificate-generator". In this library all the pdf generation of "lab certificates" is encapsulated regarding to the german health department regulations.

marko-arn commented 3 years ago

@rrz-dev I think you referencing to that form: https://www.kbv.de/media/sp/Ansichtsexemplar_MusterOEGD.pdf

We are generating these forms every morning before our test teams are going to the test center or starting the tour to take samples at the home address of the cases/contacts.

For us it would not be needed to print the form at the desk of the inventigator for cases/contacts as the location of the test-team is in different building and we are having a lot of immidiatley tests every day. E.g. if a kid in school or kindergarden was testet by rapid test, we are making a PCR the same day.

Maybe this issue can solved by having the detailed export (#3792, #3106) together with serial printing within word?