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

Commit 1880462

Browse files
SORMAS-Foundation#2993 add country to import/export methods
1 parent 116d2ab commit 1880462

17 files changed

Lines changed: 173 additions & 8 deletions

File tree

sormas-api/src/main/java/de/symeda/sormas/api/i18n/Captions.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1683,6 +1683,8 @@ public interface Captions {
16831683
String View_configuration_areas_short = "View.configuration.areas.short";
16841684
String View_configuration_communities = "View.configuration.communities";
16851685
String View_configuration_communities_short = "View.configuration.communities.short";
1686+
String View_configuration_countries = "View.configuration.countries";
1687+
String View_configuration_countries_short = "View.configuration.countries.short";
16861688
String View_configuration_devMode = "View.configuration.devMode";
16871689
String View_configuration_devMode_short = "View.configuration.devMode.short";
16881690
String View_configuration_districts = "View.configuration.districts";

sormas-api/src/main/java/de/symeda/sormas/api/i18n/Strings.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@ public interface Strings {
5151
String confirmationArchiveCommunities = "confirmationArchiveCommunities";
5252
String confirmationArchiveCommunity = "confirmationArchiveCommunity";
5353
String confirmationArchiveCountries = "confirmationArchiveCountries";
54+
String confirmationArchiveCountry = "confirmationArchiveCountry";
5455
String confirmationArchiveDistrict = "confirmationArchiveDistrict";
5556
String confirmationArchiveDistricts = "confirmationArchiveDistricts";
5657
String confirmationArchiveEvent = "confirmationArchiveEvent";
@@ -74,6 +75,7 @@ public interface Strings {
7475
String confirmationDearchiveCommunities = "confirmationDearchiveCommunities";
7576
String confirmationDearchiveCommunity = "confirmationDearchiveCommunity";
7677
String confirmationDearchiveCountries = "confirmationDearchiveCountries";
78+
String confirmationDearchiveCountry = "confirmationDearchiveCountry";
7779
String confirmationDearchiveDistrict = "confirmationDearchiveDistrict";
7880
String confirmationDearchiveDistricts = "confirmationDearchiveDistricts";
7981
String confirmationDearchiveEvent = "confirmationDearchiveEvent";
@@ -828,6 +830,8 @@ public interface Strings {
828830
String messageConvertEventParticipantToCaseDifferentDiseases = "messageConvertEventParticipantToCaseDifferentDiseases";
829831
String messageCopyPassword = "messageCopyPassword";
830832
String messageCountEventsNotDeleted = "messageCountEventsNotDeleted";
833+
String messageCountriesArchived = "messageCountriesArchived";
834+
String messageCountriesDearchived = "messageCountriesDearchived";
831835
String messageCountryArchived = "messageCountryArchived";
832836
String messageCountryDearchived = "messageCountryDearchived";
833837
String messageCreateCollectionTask = "messageCreateCollectionTask";

sormas-api/src/main/java/de/symeda/sormas/api/importexport/DatabaseTable.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,7 @@ public enum DatabaseTable {
4747
PERSONS(DatabaseTableType.SORMAS, null, "persons"),
4848
LOCATIONS(DatabaseTableType.SORMAS, null, "locations"),
4949
OUTBREAKS(DatabaseTableType.SORMAS, null, "outbreaks"),
50+
COUNTRIES(DatabaseTableType.INFRASTRUCTURE, null, "countries"),
5051
REGIONS(DatabaseTableType.INFRASTRUCTURE, null, "regions"),
5152
DISTRICTS(DatabaseTableType.INFRASTRUCTURE, null, "districts"),
5253
COMMUNITIES(DatabaseTableType.INFRASTRUCTURE, null, "communities"),

sormas-api/src/main/java/de/symeda/sormas/api/importexport/ImportFacade.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,8 @@ public interface ImportFacade {
6767

6868
String getAreaImportTemplateFilePath();
6969

70+
String getCountryImportTemplateFilePath();
71+
7072
String getRegionImportTemplateFilePath();
7173

7274
String getDistrictImportTemplateFilePath();

sormas-api/src/main/java/de/symeda/sormas/api/region/CountryFacade.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,18 +5,19 @@
55
import javax.ejb.Remote;
66

77
import de.symeda.sormas.api.utils.SortProperty;
8-
import de.symeda.sormas.api.utils.ValidationRuntimeException;
98

109
@Remote
1110
public interface CountryFacade {
1211

1312
CountryDto getCountryByUuid(String uuid);
1413

14+
List<CountryReferenceDto> getByName(String name, boolean includeArchivedEntities);
15+
1516
List<CountryDto> getIndexList(CountryCriteria criteria, Integer first, Integer max, List<SortProperty> sortProperties);
1617

1718
long count(CountryCriteria criteria);
1819

19-
void saveCountry(CountryDto dto) throws ValidationRuntimeException;
20+
void saveCountry(CountryDto dto);
2021

2122
void archive(String countryUuid);
2223

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
package de.symeda.sormas.api.region;
2+
3+
import de.symeda.sormas.api.ReferenceDto;
4+
import de.symeda.sormas.api.statistics.StatisticsGroupingKey;
5+
6+
public class CountryReferenceDto extends ReferenceDto implements StatisticsGroupingKey {
7+
8+
private static final long serialVersionUID = -7477992903590074568L;
9+
10+
public CountryReferenceDto() {
11+
}
12+
13+
public CountryReferenceDto(String uuid) {
14+
setUuid(uuid);
15+
}
16+
17+
public CountryReferenceDto(String uuid, String caption) {
18+
setUuid(uuid);
19+
setCaption(caption);
20+
}
21+
22+
@Override
23+
public int keyCompareTo(StatisticsGroupingKey o) {
24+
25+
if (o == null) {
26+
throw new NullPointerException("Can't compare to null.");
27+
}
28+
29+
if (this.equals(o)) {
30+
return 0;
31+
}
32+
33+
int captionComparison = this.getCaption().compareTo(((CountryReferenceDto) o).getCaption());
34+
if (captionComparison != 0) {
35+
return captionComparison;
36+
} else {
37+
return this.getUuid().compareTo(((CountryReferenceDto) o).getUuid());
38+
}
39+
}
40+
}

sormas-api/src/main/resources/captions.properties

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1825,6 +1825,8 @@ View.configuration.outbreaks=Outbreaks Configuration
18251825
View.configuration.outbreaks.short=Outbreaks
18261826
View.configuration.areas=Areas Configuration
18271827
View.configuration.areas.short=Areas
1828+
View.configuration.countries=Countries Configuration
1829+
View.configuration.countries.short=Countries
18281830
View.configuration.regions=Regions Configuration
18291831
View.configuration.regions.short=Regions
18301832
View.configuration.templates=Templates Configuration

sormas-api/src/main/resources/strings.properties

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -138,6 +138,8 @@ confirmationDisableAllLineListingRegion = Are you sure you want to disable line
138138
confirmationDisableAllLineListingNational = Are you sure you want to disable line listing for this disease? Line listing will be canceled for all districts in all regions.
139139
confirmationArchiveArea = Are you sure you want to archive this area?
140140
confirmationDearchiveArea = Are you sure you want to de-archive this area?
141+
confirmationArchiveCountry = Are you sure you want to archive this country?
142+
confirmationDearchiveCountry = Are you sure you want to de-archive this country?
141143
confirmationArchiveRegion = Are you sure you want to archive this region?
142144
confirmationDearchiveRegion = Are you sure you want to de-archive this region?
143145
confirmationArchiveDistrict = Are you sure you want to archive this district?
@@ -723,6 +725,8 @@ messagePointsOfEntryDearchivingNotPossible = At least one of the selected points
723725
messageNoRowsSelected = You have not selected any rows
724726
messageAreasArchived = All selected areas have been archived
725727
messageAreasDearchived = All selected areas have been de-archived
728+
messageCountriesArchived = All selected countries have been archived
729+
messageCountriesDearchived = All selected regions have been de-archived
726730
messageRegionsArchived = All selected regions have been archived
727731
messageRegionsDearchived = All selected regions have been de-archived
728732
messageDistrictsArchived = All selected districts have been archived

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

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -91,6 +91,7 @@ public class DatabaseExportService {
9191
EXPORT_CONFIGS.put(DatabaseTable.TASKS, new DatabaseExportConfiguration(Task.TABLE_NAME));
9292
EXPORT_CONFIGS.put(DatabaseTable.PERSONS, new DatabaseExportConfiguration(Person.TABLE_NAME));
9393
EXPORT_CONFIGS.put(DatabaseTable.LOCATIONS, new DatabaseExportConfiguration(Location.TABLE_NAME));
94+
EXPORT_CONFIGS.put(DatabaseTable.COUNTRIES, new DatabaseExportConfiguration(Location.TABLE_NAME));
9495
EXPORT_CONFIGS.put(DatabaseTable.REGIONS, new DatabaseExportConfiguration(Region.TABLE_NAME));
9596
EXPORT_CONFIGS.put(DatabaseTable.DISTRICTS, new DatabaseExportConfiguration(District.TABLE_NAME));
9697
EXPORT_CONFIGS.put(DatabaseTable.COMMUNITIES, new DatabaseExportConfiguration(Community.TABLE_NAME));

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

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -134,6 +134,7 @@ public class ImportFacadeEjb implements ImportFacade {
134134
private static final String POINT_OF_ENTRY_IMPORT_TEMPLATE_FILE_NAME = ImportExportUtils.FILE_PREFIX + "_import_point_of_entry_template.csv";
135135
private static final String POPULATION_DATA_IMPORT_TEMPLATE_FILE_NAME = ImportExportUtils.FILE_PREFIX + "_import_population_data_template.csv";
136136
private static final String AREA_IMPORT_TEMPLATE_FILE_NAME = ImportExportUtils.FILE_PREFIX + "_import_area_template.csv";
137+
private static final String COUNTRY_IMPORT_TEMPLATE_FILE_NAME = ImportExportUtils.FILE_PREFIX + "_import_country_template.csv";
137138
private static final String REGION_IMPORT_TEMPLATE_FILE_NAME = ImportExportUtils.FILE_PREFIX + "_import_region_template.csv";
138139
private static final String DISTRICT_IMPORT_TEMPLATE_FILE_NAME = ImportExportUtils.FILE_PREFIX + "_import_district_template.csv";
139140
private static final String COMMUNITY_IMPORT_TEMPLATE_FILE_NAME = ImportExportUtils.FILE_PREFIX + "_import_community_template.csv";
@@ -386,6 +387,14 @@ public String getAreaImportTemplateFilePath() {
386387
return filePath.toString();
387388
}
388389

390+
@Override
391+
public String getCountryImportTemplateFilePath() {
392+
393+
Path exportDirectory = Paths.get(configFacade.getGeneratedFilesPath());
394+
Path filePath = exportDirectory.resolve(COUNTRY_IMPORT_TEMPLATE_FILE_NAME);
395+
return filePath.toString();
396+
}
397+
389398
@Override
390399
public String getRegionImportTemplateFilePath() {
391400

0 commit comments

Comments
 (0)