diff --git a/sormas-api/src/main/java/de/symeda/sormas/api/person/PersonDto.java b/sormas-api/src/main/java/de/symeda/sormas/api/person/PersonDto.java index 27363cfeeed..a4895af076b 100644 --- a/sormas-api/src/main/java/de/symeda/sormas/api/person/PersonDto.java +++ b/sormas-api/src/main/java/de/symeda/sormas/api/person/PersonDto.java @@ -195,6 +195,8 @@ public class PersonDto extends PseudonymizableDto implements IsPerson { @SensitiveData private Integer birthdateDD; @Outbreaks + @PersonalData + @SensitiveData private Integer birthdateMM; @Outbreaks private Integer birthdateYYYY; diff --git a/sormas-ui/src/main/java/de/symeda/sormas/ui/person/PersonEditForm.java b/sormas-ui/src/main/java/de/symeda/sormas/ui/person/PersonEditForm.java index c223d42ccba..283d00c1d3c 100644 --- a/sormas-ui/src/main/java/de/symeda/sormas/ui/person/PersonEditForm.java +++ b/sormas-ui/src/main/java/de/symeda/sormas/ui/person/PersonEditForm.java @@ -296,13 +296,8 @@ protected void addFields() { ComboBox birthDateMonth = addField(PersonDto.BIRTH_DATE_MM, ComboBox.class); // @TODO: Done for nullselection Bug, fixed in Vaadin 7.7.3 birthDateMonth.setNullSelectionAllowed(true); - birthDateMonth.addItems(DateHelper.getMonthsInYear()); - birthDateMonth.setPageLength(12); birthDateMonth.setInputPrompt(I18nProperties.getString(Strings.month)); birthDateMonth.setCaption(""); - DateHelper.getMonthsInYear() - .forEach(month -> birthDateMonth.setItemCaption(month, de.symeda.sormas.api.Month.values()[month - 1].toString())); - setItemCaptionsForMonths(birthDateMonth); ComboBox birthDateYear = addField(PersonDto.BIRTH_DATE_YYYY, ComboBox.class); birthDateYear.setCaption(I18nProperties.getPrefixCaption(PersonDto.I18N_PREFIX, PersonDto.BIRTH_DATE)); // @TODO: Done for nullselection Bug, fixed in Vaadin 7.7.3 @@ -446,6 +441,13 @@ protected void addFields() { initializeVisibilitiesAndAllowedVisibilities(); initializeAccessAndAllowedAccesses(); + if (isEditableAllowed(PersonDto.BIRTH_DATE_MM)) { + birthDateMonth.addItems(DateHelper.getMonthsInYear()); + birthDateMonth.setPageLength(13); + DateHelper.getMonthsInYear() + .forEach(month -> birthDateMonth.setItemCaption(month, de.symeda.sormas.api.Month.values()[month - 1].toString())); + } + if (!getField(PersonDto.OCCUPATION_TYPE).isVisible() && !getField(PersonDto.ARMED_FORCES_RELATION_TYPE).isVisible() && !getField(PersonDto.EDUCATION_TYPE).isVisible())