Skip to content

Commit

Permalink
feat: SORMAS-Foundation#13 solved issue of test result.
Browse files Browse the repository at this point in the history
  • Loading branch information
meajt committed Dec 20, 2023
1 parent 04c7609 commit fcf74c1
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 20 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -23,18 +23,13 @@
import static de.symeda.sormas.ui.utils.LayoutUtil.fluidRowLocs;
import static de.symeda.sormas.ui.utils.LayoutUtil.loc;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.function.Consumer;

import de.symeda.sormas.api.sample.multiplexpathogentest.InfluenzaAPathogenTestResult;
import de.symeda.sormas.api.sample.multiplexpathogentest.InfluenzaBPathogenTestResult;
import de.symeda.sormas.ui.samples.multiplexpathogentest.MultiplexPathogenTestDiseaseForm;
import de.symeda.sormas.ui.samples.multiplexpathogentest.MultiplexPathogenTestForm;
import org.apache.commons.collections.CollectionUtils;

import com.vaadin.ui.Label;
Expand All @@ -46,7 +41,6 @@
import com.vaadin.v7.ui.DateField;
import com.vaadin.v7.ui.TextArea;
import com.vaadin.v7.ui.TextField;
import com.vaadin.v7.ui.VerticalLayout;

import de.symeda.sormas.api.Disease;
import de.symeda.sormas.api.FacadeProvider;
Expand All @@ -61,10 +55,13 @@
import de.symeda.sormas.api.sample.PathogenTestType;
import de.symeda.sormas.api.sample.SampleDto;
import de.symeda.sormas.api.sample.SamplePurpose;
import de.symeda.sormas.api.sample.multiplexpathogentest.InfluenzaAPathogenTestResult;
import de.symeda.sormas.api.sample.multiplexpathogentest.InfluenzaBPathogenTestResult;
import de.symeda.sormas.api.sample.multiplexpathogentest.MultiplexPathogenTestDiseaseDto;
import de.symeda.sormas.api.utils.fieldaccess.UiFieldAccessCheckers;
import de.symeda.sormas.api.utils.fieldvisibility.FieldVisibilityCheckers;
import de.symeda.sormas.ui.UserProvider;
import de.symeda.sormas.ui.samples.multiplexpathogentest.MultiplexPathogenTestForm;
import de.symeda.sormas.ui.utils.AbstractEditForm;
import de.symeda.sormas.ui.utils.CssStyles;
import de.symeda.sormas.ui.utils.DateComparisonValidator;
Expand Down Expand Up @@ -327,17 +324,13 @@ protected void addFields() {
PathogenTestType testType = (PathogenTestType) e.getProperty().getValue();
if (testType == PathogenTestType.MULTIPLEX_RT_PCR) {
multiplexPathogenTestForm.setVisible(true);
diseaseField.setVisible(false);
diseaseField.setRequired(false);
testResultField.setVisible(false);
testResultField.setRequired(false);
setVisible(false, PathogenTestDto.TESTED_DISEASE, PathogenTestDto.TEST_RESULT);
setRequired(false, PathogenTestDto.TESTED_DISEASE, PathogenTestDto.TEST_RESULT);
multiplexPathogenTestForm.addMultiplexRow();
} else {
multiplexPathogenTestForm.setVisible(false);
diseaseField.setVisible(true);
diseaseField.setRequired(true);
testResultField.setVisible(true);
testResultField.setRequired(true);
setVisible(true, PathogenTestDto.TESTED_DISEASE, PathogenTestDto.TEST_RESULT);
setRequired(true, PathogenTestDto.TESTED_DISEASE, PathogenTestDto.TEST_RESULT);
}

if ((testType == PathogenTestType.PCR_RT_PCR && testResultField.getValue() == PathogenTestResultType.POSITIVE)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,22 +1,20 @@
package de.symeda.sormas.ui.samples.multiplexpathogentest;

import java.util.ArrayList;
import java.util.List;

import com.vaadin.v7.data.Validator;
import com.vaadin.v7.ui.VerticalLayout;

import de.symeda.sormas.api.Disease;
import de.symeda.sormas.api.sample.PathogenTestType;
import de.symeda.sormas.api.sample.multiplexpathogentest.MultiplexPathogenTestDiseaseDto;

import java.util.ArrayList;
import java.util.List;

public class MultiplexPathogenTestForm extends VerticalLayout {
public MultiplexPathogenTestForm() {

}

public void addMultiplexRow() {
removeAllComponents();

var infAForm = new MultiplexPathogenTestDiseaseForm(Disease.INFLUENZA_A);
infAForm.setValue(buildMultiplexPathogenTest(Disease.INFLUENZA_A));
addComponent(infAForm);
Expand Down Expand Up @@ -44,6 +42,12 @@ public void validate() throws Validator.InvalidValueException {
}
}

@Override
public void setVisible(boolean visible) {
removeAllComponents();
super.setVisible(visible);
}

public List<MultiplexPathogenTestDiseaseDto> multiplexValues() {
List<MultiplexPathogenTestDiseaseDto> result = new ArrayList<>();
var totalChild = getComponentCount();
Expand Down

0 comments on commit fcf74c1

Please sign in to comment.