|
22 | 22 | import org.slf4j.LoggerFactory; |
23 | 23 |
|
24 | 24 | import de.symeda.sormas.api.CountryHelper; |
| 25 | +import de.symeda.sormas.api.Disease; |
| 26 | +import de.symeda.sormas.api.caze.CaseClassification; |
25 | 27 | import de.symeda.sormas.api.caze.CaseDataDto; |
| 28 | +import de.symeda.sormas.api.caze.CaseOutcome; |
| 29 | +import de.symeda.sormas.api.caze.InvestigationStatus; |
26 | 30 | import de.symeda.sormas.api.externalmessage.ExternalMessageDto; |
27 | 31 | import de.symeda.sormas.api.feature.FeatureType; |
28 | 32 | import de.symeda.sormas.api.infrastructure.facility.FacilityDto; |
29 | 33 | import de.symeda.sormas.api.infrastructure.facility.FacilityReferenceDto; |
30 | 34 | import de.symeda.sormas.api.infrastructure.facility.FacilityType; |
31 | 35 | import de.symeda.sormas.api.person.PersonDto; |
| 36 | +import de.symeda.sormas.api.sample.PathogenTestResultType; |
| 37 | +import de.symeda.sormas.api.sample.PathogenTestType; |
32 | 38 | import de.symeda.sormas.api.user.UserDto; |
33 | 39 | import de.symeda.sormas.api.utils.dataprocessing.EntitySelection; |
34 | 40 | import de.symeda.sormas.api.utils.dataprocessing.HandlerCallback; |
@@ -175,6 +181,18 @@ protected CaseDataDto buildCase(PersonDto person, ExternalMessageDto externalMes |
175 | 181 | caseDto.setHealthFacility(processingFacade.getFacilityReferenceByUuid(FacilityDto.NONE_FACILITY_UUID)); |
176 | 182 | } |
177 | 183 |
|
| 184 | + if (processingFacade.isConfiguredCountry(CountryHelper.COUNTRY_CODE_LUXEMBOURG)) { |
| 185 | + if (externalMessageDto.getDisease().equals(Disease.PERTUSSIS) |
| 186 | + && externalMessageDto.getSampleReports().get(0).getTestReports().get(0).getTestResult().equals(PathogenTestResultType.POSITIVE)) { |
| 187 | + PathogenTestType testType = externalMessageDto.getSampleReports().get(0).getTestReports().get(0).getTestType(); |
| 188 | + if (testType.equals(PathogenTestType.CULTURE) || testType.equals(PathogenTestType.PCR_RT_PCR)) { |
| 189 | + caseDto.setCaseClassification(CaseClassification.CONFIRMED); |
| 190 | + } |
| 191 | + } |
| 192 | + caseDto.setInvestigationStatus(InvestigationStatus.PENDING); |
| 193 | + caseDto.setOutcome(CaseOutcome.NO_OUTCOME); |
| 194 | + } |
| 195 | + |
178 | 196 | caseDto.setVaccinationStatus(externalMessageDto.getVaccinationStatus()); |
179 | 197 | caseDto.getHospitalization().setAdmittedToHealthFacility(externalMessageDto.getAdmittedToHealthFacility()); |
180 | 198 |
|
|
0 commit comments