Skip to content

Commit

Permalink
Merge pull request #13172 from SORMAS-Foundation/feature-12634_aefi_m…
Browse files Browse the repository at this point in the history
…odule_in_sormas

Feature #12634 aefi module in sormas
  • Loading branch information
obinna-h-n authored Oct 25, 2024
2 parents 9d73733 + 8a9119a commit 0221aea
Show file tree
Hide file tree
Showing 152 changed files with 21,565 additions and 11 deletions.
15 changes: 15 additions & 0 deletions sormas-api/src/main/java/de/symeda/sormas/api/FacadeProvider.java
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,8 @@
import javax.naming.NamingException;

import de.symeda.sormas.api.action.ActionFacade;
import de.symeda.sormas.api.adverseeventsfollowingimmunization.AefiFacade;
import de.symeda.sormas.api.adverseeventsfollowingimmunization.AefiInvestigationFacade;
import de.symeda.sormas.api.audit.AuditLoggerFacade;
import de.symeda.sormas.api.bagexport.BAGExportFacade;
import de.symeda.sormas.api.campaign.CampaignFacade;
Expand All @@ -38,6 +40,7 @@
import de.symeda.sormas.api.contact.ContactFacade;
import de.symeda.sormas.api.customizableenum.CustomizableEnumFacade;
import de.symeda.sormas.api.dashboard.DashboardFacade;
import de.symeda.sormas.api.dashboard.adverseeventsfollowingimmunization.AefiDashboardFacade;
import de.symeda.sormas.api.dashboard.sample.SampleDashboardFacade;
import de.symeda.sormas.api.deletionconfiguration.DeletionConfigurationFacade;
import de.symeda.sormas.api.disease.DiseaseConfigurationFacade;
Expand Down Expand Up @@ -148,6 +151,14 @@ public static ImmunizationFacade getImmunizationFacade() {
return get().lookupEjbRemote(ImmunizationFacade.class);
}

public static AefiFacade getAefiFacade() {
return get().lookupEjbRemote(AefiFacade.class);
}

public static AefiInvestigationFacade getAefiInvestigationFacade() {
return get().lookupEjbRemote(AefiInvestigationFacade.class);
}

public static VaccinationFacade getVaccinationFacade() {
return get().lookupEjbRemote(VaccinationFacade.class);
}
Expand Down Expand Up @@ -320,6 +331,10 @@ public static SampleDashboardFacade getSampleDashboardFacade() {
return get().lookupEjbRemote(SampleDashboardFacade.class);
}

public static AefiDashboardFacade getAefiDashboardFacade() {
return get().lookupEjbRemote(AefiDashboardFacade.class);
}

public static DiseaseConfigurationFacade getDiseaseConfigurationFacade() {
return get().lookupEjbRemote(DiseaseConfigurationFacade.class);
}
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
/*
* SORMAS® - Surveillance Outbreak Response Management & Analysis System
* Copyright © 2016-2024 Helmholtz-Zentrum für Infektionsforschung GmbH (HZI)
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/

package de.symeda.sormas.api.adverseeventsfollowingimmunization;

import de.symeda.sormas.api.i18n.I18nProperties;

public enum AdverseEventState {

YES,
NO,
UNKNOWN;

@Override
public String toString() {
return I18nProperties.getEnumCaption(this);
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,186 @@
/*
* SORMAS® - Surveillance Outbreak Response Management & Analysis System
* Copyright © 2016-2024 Helmholtz-Zentrum für Infektionsforschung GmbH (HZI)
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/

package de.symeda.sormas.api.adverseeventsfollowingimmunization;

import de.symeda.sormas.api.feature.FeatureType;
import de.symeda.sormas.api.utils.DataHelper;
import de.symeda.sormas.api.utils.DependingOnFeatureType;
import de.symeda.sormas.api.utils.Order;
import de.symeda.sormas.api.utils.pseudonymization.PseudonymizableDto;

@DependingOnFeatureType(featureType = {
FeatureType.IMMUNIZATION_MANAGEMENT,
FeatureType.ADVERSE_EVENTS_FOLLOWING_IMMUNIZATION_MANAGEMENT })
public class AdverseEventsDto extends PseudonymizableDto {

private static final long serialVersionUID = 8081578717541472008L;

public static final String I18N_PREFIX = "AdverseEvents";

public static final String SEVERE_LOCAL_REACTION = "severeLocalReaction";
public static final String SEVERE_LOCAL_REACTION_MORE_THAN_THREE_DAYS = "severeLocalReactionMoreThanThreeDays";
public static final String SEVERE_LOCAL_REACTION_BEYOND_NEAREST_JOINT = "severeLocalReactionBeyondNearestJoint";
public static final String SEIZURES = "seizures";
public static final String SEIZURE_TYPE = "seizureType";
public static final String ABSCESS = "abscess";
public static final String SEPSIS = "sepsis";
public static final String ENCEPHALOPATHY = "encephalopathy";
public static final String TOXIC_SHOCK_SYNDROME = "toxicShockSyndrome";
public static final String THROMBOCYTOPENIA = "thrombocytopenia";
public static final String ANAPHYLAXIS = "anaphylaxis";
public static final String FEVERISH_FEELING = "feverishFeeling";
public static final String OTHER_ADVERSE_EVENT_DETAILS = "otherAdverseEventDetails";

private AdverseEventState severeLocalReaction;
private boolean severeLocalReactionMoreThanThreeDays;
private boolean severeLocalReactionBeyondNearestJoint;
private AdverseEventState seizures;
private SeizureType seizureType;
private AdverseEventState abscess;
private AdverseEventState sepsis;
private AdverseEventState encephalopathy;
private AdverseEventState toxicShockSyndrome;
private AdverseEventState thrombocytopenia;
private AdverseEventState anaphylaxis;
private AdverseEventState feverishFeeling;
private String otherAdverseEventDetails;

public static AdverseEventsDto build() {
AdverseEventsDto adverseEvents = new AdverseEventsDto();
adverseEvents.setUuid(DataHelper.createUuid());
return adverseEvents;
}

@Order(1)
public AdverseEventState getSevereLocalReaction() {
return severeLocalReaction;
}

public void setSevereLocalReaction(AdverseEventState severeLocalReaction) {
this.severeLocalReaction = severeLocalReaction;
}

@Order(2)
public boolean isSevereLocalReactionMoreThanThreeDays() {
return severeLocalReactionMoreThanThreeDays;
}

public void setSevereLocalReactionMoreThanThreeDays(boolean severeLocalReactionMoreThanThreeDays) {
this.severeLocalReactionMoreThanThreeDays = severeLocalReactionMoreThanThreeDays;
}

@Order(3)
public boolean isSevereLocalReactionBeyondNearestJoint() {
return severeLocalReactionBeyondNearestJoint;
}

public void setSevereLocalReactionBeyondNearestJoint(boolean severeLocalReactionBeyondNearestJoint) {
this.severeLocalReactionBeyondNearestJoint = severeLocalReactionBeyondNearestJoint;
}

@Order(4)
public AdverseEventState getSeizures() {
return seizures;
}

public void setSeizures(AdverseEventState seizures) {
this.seizures = seizures;
}

@Order(5)
public SeizureType getSeizureType() {
return seizureType;
}

public void setSeizureType(SeizureType seizureType) {
this.seizureType = seizureType;
}

@Order(6)
public AdverseEventState getAbscess() {
return abscess;
}

public void setAbscess(AdverseEventState abscess) {
this.abscess = abscess;
}

@Order(7)
public AdverseEventState getSepsis() {
return sepsis;
}

public void setSepsis(AdverseEventState sepsis) {
this.sepsis = sepsis;
}

@Order(7)
public AdverseEventState getEncephalopathy() {
return encephalopathy;
}

public void setEncephalopathy(AdverseEventState encephalopathy) {
this.encephalopathy = encephalopathy;
}

@Order(8)
public AdverseEventState getToxicShockSyndrome() {
return toxicShockSyndrome;
}

public void setToxicShockSyndrome(AdverseEventState toxicShockSyndrome) {
this.toxicShockSyndrome = toxicShockSyndrome;
}

@Order(9)
public AdverseEventState getThrombocytopenia() {
return thrombocytopenia;
}

public void setThrombocytopenia(AdverseEventState thrombocytopenia) {
this.thrombocytopenia = thrombocytopenia;
}

@Order(10)
public AdverseEventState getAnaphylaxis() {
return anaphylaxis;
}

public void setAnaphylaxis(AdverseEventState anaphylaxis) {
this.anaphylaxis = anaphylaxis;
}

@Order(11)
public AdverseEventState getFeverishFeeling() {
return feverishFeeling;
}

public void setFeverishFeeling(AdverseEventState feverishFeeling) {
this.feverishFeeling = feverishFeeling;
}

@Order(12)
public String getOtherAdverseEventDetails() {
return otherAdverseEventDetails;
}

public void setOtherAdverseEventDetails(String otherAdverseEventDetails) {
this.otherAdverseEventDetails = otherAdverseEventDetails;
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
/*
* SORMAS® - Surveillance Outbreak Response Management & Analysis System
* Copyright © 2016-2024 Helmholtz-Zentrum für Infektionsforschung GmbH (HZI)
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/

package de.symeda.sormas.api.adverseeventsfollowingimmunization;

import de.symeda.sormas.api.i18n.I18nProperties;

public enum AefiAgeGroup {

ZERO_TO_ONE,
ONE_TO_FIVE,
FIVE_TO_EIGHTEEN,
EIGHTEEN_TO_SIXTY,
SIXY_AND_ABOVE;

@Override
public String toString() {
return I18nProperties.getEnumCaption(this);
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
/*
* SORMAS® - Surveillance Outbreak Response Management & Analysis System
* Copyright © 2016-2024 Helmholtz-Zentrum für Infektionsforschung GmbH (HZI)
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/

package de.symeda.sormas.api.adverseeventsfollowingimmunization;

import de.symeda.sormas.api.i18n.I18nProperties;

public enum AefiCausality {

CONFIRMED,
INCONCLUSIVE;

@Override
public String toString() {
return I18nProperties.getEnumCaption(this);
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
/*
* SORMAS® - Surveillance Outbreak Response Management & Analysis System
* Copyright © 2016-2024 Helmholtz-Zentrum für Infektionsforschung GmbH (HZI)
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/

package de.symeda.sormas.api.adverseeventsfollowingimmunization;

import de.symeda.sormas.api.i18n.I18nProperties;

public enum AefiClassification {

RELATED_TO_VACCINE_OR_VACCINATION,
COINCIDENTAL_ADVERSE_EVENT,
UNDETERMINED;

@Override
public String toString() {
return I18nProperties.getEnumCaption(this);
}
}
Loading

0 comments on commit 0221aea

Please sign in to comment.