summaryrefslogtreecommitdiff
path: root/src/main/java/dev/dnpm/oshelper/services/therapieplan
diff options
context:
space:
mode:
authorPaul-Christian Volkmer2026-09-03 14:35:10 +0200
committerGitHub2026-09-03 14:35:10 +0200
commitfb91356b7777dfa5b6088bcc3a48b43924c1c0fd (patch)
treea3d384390e388395953865a286f15292aaa04a86 /src/main/java/dev/dnpm/oshelper/services/therapieplan
parent59daf77a63bd17bb14248cf9881046dd6b331e2a (diff)
build: apply Spotless plugin (#293)
Diffstat (limited to 'src/main/java/dev/dnpm/oshelper/services/therapieplan')
-rw-r--r--src/main/java/dev/dnpm/oshelper/services/therapieplan/AbstractTherapieplanService.java53
-rw-r--r--src/main/java/dev/dnpm/oshelper/services/therapieplan/DefaultTherapieplanService.java331
-rw-r--r--src/main/java/dev/dnpm/oshelper/services/therapieplan/MultipleMtbTherapieplanService.java97
-rw-r--r--src/main/java/dev/dnpm/oshelper/services/therapieplan/TherapieplanService.java72
-rw-r--r--src/main/java/dev/dnpm/oshelper/services/therapieplan/TherapieplanServiceFactory.java30
5 files changed, 288 insertions, 295 deletions
diff --git a/src/main/java/dev/dnpm/oshelper/services/therapieplan/AbstractTherapieplanService.java b/src/main/java/dev/dnpm/oshelper/services/therapieplan/AbstractTherapieplanService.java
index 4542972..cd04e1f 100644
--- a/src/main/java/dev/dnpm/oshelper/services/therapieplan/AbstractTherapieplanService.java
+++ b/src/main/java/dev/dnpm/oshelper/services/therapieplan/AbstractTherapieplanService.java
@@ -19,43 +19,44 @@
package dev.dnpm.oshelper.services.therapieplan;
-import dev.dnpm.oshelper.services.FormService;
import de.itc.onkostar.api.IOnkostarApi;
import de.itc.onkostar.api.Procedure;
-
+import dev.dnpm.oshelper.services.FormService;
import java.util.List;
import java.util.stream.Collectors;
public abstract class AbstractTherapieplanService implements TherapieplanService {
- protected final IOnkostarApi onkostarApi;
+ protected final IOnkostarApi onkostarApi;
- protected final FormService formService;
+ protected final FormService formService;
- protected AbstractTherapieplanService(final IOnkostarApi onkostarApi, final FormService formService) {
- this.onkostarApi = onkostarApi;
- this.formService = formService;
- }
-
- @Override
- public List<Procedure> findReferencedFollowUpsForSubform(Procedure procedure) {
- if (null == procedure || !"DNPM UF Einzelempfehlung".equals(procedure.getFormName())) {
- return List.of();
- }
+ protected AbstractTherapieplanService(
+ final IOnkostarApi onkostarApi, final FormService formService) {
+ this.onkostarApi = onkostarApi;
+ this.formService = formService;
+ }
- return procedure.getDiseaseIds().stream()
- .flatMap(diseaseId -> onkostarApi.getProceduresForDiseaseByForm(diseaseId, "DNPM FollowUp").stream())
- .filter(p -> p.getValue("LinkTherapieempfehlung").getInt() == procedure.getId())
- .collect(Collectors.toList());
+ @Override
+ public List<Procedure> findReferencedFollowUpsForSubform(Procedure procedure) {
+ if (null == procedure || !"DNPM UF Einzelempfehlung".equals(procedure.getFormName())) {
+ return List.of();
}
- @Override
- public List<Procedure> findReferencedFollowUpsForSubform(int procedureId) {
- var procedure = this.onkostarApi.getProcedure(procedureId);
- if (null == procedure || !"DNPM UF Einzelempfehlung".equals(procedure.getFormName())) {
- return List.of();
- }
- return findReferencedFollowUpsForSubform(procedure);
+ return procedure.getDiseaseIds().stream()
+ .flatMap(
+ diseaseId ->
+ onkostarApi.getProceduresForDiseaseByForm(diseaseId, "DNPM FollowUp").stream())
+ .filter(p -> p.getValue("LinkTherapieempfehlung").getInt() == procedure.getId())
+ .collect(Collectors.toList());
+ }
+
+ @Override
+ public List<Procedure> findReferencedFollowUpsForSubform(int procedureId) {
+ var procedure = this.onkostarApi.getProcedure(procedureId);
+ if (null == procedure || !"DNPM UF Einzelempfehlung".equals(procedure.getFormName())) {
+ return List.of();
}
-
+ return findReferencedFollowUpsForSubform(procedure);
+ }
}
diff --git a/src/main/java/dev/dnpm/oshelper/services/therapieplan/DefaultTherapieplanService.java b/src/main/java/dev/dnpm/oshelper/services/therapieplan/DefaultTherapieplanService.java
index df1902e..4f5d716 100644
--- a/src/main/java/dev/dnpm/oshelper/services/therapieplan/DefaultTherapieplanService.java
+++ b/src/main/java/dev/dnpm/oshelper/services/therapieplan/DefaultTherapieplanService.java
@@ -19,197 +19,192 @@
package dev.dnpm.oshelper.services.therapieplan;
-import dev.dnpm.oshelper.services.FormService;
+import static dev.dnpm.oshelper.services.FormService.hasValue;
+import static dev.dnpm.oshelper.services.FormService.isYes;
+
import de.itc.onkostar.api.IOnkostarApi;
import de.itc.onkostar.api.Item;
import de.itc.onkostar.api.Procedure;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
+import dev.dnpm.oshelper.services.FormService;
import java.util.Date;
import java.util.List;
import java.util.Objects;
-
-import static dev.dnpm.oshelper.services.FormService.hasValue;
-import static dev.dnpm.oshelper.services.FormService.isYes;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
public class DefaultTherapieplanService extends AbstractTherapieplanService {
- public static final String FORMFIELD_REFERSTEMTB = "referstemtb";
- public static final String FORMFIELD_HUMANGENBERATUNG = "humangenberatung";
- public static final String FORMFIELD_REEVALUATION = "reevaluation";
- public static final String FORMFIELD_DATUM = "datum";
- public static final String FORMFIELD_REFTKHUMANGENBER = "reftkhumangenber";
- public static final String FORMFIELD_DATUMTKHUMANGENBER = "datumtkhumangenber";
- public static final String FORMFIELD_REFTKREEVALUATION = "reftkreevaluation";
- public static final String FORMFIELD_DATUMTKREEVALUATION = "datumtkreevaluation";
- public static final String FORMFIELD_MTB = "mtb";
- public static final String FORMFIELD_UFEEDATUM = "ufeedatum";
- public static final String FORMFIELD_REFTUMORKONFERENZ = "reftumorkonferenz";
- public static final String FORMFIELD_UFRBDATUM = "ufrbdatum";
-
- public static final String DATAFIELD_REF_TK_HUMANGENBER = "ref_tk_humangenber";
- public static final String DATAFIELD_DATUM_TK_HUMANGENBER = "datum_tk_humangenber";
- public static final String DATAFIELD_DATUM = "datum";
-
- private final Logger logger = LoggerFactory.getLogger(this.getClass());
-
- public DefaultTherapieplanService(final IOnkostarApi onkostarApi, final FormService formService) {
- super(onkostarApi, formService);
+ public static final String FORMFIELD_REFERSTEMTB = "referstemtb";
+ public static final String FORMFIELD_HUMANGENBERATUNG = "humangenberatung";
+ public static final String FORMFIELD_REEVALUATION = "reevaluation";
+ public static final String FORMFIELD_DATUM = "datum";
+ public static final String FORMFIELD_REFTKHUMANGENBER = "reftkhumangenber";
+ public static final String FORMFIELD_DATUMTKHUMANGENBER = "datumtkhumangenber";
+ public static final String FORMFIELD_REFTKREEVALUATION = "reftkreevaluation";
+ public static final String FORMFIELD_DATUMTKREEVALUATION = "datumtkreevaluation";
+ public static final String FORMFIELD_MTB = "mtb";
+ public static final String FORMFIELD_UFEEDATUM = "ufeedatum";
+ public static final String FORMFIELD_REFTUMORKONFERENZ = "reftumorkonferenz";
+ public static final String FORMFIELD_UFRBDATUM = "ufrbdatum";
+
+ public static final String DATAFIELD_REF_TK_HUMANGENBER = "ref_tk_humangenber";
+ public static final String DATAFIELD_DATUM_TK_HUMANGENBER = "datum_tk_humangenber";
+ public static final String DATAFIELD_DATUM = "datum";
+
+ private final Logger logger = LoggerFactory.getLogger(this.getClass());
+
+ public DefaultTherapieplanService(final IOnkostarApi onkostarApi, final FormService formService) {
+ super(onkostarApi, formService);
+ }
+
+ /**
+ * Verlinke MTB und Übernahme Datum aus Hauptformular in weiteren Bereichen "Humangenetische
+ * Beratung" und "Reevaluation" und Unterformularen, wenn erforderlich.
+ *
+ * @param procedure Die Prozedur mit Hauptformular
+ */
+ @Override
+ public void updateRequiredMtbEntries(Procedure procedure) {
+ this.updateMtbInSections(procedure);
+ this.updateMtbInSubforms(procedure);
+ }
+
+ /**
+ * Finde verlinkte MTBs in Hauptformular und Unterformularen
+ *
+ * @param procedure Die Prozedur mit Hauptformular
+ * @return Liste mit verlinkten MTBs
+ */
+ @Override
+ public List<Procedure> findReferencedMtbs(Procedure procedure) {
+ if (!hasValue(procedure, FORMFIELD_REFERSTEMTB)) {
+ return List.of();
+ }
+
+ var mtbProcedure =
+ this.onkostarApi.getProcedure(procedure.getValue(FORMFIELD_REFERSTEMTB).getInt());
+ if (null == mtbProcedure) {
+ return List.of();
}
+ return List.of(mtbProcedure);
+ }
+
+ /**
+ * Finde verlinkte MTBs in Hauptformular und Unterformularen
+ *
+ * @param procedureId ID der Prozedur mit Hauptformular
+ * @return Liste mit verlinkten MTBs
+ */
+ @Override
+ public List<Procedure> findReferencedMtbs(int procedureId) {
+ var procedure = this.onkostarApi.getProcedure(procedureId);
+ if (null == procedure) {
+ return List.of();
+ }
+ return findReferencedMtbs(procedure);
+ }
+
+ private void updateMtbInSections(Procedure procedure) {
+ if (!isYes(procedure, FORMFIELD_HUMANGENBERATUNG)
+ && !isYes(procedure, FORMFIELD_REEVALUATION)) {
+ return;
+ }
+
+ var mtbReference = procedure.getValue(FORMFIELD_REFERSTEMTB).getInt();
+ var mtbDate = procedure.getValue(FORMFIELD_DATUM).getDate();
+ var noUpdateRequired = true;
- /**
- * Verlinke MTB und Übernahme Datum aus Hauptformular in weiteren Bereichen
- * "Humangenetische Beratung" und "Reevaluation" und Unterformularen, wenn erforderlich.
- *
- * @param procedure Die Prozedur mit Hauptformular
- */
- @Override
- public void updateRequiredMtbEntries(Procedure procedure) {
- this.updateMtbInSections(procedure);
- this.updateMtbInSubforms(procedure);
+ if (isYes(procedure, FORMFIELD_HUMANGENBERATUNG)
+ && (!hasValue(procedure, FORMFIELD_REFTKHUMANGENBER)
+ || mtbReference != procedure.getValue(FORMFIELD_REFTKHUMANGENBER).getInt())) {
+ procedure.setValue(
+ FORMFIELD_REFTKHUMANGENBER, new Item(DATAFIELD_REF_TK_HUMANGENBER, mtbReference));
+ noUpdateRequired = false;
}
- /**
- * Finde verlinkte MTBs in Hauptformular und Unterformularen
- *
- * @param procedure Die Prozedur mit Hauptformular
- * @return Liste mit verlinkten MTBs
- */
- @Override
- public List<Procedure> findReferencedMtbs(Procedure procedure) {
- if (!hasValue(procedure, FORMFIELD_REFERSTEMTB)) {
- return List.of();
- }
-
- var mtbProcedure = this.onkostarApi.getProcedure(procedure.getValue(FORMFIELD_REFERSTEMTB).getInt());
- if (null == mtbProcedure) {
- return List.of();
- }
- return List.of(mtbProcedure);
+ if (isYes(procedure, FORMFIELD_HUMANGENBERATUNG)
+ && (!hasValue(procedure, FORMFIELD_DATUMTKHUMANGENBER)
+ || !mtbDate.equals(procedure.getValue(FORMFIELD_DATUMTKHUMANGENBER).getDate()))) {
+ procedure.setValue(
+ FORMFIELD_DATUMTKHUMANGENBER, new Item(DATAFIELD_DATUM_TK_HUMANGENBER, mtbDate));
+ noUpdateRequired = false;
}
- /**
- * Finde verlinkte MTBs in Hauptformular und Unterformularen
- *
- * @param procedureId ID der Prozedur mit Hauptformular
- * @return Liste mit verlinkten MTBs
- */
- @Override
- public List<Procedure> findReferencedMtbs(int procedureId) {
- var procedure = this.onkostarApi.getProcedure(procedureId);
- if (null == procedure) {
- return List.of();
- }
- return findReferencedMtbs(procedure);
+ if (isYes(procedure, FORMFIELD_REEVALUATION)
+ && (!hasValue(procedure, FORMFIELD_REFTKREEVALUATION)
+ || mtbReference != procedure.getValue(FORMFIELD_REFTKREEVALUATION).getInt())) {
+ procedure.setValue(
+ FORMFIELD_REFTKREEVALUATION, new Item("ref_tk_reevaluation", mtbReference));
+ noUpdateRequired = false;
}
- private void updateMtbInSections(Procedure procedure) {
- if (!isYes(procedure, FORMFIELD_HUMANGENBERATUNG) && !isYes(procedure, FORMFIELD_REEVALUATION)) {
- return;
- }
-
- var mtbReference = procedure.getValue(FORMFIELD_REFERSTEMTB).getInt();
- var mtbDate = procedure.getValue(FORMFIELD_DATUM).getDate();
- var noUpdateRequired = true;
-
- if (
- isYes(procedure, FORMFIELD_HUMANGENBERATUNG) && (
- !hasValue(procedure, FORMFIELD_REFTKHUMANGENBER)
- || mtbReference != procedure.getValue(FORMFIELD_REFTKHUMANGENBER).getInt()
- )
- ) {
- procedure.setValue(FORMFIELD_REFTKHUMANGENBER, new Item(DATAFIELD_REF_TK_HUMANGENBER, mtbReference));
- noUpdateRequired = false;
- }
-
- if (
- isYes(procedure, FORMFIELD_HUMANGENBERATUNG) && (
- !hasValue(procedure, FORMFIELD_DATUMTKHUMANGENBER)
- || !mtbDate.equals(procedure.getValue(FORMFIELD_DATUMTKHUMANGENBER).getDate())
- )
- ) {
- procedure.setValue(FORMFIELD_DATUMTKHUMANGENBER, new Item(DATAFIELD_DATUM_TK_HUMANGENBER, mtbDate));
- noUpdateRequired = false;
- }
-
- if (
- isYes(procedure, FORMFIELD_REEVALUATION) && (
- !hasValue(procedure, FORMFIELD_REFTKREEVALUATION)
- || mtbReference != procedure.getValue(FORMFIELD_REFTKREEVALUATION).getInt()
- )
- ) {
- procedure.setValue(FORMFIELD_REFTKREEVALUATION, new Item("ref_tk_reevaluation", mtbReference));
- noUpdateRequired = false;
- }
-
- if (
- isYes(procedure, FORMFIELD_REEVALUATION) && (
- !hasValue(procedure, FORMFIELD_DATUMTKREEVALUATION)
- || !mtbDate.equals(procedure.getValue(FORMFIELD_DATUMTKREEVALUATION).getDate())
- )
- ) {
- procedure.setValue(FORMFIELD_DATUMTKREEVALUATION, new Item("datum_tk_reevaluation", mtbDate));
- noUpdateRequired = false;
- }
-
- if (noUpdateRequired) {
- return;
- }
-
- try {
- onkostarApi.saveProcedure(procedure, false);
- } catch (Exception e) {
- logger.error("Formular 'DNPM Therapieplan' konnte nicht aktualisiert werden", e);
- }
+ if (isYes(procedure, FORMFIELD_REEVALUATION)
+ && (!hasValue(procedure, FORMFIELD_DATUMTKREEVALUATION)
+ || !mtbDate.equals(procedure.getValue(FORMFIELD_DATUMTKREEVALUATION).getDate()))) {
+ procedure.setValue(FORMFIELD_DATUMTKREEVALUATION, new Item("datum_tk_reevaluation", mtbDate));
+ noUpdateRequired = false;
}
- private void updateMtbInSubforms(Procedure procedure) {
- if (
- !hasValue(procedure, FORMFIELD_REFERSTEMTB) || !hasValue(procedure, FORMFIELD_DATUM)
- ) {
- return;
- }
-
- var mtbReference = procedure.getValue(FORMFIELD_REFERSTEMTB).getInt();
- var mtbDate = procedure.getValue(FORMFIELD_DATUM).getDate();
-
- formService.getSubFormProcedureIds(procedure.getId()).stream()
- .map(onkostarApi::getProcedure)
- .filter(Objects::nonNull)
- .forEach(subform -> {
- if (isUsableEinzelempfehlung(subform, mtbReference, mtbDate)) {
- subform.setValue(FORMFIELD_MTB, new Item("ref_tumorkonferenz", mtbReference));
- subform.setValue(FORMFIELD_UFEEDATUM, new Item(DATAFIELD_DATUM, mtbDate));
-
- try {
- onkostarApi.saveProcedure(subform, false);
- } catch (Exception e) {
- logger.error("Formular 'DNPM UF Einzelempfehlung' konnte nicht aktualisiert werden", e);
- }
- }
-
-
- if (isUsableRebiopsie(subform, mtbReference, mtbDate)) {
- subform.setValue(FORMFIELD_REFTUMORKONFERENZ, new Item("ref_tumorkonferenz", mtbReference));
- subform.setValue(FORMFIELD_UFRBDATUM, new Item(DATAFIELD_DATUM, mtbDate));
-
- try {
- onkostarApi.saveProcedure(subform, false);
- } catch (Exception e) {
- logger.error("Formular 'DNPM UF Rebiopsie' konnte nicht aktualisiert werden", e);
- }
- }
-
- });
+ if (noUpdateRequired) {
+ return;
}
- private static boolean isUsableRebiopsie(Procedure subform, int mtbReference, Date mtbDate) {
- return subform.getFormName().equals("DNPM UF Rebiopsie") && mtbReference != subform.getValue(FORMFIELD_REFTUMORKONFERENZ).getInt() && !mtbDate.equals(subform.getValue(FORMFIELD_UFRBDATUM).getDate());
+ try {
+ onkostarApi.saveProcedure(procedure, false);
+ } catch (Exception e) {
+ logger.error("Formular 'DNPM Therapieplan' konnte nicht aktualisiert werden", e);
}
+ }
- private static boolean isUsableEinzelempfehlung(Procedure subform, int mtbReference, Date mtbDate) {
- return subform.getFormName().equals("DNPM UF Einzelempfehlung") && mtbReference != subform.getValue(FORMFIELD_MTB).getInt() && !mtbDate.equals(subform.getValue(FORMFIELD_UFEEDATUM).getDate());
+ private void updateMtbInSubforms(Procedure procedure) {
+ if (!hasValue(procedure, FORMFIELD_REFERSTEMTB) || !hasValue(procedure, FORMFIELD_DATUM)) {
+ return;
}
+ var mtbReference = procedure.getValue(FORMFIELD_REFERSTEMTB).getInt();
+ var mtbDate = procedure.getValue(FORMFIELD_DATUM).getDate();
+
+ formService.getSubFormProcedureIds(procedure.getId()).stream()
+ .map(onkostarApi::getProcedure)
+ .filter(Objects::nonNull)
+ .forEach(
+ subform -> {
+ if (isUsableEinzelempfehlung(subform, mtbReference, mtbDate)) {
+ subform.setValue(FORMFIELD_MTB, new Item("ref_tumorkonferenz", mtbReference));
+ subform.setValue(FORMFIELD_UFEEDATUM, new Item(DATAFIELD_DATUM, mtbDate));
+
+ try {
+ onkostarApi.saveProcedure(subform, false);
+ } catch (Exception e) {
+ logger.error(
+ "Formular 'DNPM UF Einzelempfehlung' konnte nicht aktualisiert werden", e);
+ }
+ }
+
+ if (isUsableRebiopsie(subform, mtbReference, mtbDate)) {
+ subform.setValue(
+ FORMFIELD_REFTUMORKONFERENZ, new Item("ref_tumorkonferenz", mtbReference));
+ subform.setValue(FORMFIELD_UFRBDATUM, new Item(DATAFIELD_DATUM, mtbDate));
+
+ try {
+ onkostarApi.saveProcedure(subform, false);
+ } catch (Exception e) {
+ logger.error("Formular 'DNPM UF Rebiopsie' konnte nicht aktualisiert werden", e);
+ }
+ }
+ });
+ }
+
+ private static boolean isUsableRebiopsie(Procedure subform, int mtbReference, Date mtbDate) {
+ return subform.getFormName().equals("DNPM UF Rebiopsie")
+ && mtbReference != subform.getValue(FORMFIELD_REFTUMORKONFERENZ).getInt()
+ && !mtbDate.equals(subform.getValue(FORMFIELD_UFRBDATUM).getDate());
+ }
+
+ private static boolean isUsableEinzelempfehlung(
+ Procedure subform, int mtbReference, Date mtbDate) {
+ return subform.getFormName().equals("DNPM UF Einzelempfehlung")
+ && mtbReference != subform.getValue(FORMFIELD_MTB).getInt()
+ && !mtbDate.equals(subform.getValue(FORMFIELD_UFEEDATUM).getDate());
+ }
}
diff --git a/src/main/java/dev/dnpm/oshelper/services/therapieplan/MultipleMtbTherapieplanService.java b/src/main/java/dev/dnpm/oshelper/services/therapieplan/MultipleMtbTherapieplanService.java
index d6cf537..ff7408e 100644
--- a/src/main/java/dev/dnpm/oshelper/services/therapieplan/MultipleMtbTherapieplanService.java
+++ b/src/main/java/dev/dnpm/oshelper/services/therapieplan/MultipleMtbTherapieplanService.java
@@ -19,73 +19,74 @@
package dev.dnpm.oshelper.services.therapieplan;
-import dev.dnpm.oshelper.services.FormService;
+import static dev.dnpm.oshelper.services.FormService.hasValue;
+import static dev.dnpm.oshelper.services.FormService.isYes;
+
import de.itc.onkostar.api.IOnkostarApi;
import de.itc.onkostar.api.Procedure;
-
+import dev.dnpm.oshelper.services.FormService;
import java.util.ArrayList;
import java.util.Comparator;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;
-import static dev.dnpm.oshelper.services.FormService.hasValue;
-import static dev.dnpm.oshelper.services.FormService.isYes;
-
@Deprecated(forRemoval = true, since = "2.0.0")
public class MultipleMtbTherapieplanService extends AbstractTherapieplanService {
- public MultipleMtbTherapieplanService(final IOnkostarApi onkostarApi, final FormService formService) {
- super(onkostarApi, formService);
- }
+ public MultipleMtbTherapieplanService(
+ final IOnkostarApi onkostarApi, final FormService formService) {
+ super(onkostarApi, formService);
+ }
- @Override
- public void updateRequiredMtbEntries(Procedure procedure) {
- // No action required
- }
+ @Override
+ public void updateRequiredMtbEntries(Procedure procedure) {
+ // No action required
+ }
- @Override
- public List<Procedure> findReferencedMtbs(Procedure procedure) {
- var procedureIds = new ArrayList<Integer>();
+ @Override
+ public List<Procedure> findReferencedMtbs(Procedure procedure) {
+ var procedureIds = new ArrayList<Integer>();
- var mtbReference = procedure.getValue("referstemtb").getInt();
- procedureIds.add(mtbReference);
+ var mtbReference = procedure.getValue("referstemtb").getInt();
+ procedureIds.add(mtbReference);
- if (isYes(procedure, "humangenberatung") && hasValue(procedure, "reftkhumangenber")) {
- procedureIds.add(procedure.getValue("reftkhumangenber").getInt());
- }
+ if (isYes(procedure, "humangenberatung") && hasValue(procedure, "reftkhumangenber")) {
+ procedureIds.add(procedure.getValue("reftkhumangenber").getInt());
+ }
- if (isYes(procedure, "reevaluation") && hasValue(procedure, "reftkreevaluation")) {
- procedureIds.add(procedure.getValue("reftkreevaluation").getInt());
- }
+ if (isYes(procedure, "reevaluation") && hasValue(procedure, "reftkreevaluation")) {
+ procedureIds.add(procedure.getValue("reftkreevaluation").getInt());
+ }
- formService.getSubFormProcedureIds(procedure.getId()).stream()
- .map(onkostarApi::getProcedure)
- .filter(Objects::nonNull)
- .forEach(subform -> {
- if (subform.getFormName().equals("DNPM UF Einzelempfehlung")) {
- procedureIds.add(subform.getValue("mtb").getInt());
- }
+ formService.getSubFormProcedureIds(procedure.getId()).stream()
+ .map(onkostarApi::getProcedure)
+ .filter(Objects::nonNull)
+ .forEach(
+ subform -> {
+ if (subform.getFormName().equals("DNPM UF Einzelempfehlung")) {
+ procedureIds.add(subform.getValue("mtb").getInt());
+ }
- if (subform.getFormName().equals("DNPM UF Rebiopsie")) {
- procedureIds.add(subform.getValue("reftumorkonferenz").getInt());
- }
- });
+ if (subform.getFormName().equals("DNPM UF Rebiopsie")) {
+ procedureIds.add(subform.getValue("reftumorkonferenz").getInt());
+ }
+ });
- return procedureIds.stream()
- .distinct()
- .map(onkostarApi::getProcedure)
- .filter(Objects::nonNull)
- .sorted(Comparator.comparing(Procedure::getStartDate))
- .collect(Collectors.toList());
- }
+ return procedureIds.stream()
+ .distinct()
+ .map(onkostarApi::getProcedure)
+ .filter(Objects::nonNull)
+ .sorted(Comparator.comparing(Procedure::getStartDate))
+ .collect(Collectors.toList());
+ }
- @Override
- public List<Procedure> findReferencedMtbs(int procedureId) {
- var procedure = this.onkostarApi.getProcedure(procedureId);
- if (null == procedure) {
- return List.of();
- }
- return findReferencedMtbs(procedure);
+ @Override
+ public List<Procedure> findReferencedMtbs(int procedureId) {
+ var procedure = this.onkostarApi.getProcedure(procedureId);
+ if (null == procedure) {
+ return List.of();
}
+ return findReferencedMtbs(procedure);
+ }
}
diff --git a/src/main/java/dev/dnpm/oshelper/services/therapieplan/TherapieplanService.java b/src/main/java/dev/dnpm/oshelper/services/therapieplan/TherapieplanService.java
index b22a75d..bfdbf76 100644
--- a/src/main/java/dev/dnpm/oshelper/services/therapieplan/TherapieplanService.java
+++ b/src/main/java/dev/dnpm/oshelper/services/therapieplan/TherapieplanService.java
@@ -20,49 +20,47 @@
package dev.dnpm.oshelper.services.therapieplan;
import de.itc.onkostar.api.Procedure;
-
import java.util.List;
public interface TherapieplanService {
- /**
- * Verlinke MTB und Übernahme Datum aus Hauptformular in weiteren Bereichen
- * "Humangenetische Beratung" und "Reevaluation" und Unterformularen, wenn erforderlich.
- *
- * @param procedure Die Prozedur mit Hauptformular
- */
- void updateRequiredMtbEntries(Procedure procedure);
-
- /**
- * Finde verlinkte MTBs in Hauptformular und Unterformularen
- *
- * @param procedure Die Prozedur mit Hauptformular
- * @return Liste mit verlinkten MTBs
- */
- List<Procedure> findReferencedMtbs(Procedure procedure);
+ /**
+ * Verlinke MTB und Übernahme Datum aus Hauptformular in weiteren Bereichen "Humangenetische
+ * Beratung" und "Reevaluation" und Unterformularen, wenn erforderlich.
+ *
+ * @param procedure Die Prozedur mit Hauptformular
+ */
+ void updateRequiredMtbEntries(Procedure procedure);
- /**
- * Finde verlinkte MTBs in Hauptformular und Unterformularen
- *
- * @param procedureId ID der Prozedur mit Hauptformular
- * @return Liste mit verlinkten MTBs
- */
- List<Procedure> findReferencedMtbs(int procedureId);
+ /**
+ * Finde verlinkte MTBs in Hauptformular und Unterformularen
+ *
+ * @param procedure Die Prozedur mit Hauptformular
+ * @return Liste mit verlinkten MTBs
+ */
+ List<Procedure> findReferencedMtbs(Procedure procedure);
- /**
- * Finde verlinkte FollowUps für DNPM UF Einzelempfehlung
- *
- * @param procedure Die DNPM UF Einzelempfehlung Prozedur
- * @return Liste mit verlinkten FollowUps
- */
- List<Procedure> findReferencedFollowUpsForSubform(Procedure procedure);
+ /**
+ * Finde verlinkte MTBs in Hauptformular und Unterformularen
+ *
+ * @param procedureId ID der Prozedur mit Hauptformular
+ * @return Liste mit verlinkten MTBs
+ */
+ List<Procedure> findReferencedMtbs(int procedureId);
- /**
- * Finde verlinkte FollowUps für DNPM UF Einzelempfehlung
- *
- * @param procedureId ID der Prozedur
- * @return Liste mit verlinkten FollowUps
- */
- List<Procedure> findReferencedFollowUpsForSubform(int procedureId);
+ /**
+ * Finde verlinkte FollowUps für DNPM UF Einzelempfehlung
+ *
+ * @param procedure Die DNPM UF Einzelempfehlung Prozedur
+ * @return Liste mit verlinkten FollowUps
+ */
+ List<Procedure> findReferencedFollowUpsForSubform(Procedure procedure);
+ /**
+ * Finde verlinkte FollowUps für DNPM UF Einzelempfehlung
+ *
+ * @param procedureId ID der Prozedur
+ * @return Liste mit verlinkten FollowUps
+ */
+ List<Procedure> findReferencedFollowUpsForSubform(int procedureId);
}
diff --git a/src/main/java/dev/dnpm/oshelper/services/therapieplan/TherapieplanServiceFactory.java b/src/main/java/dev/dnpm/oshelper/services/therapieplan/TherapieplanServiceFactory.java
index 0b9222c..889f9c8 100644
--- a/src/main/java/dev/dnpm/oshelper/services/therapieplan/TherapieplanServiceFactory.java
+++ b/src/main/java/dev/dnpm/oshelper/services/therapieplan/TherapieplanServiceFactory.java
@@ -19,28 +19,26 @@
package dev.dnpm.oshelper.services.therapieplan;
+import de.itc.onkostar.api.IOnkostarApi;
import dev.dnpm.oshelper.services.FormService;
import dev.dnpm.oshelper.services.SettingsService;
-import de.itc.onkostar.api.IOnkostarApi;
public class TherapieplanServiceFactory {
- private final IOnkostarApi onkostarApi;
-
- private final FormService formService;
+ private final IOnkostarApi onkostarApi;
- @SuppressWarnings("unused")
- public TherapieplanServiceFactory(
- final IOnkostarApi onkostarApi,
- final SettingsService settingsService,
- final FormService formService
- ) {
- this.onkostarApi = onkostarApi;
- this.formService = formService;
- }
+ private final FormService formService;
- public TherapieplanService currentUsableInstance() {
- return new DefaultTherapieplanService(onkostarApi, formService);
- }
+ @SuppressWarnings("unused")
+ public TherapieplanServiceFactory(
+ final IOnkostarApi onkostarApi,
+ final SettingsService settingsService,
+ final FormService formService) {
+ this.onkostarApi = onkostarApi;
+ this.formService = formService;
+ }
+ public TherapieplanService currentUsableInstance() {
+ return new DefaultTherapieplanService(onkostarApi, formService);
+ }
}