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

Commit 3bc8989

Browse files
Merge pull request SORMAS-Foundation#3229 from hzi-braunschweig/bugfix-3221-NullableOptionGroupFix
SORMAS-Foundation#3221 (and SORMAS-Foundation#3214) - fix issues created by nullableoptiongroup
2 parents 69c7abe + 3041648 commit 3bc8989

14 files changed

Lines changed: 44 additions & 20 deletions

File tree

sormas-ui/src/main/java/de/symeda/sormas/ui/action/ActionEditForm.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424
import static de.symeda.sormas.ui.utils.LayoutUtil.locs;
2525

2626
import com.vaadin.v7.ui.ComboBox;
27+
import com.vaadin.v7.ui.Field;
2728
import com.vaadin.v7.ui.Label;
2829
import com.vaadin.v7.ui.RichTextArea;
2930
import com.vaadin.v7.ui.TextField;
@@ -161,7 +162,8 @@ private void updateByCreating() {
161162
}
162163

163164
private void updateByActionContext() {
164-
ActionContext actionContext = (ActionContext) getFieldGroup().getField(ActionDto.ACTION_CONTEXT).getValue();
165+
NullableOptionGroup field = (NullableOptionGroup) getFieldGroup().getField(ActionDto.ACTION_CONTEXT);
166+
ActionContext actionContext = (ActionContext) field.getNullableValue();
165167

166168
// context reference depending on action context
167169
// ready for adding new context

sormas-ui/src/main/java/de/symeda/sormas/ui/campaign/campaigndata/CampaignFormBuilder.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -309,8 +309,8 @@ private boolean fieldValueMatchesDependingOnValues(Field<?> dependingOnField, Li
309309
}
310310

311311
if (dependingOnField instanceof NullableOptionGroup) {
312-
String booleanValue = Boolean.TRUE.equals(dependingOnField.getValue()) ? "true" : "false";
313-
String stringValue = Boolean.TRUE.equals(dependingOnField.getValue()) ? "yes" : "no";
312+
String booleanValue = Boolean.TRUE.equals(((NullableOptionGroup) dependingOnField).getNullableValue()) ? "true" : "false";
313+
String stringValue = Boolean.TRUE.equals(((NullableOptionGroup) dependingOnField).getNullableValue()) ? "yes" : "no";
314314

315315
return dependingOnValuesList.stream()
316316
.anyMatch(v -> v.toString().equalsIgnoreCase(booleanValue) || v.toString().equalsIgnoreCase(stringValue));

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -310,7 +310,7 @@ protected void addFields() {
310310
warningLayout = VaadinUiUtil.createWarningComponent(I18nProperties.getString(Strings.pseudonymizedCasesSelectedWarning));
311311
facilityOrHome.addValueChangeListener(e -> {
312312
FieldHelper.removeItems(facility);
313-
if (TypeOfPlace.FACILITY.equals(facilityOrHome.getValue())) {
313+
if (TypeOfPlace.FACILITY.equals(facilityOrHome.getNullableValue())) {
314314
if (facilityTypeGroup.getValue() == null) {
315315
facilityTypeGroup.setValue(FacilityTypeGroup.MEDICAL_FACILITY);
316316
}

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -205,7 +205,7 @@ protected void addFields() {
205205
.updateItems(district, regionDto != null ? FacadeProvider.getDistrictFacade().getAllActiveByRegion(regionDto.getUuid()) : null);
206206
});
207207
district.addValueChangeListener(e -> {
208-
if (!TypeOfPlace.HOME.equals(facilityOrHome.getValue())) {
208+
if (!TypeOfPlace.HOME.equals(facilityOrHome.getNullableValue())) {
209209
FieldHelper.removeItems(facility);
210210
}
211211
FieldHelper.removeItems(community);

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -475,7 +475,7 @@ protected void addFields() {
475475
facility));
476476
facilityOrHome.addValueChangeListener(e -> {
477477
FieldHelper.removeItems(facility);
478-
if (TypeOfPlace.FACILITY.equals(facilityOrHome.getValue())) {
478+
if (TypeOfPlace.FACILITY.equals(facilityOrHome.getNullableValue())) {
479479

480480
// default values
481481
if (facilityTypeGroup.getValue() == null && !facilityTypeGroup.isReadOnly()) {

sormas-ui/src/main/java/de/symeda/sormas/ui/contact/ContactCreateForm.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -152,7 +152,7 @@ protected void addFields() {
152152
contactProximity = addField(ContactDto.CONTACT_PROXIMITY, NullableOptionGroup.class);
153153
contactProximity.removeStyleName(ValoTheme.OPTIONGROUP_HORIZONTAL);
154154
if (isConfiguredServer("de")) {
155-
contactProximity.addValueChangeListener(e -> updateContactCategory((ContactProximity) contactProximity.getValue()));
155+
contactProximity.addValueChangeListener(e -> updateContactCategory((ContactProximity) contactProximity.getNullableValue()));
156156
contactProximityDetails = addField(ContactDto.CONTACT_PROXIMITY_DETAILS, TextField.class);
157157
contactCategory = addField(ContactDto.CONTACT_CATEGORY, NullableOptionGroup.class);
158158
}
@@ -343,7 +343,7 @@ protected void updateLastContactDateValidator() {
343343

344344
private void updateContactProximity() {
345345

346-
ContactProximity value = (ContactProximity) contactProximity.getValue();
346+
ContactProximity value = (ContactProximity) contactProximity.getNullableValue();
347347
FieldHelper.updateEnumData(
348348
contactProximity,
349349
Arrays.asList(ContactProximity.getValues(disease, FacadeProvider.getConfigFacade().getCountryLocale())));

sormas-ui/src/main/java/de/symeda/sormas/ui/contact/ContactDataForm.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -222,7 +222,7 @@ protected void addFields() {
222222

223223
contactProximity.addValueChangeListener(e -> {
224224
if (getInternalValue().getContactProximity() != e.getProperty().getValue() || contactCategory.isModified()) {
225-
updateContactCategory((ContactProximity) contactProximity.getValue());
225+
updateContactCategory((ContactProximity) contactProximity.getNullableValue());
226226
}
227227
});
228228
}

sormas-ui/src/main/java/de/symeda/sormas/ui/epidata/EpiDataForm.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -351,7 +351,7 @@ private void updateAnimalExposureFields() {
351351
}
352352

353353
private void updateBurialsHint(NullableOptionGroup burialAttendedField, EpiDataBurialsField burialsField) {
354-
YesNoUnknown value = (YesNoUnknown) burialAttendedField.getValue();
354+
YesNoUnknown value = (YesNoUnknown) burialAttendedField.getNullableValue();
355355
if (UserProvider.getCurrent().hasUserRight(UserRight.CASE_EDIT)
356356
&& value == YesNoUnknown.YES
357357
&& (burialsField == null || burialsField.getValue() == null || burialsField.getValue().size() == 0)) {
@@ -362,7 +362,7 @@ private void updateBurialsHint(NullableOptionGroup burialAttendedField, EpiDataB
362362
}
363363

364364
private void updateGatheringsHint(NullableOptionGroup gatheringAttendedField, EpiDataGatheringsField gatheringsField) {
365-
YesNoUnknown value = (YesNoUnknown) gatheringAttendedField.getValue();
365+
YesNoUnknown value = (YesNoUnknown) gatheringAttendedField.getNullableValue();
366366
if (UserProvider.getCurrent().hasUserRight(UserRight.CASE_EDIT)
367367
&& value == YesNoUnknown.YES
368368
&& (gatheringsField == null || gatheringsField.getValue() == null || gatheringsField.getValue().size() == 0)) {
@@ -373,7 +373,7 @@ private void updateGatheringsHint(NullableOptionGroup gatheringAttendedField, Ep
373373
}
374374

375375
private void updateTravelsHint(NullableOptionGroup traveledField, EpiDataTravelsField travelsField) {
376-
YesNoUnknown value = (YesNoUnknown) traveledField.getValue();
376+
YesNoUnknown value = (YesNoUnknown) traveledField.getNullableValue();
377377
if (UserProvider.getCurrent().hasUserRight(UserRight.CASE_EDIT)
378378
&& value == YesNoUnknown.YES
379379
&& (travelsField == null || travelsField.getValue() == null || travelsField.getValue().size() == 0)) {

sormas-ui/src/main/java/de/symeda/sormas/ui/hospitalization/HospitalizationForm.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -229,14 +229,14 @@ protected void addFields() {
229229

230230
private void setDateFieldVisibilties() {
231231

232-
boolean visible = YesNoUnknown.YES.equals(intensiveCareUnit.getValue());
232+
boolean visible = YesNoUnknown.YES.equals(intensiveCareUnit.getNullableValue());
233233
intensiveCareUnitStart.setVisible(visible);
234234
intensiveCareUnitEnd.setVisible(visible);
235235
}
236236

237237
private void updatePrevHospHint(NullableOptionGroup hospitalizedPreviouslyField, PreviousHospitalizationsField previousHospitalizationsField) {
238238

239-
YesNoUnknown value = (YesNoUnknown) hospitalizedPreviouslyField.getValue();
239+
YesNoUnknown value = (YesNoUnknown) hospitalizedPreviouslyField.getNullableValue();
240240
Collection<PreviousHospitalizationDto> previousHospitalizations = previousHospitalizationsField.getValue();
241241
if (UserProvider.getCurrent().hasUserRight(UserRight.CASE_EDIT)
242242
&& value == YesNoUnknown.YES

sormas-ui/src/main/java/de/symeda/sormas/ui/samples/AbstractSampleForm.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121
import com.vaadin.v7.ui.ComboBox;
2222
import com.vaadin.v7.ui.DateField;
2323
import com.vaadin.v7.ui.Field;
24+
import com.vaadin.v7.ui.OptionGroup;
2425
import com.vaadin.v7.ui.TextArea;
2526
import com.vaadin.v7.ui.TextField;
2627

@@ -358,14 +359,14 @@ protected void initializeRequestedTestFields() {
358359
additionalTestingRequestedField.addValueChangeListener(e -> updateRequestedTestFields());
359360

360361
// CheckBox groups to select the requested pathogen/additional tests
361-
NullableOptionGroup requestedPathogenTestsField = addField(SampleDto.REQUESTED_PATHOGEN_TESTS, NullableOptionGroup.class);
362+
OptionGroup requestedPathogenTestsField = addField(SampleDto.REQUESTED_PATHOGEN_TESTS, OptionGroup.class);
362363
CssStyles.style(requestedPathogenTestsField, CssStyles.OPTIONGROUP_CHECKBOXES_HORIZONTAL);
363364
requestedPathogenTestsField.setMultiSelect(true);
364365
requestedPathogenTestsField.addItems((Object[]) PathogenTestType.values());
365366
requestedPathogenTestsField.removeItem(PathogenTestType.OTHER);
366367
requestedPathogenTestsField.setCaption(null);
367368

368-
NullableOptionGroup requestedAdditionalTestsField = addField(SampleDto.REQUESTED_ADDITIONAL_TESTS, NullableOptionGroup.class);
369+
OptionGroup requestedAdditionalTestsField = addField(SampleDto.REQUESTED_ADDITIONAL_TESTS, OptionGroup.class);
369370
CssStyles.style(requestedAdditionalTestsField, CssStyles.OPTIONGROUP_CHECKBOXES_HORIZONTAL);
370371
requestedAdditionalTestsField.setMultiSelect(true);
371372
requestedAdditionalTestsField.addItems((Object[]) AdditionalTestType.values());

0 commit comments

Comments
 (0)