Skip to content

Commit 37cb9d8

Browse files
Merge pull request #14088 from SORMAS-Foundation/bugfix-14038-clinical-course-non-lux-hiding
Clinical course tab has been disabled for LTB of all countries
2 parents c9eb989 + 4237a7e commit 37cb9d8

1 file changed

Lines changed: 10 additions & 7 deletions

File tree

sormas-ui/src/main/java/de/symeda/sormas/ui/caze/AbstractCaseView.java

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -74,6 +74,9 @@ public abstract class AbstractCaseView extends AbstractEditAllowedDetailView<Cas
7474
Disease.CRYPTOSPORIDIOSIS,
7575
Disease.LATENT_TUBERCULOSIS)));
7676

77+
public static final Set<Disease> NON_LUX_CLINICAL_COURSE_DISABLED_DISEASES =
78+
Collections.unmodifiableSet(new HashSet<>(Arrays.asList(Disease.LATENT_TUBERCULOSIS, Disease.INFLUENZA)));
79+
7780
public static final Set<Disease> THERAPY_DISABLED_DISEASES =
7881
Collections.unmodifiableSet(new HashSet<>(Arrays.asList(Disease.MEASLES, Disease.GIARDIASIS, Disease.CRYPTOSPORIDIOSIS)));
7982

@@ -89,6 +92,7 @@ public abstract class AbstractCaseView extends AbstractEditAllowedDetailView<Cas
8992
private final boolean redirectSimpleModeToCaseDataView;
9093
private final OptionGroup viewModeToggle;
9194
private final Property.ValueChangeListener viewModeToggleListener;
95+
boolean isLuxembourg = FacadeProvider.getConfigFacade().isConfiguredCountry(CountryHelper.COUNTRY_CODE_LUXEMBOURG);
9296

9397
protected AbstractCaseView(String viewName, boolean redirectSimpleModeToCaseDataView) {
9498
super(viewName);
@@ -227,15 +231,14 @@ public void refreshMenu(SubMenu menu, String params) {
227231
}
228232

229233
if (showExtraMenuEntries) {
234+
// Clinical course is disabled for Luxembourg for Measles, IMI, IPI, GIARDIASIS, Cryptosporidiosis cases,
235+
// and for all other countries Influenza cases. #13708 and LTB. #14038
236+
boolean isDiseaseDisabled = isLuxembourg
237+
? CLINICAL_COURSE_DISABLED_DISEASES.contains(caze.getDisease())
238+
: NON_LUX_CLINICAL_COURSE_DISABLED_DISEASES.contains(caze.getDisease());
230239
if (UiUtil.permitted(
231240
EnumSet.of(FeatureType.VIEW_TAB_CASES_FOLLOW_UP, FeatureType.VIEW_TAB_CASES_CLINICAL_COURSE, FeatureType.CLINICAL_MANAGEMENT),
232-
UserRight.CLINICAL_COURSE_VIEW)
233-
&& !caze.checkIsUnreferredPortHealthCase()
234-
&& !(FacadeProvider.getConfigFacade().isConfiguredCountry(CountryHelper.COUNTRY_CODE_LUXEMBOURG)
235-
&& CLINICAL_COURSE_DISABLED_DISEASES.contains(caze.getDisease()))
236-
&& Disease.INFLUENZA != caze.getDisease()) {
237-
// clinical course view is not available for Luxembourg for Measles, IMI, IPI, GIARDIASIS, Cryptosporidiosis cases,
238-
// and for all other countries Influenza cases. 13708
241+
UserRight.CLINICAL_COURSE_VIEW) && !caze.checkIsUnreferredPortHealthCase() && !isDiseaseDisabled) {
239242
menu.addView(
240243
ClinicalCourseView.VIEW_NAME,
241244
I18nProperties.getPrefixCaption(CaseDataDto.I18N_PREFIX, CaseDataDto.CLINICAL_COURSE),

0 commit comments

Comments
 (0)