Skip to content
This repository was archived by the owner on May 5, 2021. It is now read-only.

Commit 178680a

Browse files
committed
Merge branch 'development' of https://github.com/hzi-braunschweig/SORMAS-Project into feature-3116-add-cluster-screening-events
2 parents 59995fd + 3fda56a commit 178680a

147 files changed

Lines changed: 1670 additions & 195 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

CONTRIBUTING.md

Lines changed: 22 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -79,19 +79,36 @@ If you're interested in participating in the development of SORMAS, you can use
7979
> #61 - added model to define classification, apply automatic case classification whenever a field value changes
8080
6. Each pull request should be related to a single issue (if possible).
8181

82-
### SORMAS Sprint Board
82+
### SORMAS Product Backlog
8383

84-
The SORMAS sprint board is segmented into the following categories:
84+
The board **Product Backlog** is used to plan, refine and prioritize the tickets for the upcoming sprints.
85+
The sorting from top to bottom in every column reflects the priority for the product. The Product Owner is responsible to put tickets into the Backlog and keep the ticket information updated.
8586

86-
* **Backlog:** Issues that have been selected to be done in the current sprint, but for which work has not yet started.
87+
The Product Backlog contains the following columns:
88+
* **Backlog:** Issues that have been identified by the Product Owner to be done in the next sprints. There can be a column for each Scrum Team if it fits the need.
89+
* **Sprint n:** Contain tickets picked by the Product Owner to be done in the named sprint. Text notes or separate columns are used to separate issues between Scrum Teams. It gives a forecast what might come in the upcoming sprint and it is the starting point for the Sprint Planning. Every ticket the Development Team do not pick into their Sprint Backlog needs to be moved back to the Backlog column or one sprint further.
90+
* **Done:** Tickets that are closed (usually resolved within the running sprint) are moved here **automatically**. The sorting does not represent the priority here any more.
91+
92+
93+
### SORMAS Sprint Backlog
94+
95+
The board **Sprint Backlog** exists for each Scrum Team and is segmented into the following categories:
96+
97+
* **Backlog:** Issues that have been selected by the Development Team to be done in the current sprint, but for which work has not yet started. The sorting top to bottom on this column reflects the priority given by the Product Owner at the time of the Sprint Planning.
8798
* **In Progress:** Issues that have been assigned to a contributor and for which work has started.
8899
* **Waiting:** Issues for which work has started and that have been put on hold, e.g. because action or feedback by an external contributor is required.
89100
* **Review:** Issues that have been resolved, but not been reviewed by another contributor yet. The ticket status is usually **Open**, but **Closed** is also allowed if no code change or merge is needed.
101+
* **Testing:** Issues that have been reviewed and merged to **development** branch to be tested and verified on a central TEST instance. The ticket status is supposed to be **Closed**.
90102
* **Done:** Issues that have been resolved, reviewed and satisfy the Definition of Done. The ticket status is supposed to be **Closed**.
91103

92-
The general workflow is that whenever a contributor starts working on an issue, they **assign** themselves to it and manually **move the issue** from **Backlog** to **In Progress**.
104+
The general workflow is that whenever a contributor starts working on an issue, they **assign** themselves to it and manually **move the issue** from **Backlog** to **In Progress**.
105+
Transitions to **Waiting** and **Review** also need to be done manually. When the developer is done with all work (no code changes or merges needed, milestone is set), the ticket is supposed to be closed to go automatically to **Testing**.
106+
Approved tickets are supposed to be moved manually from **Testing** to **Done*.
107+
108+
The GitHub project has been configured to **automatically** move issues that are closed to **Testing** and issues that are reopened back to **In Progress**.
109+
110+
The Development Team is responsible to keep the tickets up to date on this board and to assign the appropriate milestone in which the work is going to be released.
93111

94-
The GitHub project has been configured to **automatically** move issues that are closed to **Done** and issues that are reopened back to **In Progress**.
95112

96113
### Eclipse Troubleshooting
97114

SERVER_CUSTOMIZATION.md

Lines changed: 23 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -58,16 +58,28 @@ SORMAS supports a wide range of diseases, and not all of those might be relevant
5858

5959
Right now, changing these variables unfortunately is not possible from within the user interface, but requires **direct database access**. If you have this access, you can edit the entries in the *diseaseconfiguration* table according to your needs.
6060

61-
**IMPORTANT:** Whenever you edit an entry in this table, you also need to manually set the *changedate* to the current date and time. This is required in order for the mobile app to synchronize the changes and use the edited disease configuration.
61+
**VERY IMPORTANT:** Whenever you edit an entry in this table, you also need to manually set the *changedate* to the current date and time. This is required in order for the mobile app to synchronize the changes and use the edited disease configuration.
6262

6363
## Feature Configuration
64-
Some of the features in SORMAS can be enabled or disabled for the system.
65-
Examples for this are aggregated reporting, event surveillance, national case sharing and more.
66-
67-
Right now, changing these variables unfortunately is not possible from within the user interface, but requires **direct database access**. If you have this access, you can edit the entries in the *featureconfiguration* table.
68-
69-
* There will be an entry in the database table for each feature that is available in SORMAS
70-
* Set the "enabled" value of the feature to true or false to enable or disable it
71-
* The region, district, disease and enddate columns are currently only appicable for the line listing feature. The line listing feature is the only feature that can currently be configured using the UI.
72-
73-
**IMPORTANT:** Whenever you edit an entry in this table, you also need to manually set the *changedate* to the current date and time. This is required in order for the mobile app to synchronize the changes and use the edited disease configuration.
64+
Some of the features in SORMAS can be enabled or disabled to further customize the system. Right now, changing these variables unfortunately is not possible from within the user interface, but requires **direct database access**. If you have this access, you can edit the entries in the *featureconfiguration* table. There is one entry for every configurable feature in this table, and you can set the value of the *enabled* column to *true* to enable it and *false* to disable it. The *region*, *district*, *disease* and *enddate* columns are currently only applicable for the line listing feature and define the scope in which line listing is used. Line listing is configurable from within the UI and does not need to be manually edited in the database.
65+
66+
**VERY IMPORTANT:** Whenever you edit an entry in this table, you also need to manually set the *changedate* to the current date and time. This is required in order for the mobile app to synchronize the changes and use the edited feature configuration.
67+
68+
The following features are currently configurable:
69+
70+
* **Case Surveillance** *(CASE_SURVEILANCE)*: The core module of SORMAS which allows the creation and management of suspect or confirmed disease cases.
71+
* **Contact Tracing** *(CONTACT_TRACING)*: Management and follow-up of contacts of disease cases.
72+
* **Sample Management** *(SAMPLES_LAB)*: Management of samples for cases, contacts or event participants and the documentation of pathogen tests performed on these samples.
73+
* **Event Surveillance** *(EVENT_SURVEILLANCE)*: Creating and managing events and event participants to identify potential outbreaks or disease hotspots.
74+
* **Aggregate Reporting** *(AGGREGATE_REPORTING)*: Allows collecting case numbers for a number of additional diseases for which case-based surveillance is not used. Commonly referred to as mSers in African countries.
75+
* **Weekly Reporting** *(WEEKLY_REPORTING)*: Allows mobile users to confirm the number of cases they have collected on a weekly basis and web users to see an overview of whether or not mobile users have submitted their reports and how many cases they have reported.
76+
* **Clinical Management** *(CLINICAL_MANAGEMENT)*: Enables the clinical management module of cases that allow collecting prescriptions and treatments as well as doctor's visits in a clinical context.
77+
* **National Case Sharing** *(NATIONAL_CASE_SHARING)*: Allows users with the respective rights to make cases available to the whole country, i.e. other users will see these cases even if they don't belong to their jurisdiction.
78+
* **Task Generation (Case Surveillance)** *(TASK_GENERATION_CASE_SURVEILLANCE)*: Enables or disables the automatic generation of tasks associated with case surveillance, especially the *Case Investigation* tasks that are usually generated when creating a new case.
79+
* **Task Generation (Contact Tracing)** *(TASK_GENERATION_CONTACT_TRACING)*: Enables or disables the automatic generation of tasks associated with contact tracing, especially the *Contact Investigation* tasks that are usually generated when creating a new contact and the *Contact Follow-Up* tasks that are created once a day for every contact that is under follow-up.
80+
* **Task Generation (Event Surveillance)** *(TASK_GENERATION_EVENT_SURVEILLANCE)*: Enables or disables the automatic generation of tasks associated with event surveillance.
81+
* **Task Generation (General)** *(TASK_GENERATION_GENERAL)*: Enables or disables the automatic generation of tasks that aren't directly associated with one of the three other task types described above, e.g. the *Weekly Report Generation* task that asks mobile users to submit their weekly reports.
82+
* **Campaigns** *(CAMPAIGNS)*: The campaigns module allows collecting flexible data which can be customized using the JSON format. Currently this is heavily geared towards vaccination campaigns in Afghanistan, but will be usable in a more generic way in the future for other countries as well.
83+
* **Area Infrastructure** *(INFRASTRUCTURE_TYPE_AREA)*: Enables an additional infrastructure level above region that is called area by default. Currently only used in the campaigns module.
84+
* **Case Follow-Up** *(CASE_FOLLOWUP)*: Enables the contact follow-up module for cases as well to allow a more detailed daily documentation of symptoms.
85+
* **Line Listing** *(LINE_LISTING)*: Whether or not using line listing for case entry is enabled in the specified jurisdiction for the specified disease. Configurable from the UI, no database interaction needed.

sormas-api/src/main/resources/captions_de-CH.properties

Lines changed: 30 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,7 @@ inaccessibleValue=Vertraulich
5252
numberOfCharacters=Anzahl der Zeichen\: %d / %d
5353
facility=Einrichtung
5454
pointOfEntry=Einreiseort
55+
remove=Remove
5556

5657
# About
5758
aboutSormasVersion=SORMAS-Version
@@ -195,6 +196,13 @@ campaignCampaignData=Kampagnendaten
195196
campaignCampaignDataForm=Datenformular
196197
campaignCampaignForm=Formular
197198
campaignValidateForms=Formulare validieren
199+
campaignAdditionalForm=Add form
200+
campaignAdditionalChart=Add chart
201+
campaignDashboardChart=Campaign data chart
202+
campaignDashboardTabName=Tab name
203+
campaignDashboardChartWidth=Width in %
204+
campaignDashboardChartHeight=Height in %
205+
campaignDashboardOrder=Order
198206

199207
Campaign=Kampagne
200208
Campaign.name=Name
@@ -346,8 +354,8 @@ CaseData.quarantineOrderedOfficialDocument=Isolation per Mail/ per Brief angeord
346354
CaseData.quarantineOrderedOfficialDocumentDate=Datum der schriftlichen Anordnung zur Isolation
347355
CaseData.quarantineExtended=Isolation verlängert?
348356
CaseData.quarantineReduced=Isolation Zeitraum verkürzt?
349-
CaseData.quarantineOfficialOrderSent=Offizielle Isolationsanordnung gesendet?
350-
CaseData.quarantineOfficialOrderSentDate=Versanddatum der offiziellen Isolationsanordnung
357+
CaseData.quarantineOfficialOrderSent=Verfügung verschickt?
358+
CaseData.quarantineOfficialOrderSentDate=Verfügung verschickt am
351359
CaseData.healthFacilityName=Gesundheitseinrichtung
352360
CaseData.followUpComment=Kommentar zum Stand der Nachverfolgung
353361
CaseData.followUpStatus=Stand der Nachverfolgung
@@ -372,7 +380,7 @@ CaseData.endOfIsolationReasonDetails=Anderer Grund
372380
CaseExport.address=Adresse
373381
CaseExport.addressRegion=Adresse Kanton
374382
CaseExport.addressDistrict=Adresse Bezirk
375-
CaseExport.addressCommunity=Address Community
383+
CaseExport.addressCommunity=Adresse Gemeinde
376384
CaseExport.addressGpsCoordinates=GPS-Koordinaten der Adresse
377385
CaseExport.admittedToHealthFacility=Stationär aufgenommen?
378386
CaseExport.associatedWithOutbreak=Verbunden mit dem Ausbruch?
@@ -583,16 +591,16 @@ Contact.quarantineOrderedOfficialDocument=Quarantäne per Mail/ per Brief angeor
583591
Contact.quarantineOrderedOfficialDocumentDate=Datum der schriftlichen Anordnung zur Quarantäne
584592
Contact.quarantineExtended=Quarantänedauer verlängert?
585593
Contact.quarantineReduced=Quarantänezeitraum verkürzt?
586-
Contact.quarantineOfficialOrderSent=Offizielle Isolationsanordnung gesendet?
587-
Contact.quarantineOfficialOrderSentDate=Versanddatum der offiziellen Isolationsanordnung
594+
Contact.quarantineOfficialOrderSent=Verfügung verschickt?
595+
Contact.quarantineOfficialOrderSentDate=Verfügung verschickt am
588596
Contact.endOfQuarantineReason=Grund des Ende der Quarantäne
589597
Contact.endOfQuarantineReasonDetails=Anderer Grund
590598

591599
# ContactExport
592600
ContactExport.address=Adresse
593601
ContactExport.addressDistrict=Adresse Bezirk
594602
ContactExport.addressRegion=Adresse Kanton
595-
ContactExport.addressCommunity=Address Community
603+
ContactExport.addressCommunity=Adresse Gemeinde
596604
ContactExport.burialAttended=An Bestattung teilgenommen
597605
ContactExport.contactWithRodent=Kontakt mit Nagetieren?
598606
ContactExport.directContactConfirmedCase=Direkter Kontakt mit einem bestätigten Fall
@@ -605,8 +613,6 @@ ContactExport.lastName=Nachname der Kontaktperson
605613
ContactExport.sourceCaseUuid=Indexfall-ID
606614
ContactExport.traveled=Gereist - außerhalb des Bezirks
607615
ContactExport.travelHistory=Reiseverlauf
608-
Contact.endOfQuarantineReason=Grund des Ende der Quarantäne
609-
Contact.endOfQuarantineReasonDetails=Anderer Grund
610616

611617
# Dashboard
612618
dashboardAlive=Lebendig
@@ -964,7 +970,7 @@ EventParticipantExport.eventHouseNumber=Ereignis-Hausnummer
964970
EventParticipantExport.ageGroup=Altersgruppe
965971
EventParticipantExport.addressRegion=Adresse Kanton
966972
EventParticipantExport.addressDistrict=Adresse Bezirk
967-
EventParticipantExport.addressCommunity=Address Community
973+
EventParticipantExport.addressCommunity=Adresse Gemeinde
968974
EventParticipantExport.addressGpsCoordinates=GPS-Koordinaten der Adresse
969975
EventParticipantExport.burialInfo=Beerdigung der Person
970976
EventParticipantExport.sampleInformation=Information zur Probe
@@ -1485,6 +1491,7 @@ statisticsDataDisplayed=Angezeigte Daten
14851491
symptomsLesionsLocations=Lokalisierung der Läsionen
14861492
symptomsMaxTemperature=Maximale Körpertemperatur in ° C
14871493
symptomsSetClearedToNo=Auf Nein setzen
1494+
symptomsSetClearedToUnknown="Gelöscht" auf "unbekannt" setzen
14881495

14891496
Symptoms=Symptome
14901497
Symptoms.abdominalPain=Bauchschmerzen
@@ -1883,17 +1890,17 @@ WeeklyReportRegionSummary.officerZeroReports=Anzahl der Beauftragten-Null-Berich
18831890
# SORMAS to SORMAS
18841891
SormasToSormasOptions.organization=Betrieb
18851892
SormasToSormasOptions.withAssociatedContacts=Verknüpfte Kontakte teilen
1886-
SormasToSormasOptions.handOverOwnership=Hand over the ownership
1887-
SormasToSormasOptions.pseudonymizePersonalData=Pseudonymize personal data
1888-
SormasToSormasOptions.pseudonymizeSensitiveData=Pseudonymize sensitive data
1889-
SormasToSormasOptions.comment=Comment
1890-
sormasToSormasDialogTitle=Share with health department
1891-
sormasToSormasErrorDialogTitle=Error while sharing with another health department
1892-
sormasToSormasListTitle=Share
1893-
sormasToSormasShare=Share
1894-
sormasToSormasCaseNotShared=This case is not shared
1895-
sormasToSormasContactNotShared=This contact is not shared
1896-
sormasToSormasSharedWith=Shared with
1897-
sormasToSormasSharedBy=By
1898-
sormasToSormasSharedDate=On
1899-
sormasToSormasSentFrom=Sent from
1893+
SormasToSormasOptions.handOverOwnership=Übergabe des Eigentums
1894+
SormasToSormasOptions.pseudonymizePersonalData=Persönliche Daten pseudonymisieren
1895+
SormasToSormasOptions.pseudonymizeSensitiveData=Sensible Daten pseudonymisieren
1896+
SormasToSormasOptions.comment=Kommentar
1897+
sormasToSormasDialogTitle=Mit Gesundheitsamt teilen
1898+
sormasToSormasErrorDialogTitle=Fehler beim Teilen mit einem anderem Gesundheitsamt
1899+
sormasToSormasListTitle=Teilen
1900+
sormasToSormasShare=Teilen
1901+
sormasToSormasCaseNotShared=Dieser Fall ist nicht geteilt
1902+
sormasToSormasContactNotShared=Dieser Kontakt ist nicht geteilt
1903+
sormasToSormasSharedWith=Geteilt mit
1904+
sormasToSormasSharedBy=Von
1905+
sormasToSormasSharedDate=Am
1906+
sormasToSormasSentFrom=Gesendet von

sormas-api/src/main/resources/captions_de-DE.properties

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,7 @@ inaccessibleValue=Vertraulich
5252
numberOfCharacters=Anzahl der Zeichen\: %d / %d
5353
facility=Einrichtung
5454
pointOfEntry=Einreiseort
55+
remove=Entfernen
5556

5657
# About
5758
aboutSormasVersion=SORMAS-Version
@@ -195,6 +196,13 @@ campaignCampaignData=Kampagnendaten
195196
campaignCampaignDataForm=Datenformular
196197
campaignCampaignForm=Formular
197198
campaignValidateForms=Formulare validieren
199+
campaignAdditionalForm=Formular hinzufügen
200+
campaignAdditionalChart=Diagramm hinzufügen
201+
campaignDashboardChart=Kampagnendaten Diagramm
202+
campaignDashboardTabName=Name des Reiters
203+
campaignDashboardChartWidth=Breite in %
204+
campaignDashboardChartHeight=Höhe in %
205+
campaignDashboardOrder=Verfügung
198206

199207
Campaign=Kampagne
200208
Campaign.name=Name
@@ -1483,6 +1491,7 @@ statisticsDataDisplayed=Angezeigte Daten
14831491
symptomsLesionsLocations=Lokalisierung der Läsionen
14841492
symptomsMaxTemperature=Maximale Körpertemperatur in ° C
14851493
symptomsSetClearedToNo=Auf Nein setzen
1494+
symptomsSetClearedToUnknown=Freigegeben auf unbekannt setzen
14861495

14871496
Symptoms=Symptome
14881497
Symptoms.abdominalPain=Abdominalschmerzen

sormas-api/src/main/resources/captions_en-AF.properties

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,7 @@ inaccessibleValue=Confidential
5252
numberOfCharacters=Number of characters\: %d / %d
5353
facility=Facility
5454
pointOfEntry=Point of entry
55+
remove=Remove
5556

5657
# About
5758
aboutSormasVersion=SORMAS Version
@@ -195,6 +196,13 @@ campaignCampaignData=Campaign Data
195196
campaignCampaignDataForm=Data Form
196197
campaignCampaignForm=Form
197198
campaignValidateForms=Validate Forms
199+
campaignAdditionalForm=Add form
200+
campaignAdditionalChart=Add chart
201+
campaignDashboardChart=Campaign data chart
202+
campaignDashboardTabName=Tab name
203+
campaignDashboardChartWidth=Width in %
204+
campaignDashboardChartHeight=Height in %
205+
campaignDashboardOrder=Order
198206

199207
Campaign=Campaign
200208
Campaign.name=Name
@@ -1483,6 +1491,7 @@ statisticsDataDisplayed=Data displayed
14831491
symptomsLesionsLocations=Localization of the lesions
14841492
symptomsMaxTemperature=Maximum body temperature in ° C
14851493
symptomsSetClearedToNo=Set cleared to No
1494+
symptomsSetClearedToUnknown=Set cleared to Unknown
14861495

14871496
Symptoms=Symptoms
14881497
Symptoms.abdominalPain=Abdominal pain

sormas-api/src/main/resources/captions_es-CU.properties

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,7 @@ inaccessibleValue=Confidencial
5252
numberOfCharacters=Número de caracteres\: %d / %d
5353
facility=Centro
5454
pointOfEntry=Punto de entrada
55+
remove=Remove
5556

5657
# About
5758
aboutSormasVersion=Versión de SORMAS
@@ -195,6 +196,13 @@ campaignCampaignData=Datos de campaña
195196
campaignCampaignDataForm=Formulario de datos
196197
campaignCampaignForm=Formulario
197198
campaignValidateForms=Validar formularios
199+
campaignAdditionalForm=Add form
200+
campaignAdditionalChart=Add chart
201+
campaignDashboardChart=Campaign data chart
202+
campaignDashboardTabName=Tab name
203+
campaignDashboardChartWidth=Width in %
204+
campaignDashboardChartHeight=Height in %
205+
campaignDashboardOrder=Order
198206

199207
Campaign=Campaña
200208
Campaign.name=Nombre
@@ -1483,6 +1491,7 @@ statisticsDataDisplayed=Datos mostrados
14831491
symptomsLesionsLocations=Localización de las lesiones
14841492
symptomsMaxTemperature=Temperatura corporal máxima en °C
14851493
symptomsSetClearedToNo=Marcar limpios como No
1494+
symptomsSetClearedToUnknown=Set cleared to Unknown
14861495

14871496
Symptoms=Síntomas
14881497
Symptoms.abdominalPain=Dolor abdominal

0 commit comments

Comments
 (0)