Skip to content

Commit 3ee183b

Browse files
committed
Fixes issue where database export was failing
1 parent ac0e072 commit 3ee183b

2 files changed

Lines changed: 10 additions & 8 deletions

File tree

sormas-backend/src/main/java/de/symeda/sormas/backend/importexport/DatabaseExportService.java

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -42,9 +42,11 @@
4242

4343
import de.symeda.sormas.api.feature.FeatureConfigurationDto;
4444
import de.symeda.sormas.api.importexport.DatabaseTable;
45-
import de.symeda.sormas.api.therapy.Drug;
4645
import de.symeda.sormas.backend.action.Action;
4746
import de.symeda.sormas.backend.activityascase.ActivityAsCase;
47+
import de.symeda.sormas.backend.adverseeventsfollowingimmunization.entity.AdverseEvents;
48+
import de.symeda.sormas.backend.adverseeventsfollowingimmunization.entity.Aefi;
49+
import de.symeda.sormas.backend.adverseeventsfollowingimmunization.entity.AefiInvestigation;
4850
import de.symeda.sormas.backend.campaign.Campaign;
4951
import de.symeda.sormas.backend.campaign.data.CampaignFormData;
5052
import de.symeda.sormas.backend.campaign.diagram.CampaignDiagramDefinition;
@@ -119,15 +121,16 @@
119121

120122
/**
121123
* Exporting data directly from the PostgreSQL database with COPY commands as .csv files.
122-
*
124+
*
123125
* @author Stefan Kock
124126
*/
125127
@Stateless
126128
@LocalBean
127129
public class DatabaseExportService {
128130

129131
private static final String COPY_SINGLE_TABLE = "COPY (SELECT * FROM %s) TO STDOUT WITH (FORMAT CSV, DELIMITER '%s', HEADER)";
130-
public static final String COUNT_TABLE_COLUMNS = "SELECT COUNT(column_name) FROM information_schema.columns WHERE table_name=:tableName";
132+
public static final String COUNT_TABLE_COLUMNS =
133+
"SELECT COUNT(column_name) FROM information_schema.columns WHERE table_name=CAST(:tableName AS text)";
131134

132135
static final Map<DatabaseTable, String> EXPORT_CONFIGS = new LinkedHashMap<>();
133136

@@ -159,6 +162,9 @@ public class DatabaseExportService {
159162
EXPORT_CONFIGS.put(DatabaseTable.TRAVEL_ENTRIES, TravelEntry.TABLE_NAME);
160163
EXPORT_CONFIGS.put(DatabaseTable.IMMUNIZATIONS, Immunization.TABLE_NAME);
161164
EXPORT_CONFIGS.put(DatabaseTable.VACCINATIONS, Vaccination.TABLE_NAME);
165+
EXPORT_CONFIGS.put(DatabaseTable.ADVERSE_EVENTS_FOLLOWING_IMMUNIZATIONS, Aefi.TABLE_NAME);
166+
EXPORT_CONFIGS.put(DatabaseTable.ADVERSE_EVENTS_FOLLOWING_IMMUNIZATION_INVESTIGATIONS, AefiInvestigation.TABLE_NAME);
167+
EXPORT_CONFIGS.put(DatabaseTable.ADVERSE_EVENTS, AdverseEvents.TABLE_NAME);
162168
EXPORT_CONFIGS.put(DatabaseTable.SAMPLES, Sample.TABLE_NAME);
163169
EXPORT_CONFIGS.put(DatabaseTable.PATHOGEN_TESTS, PathogenTest.TABLE_NAME);
164170
EXPORT_CONFIGS.put(DatabaseTable.ADDITIONAL_TESTS, AdditionalTest.TABLE_NAME);
@@ -280,7 +286,7 @@ private void addDataRows(DatabaseTable databaseTable, String tableName, Writer w
280286

281287
/**
282288
* Run an export command and write the result directly into a Writer
283-
*
289+
*
284290
* @param writer
285291
* @param sql
286292
* Actual native sql command to copy data to CSV.

sormas-backend/src/test/java/de/symeda/sormas/backend/importexport/DatabaseExportServiceTest.java

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@
2323
import com.tngtech.archunit.core.importer.ClassFileImporter;
2424

2525
import de.symeda.sormas.api.importexport.DatabaseTable;
26-
import de.symeda.sormas.backend.adverseeventsfollowingimmunization.entity.AdverseEvents;
2726
import de.symeda.sormas.backend.adverseeventsfollowingimmunization.entity.Aefi;
2827
import de.symeda.sormas.backend.adverseeventsfollowingimmunization.entity.AefiInvestigation;
2928
import de.symeda.sormas.backend.docgeneration.DocumentTemplate;
@@ -75,9 +74,6 @@ public void testGetConfigFullyDefined() {
7574
Environment.class,
7675
EnvironmentSample.class,
7776
SelfReport.class,
78-
Aefi.class,
79-
AdverseEvents.class,
80-
AefiInvestigation.class,
8177
DocumentTemplate.class,
8278
Survey.class,
8379
SurveyToken.class,

0 commit comments

Comments
 (0)