diff options
| author | Paul-Christian Volkmer | 2023-03-28 14:30:36 +0200 |
|---|---|---|
| committer | Paul-Christian Volkmer | 2023-03-28 14:30:36 +0200 |
| commit | 2402a1ff018f0ce762ac17cdc4114f8e3bec6f7f (patch) | |
| tree | f1e7c0e8ed534b30e0fb49b23b45491ade314b4a /src/main | |
| parent | 4c0d94f28ef576e57e03bcb37e94816b71aa6508 (diff) | |
Verwende konkrete Rückgabetypen und füge weitere Prüfungen für InputMap hinzu
Diffstat (limited to 'src/main')
| -rw-r--r-- | src/main/java/DNPM/DNPMHelper.java | 33 |
1 files changed, 21 insertions, 12 deletions
diff --git a/src/main/java/DNPM/DNPMHelper.java b/src/main/java/DNPM/DNPMHelper.java index f964cb8..e8a8770 100644 --- a/src/main/java/DNPM/DNPMHelper.java +++ b/src/main/java/DNPM/DNPMHelper.java @@ -83,11 +83,16 @@ public class DNPMHelper implements IProcedureAnalyzer { } @SuppressWarnings("unchecked") - public Object getVerweise(final Map<String, Object> input) { - int ProcedureId = (int) input.get("ProcedureId"); - int PatientId = (int) input.get("PatientId"); + public List<Map<String, String>> getVerweise(final Map<String, Object> input) { + var procedureId = AnalyzerUtils.getRequiredId(input, "ProcedureId"); + var patientId = AnalyzerUtils.getRequiredId(input, "PatientId"); + + if (procedureId.isEmpty() || patientId.isEmpty()) { + return null; + } + int value = 0; - List<Map<String, String>> VerbundeneFormulare = new ArrayList<Map<String, String>>(); + var VerbundeneFormulare = new ArrayList<Map<String, String>>(); try { SessionFactory sessionFactory = onkostarApi.getSessionFactory(); @@ -99,7 +104,7 @@ public class DNPMHelper implements IProcedureAnalyzer { "LEFT JOIN data_catalogue_entry ON data_catalogue_entry.data_catalogue_id = data_form_data_catalogue.data_catalogue_id " + "LEFT JOIN data_catalogue ON data_catalogue.id = data_catalogue_entry.data_catalogue_id " + "LEFT JOIN data_form ON data_form.id = prozedur.data_form_id " + - "WHERE patient_id = " + PatientId + " " + + "WHERE patient_id = " + patientId.get() + " " + "AND geloescht = 0 " + "AND data_catalogue_entry.type = 'formReference' " + "GROUP BY prozedur.id, prozedur.data_form_id, data_catalogue.name, data_catalogue_entry.name"; @@ -122,7 +127,7 @@ public class DNPMHelper implements IProcedureAnalyzer { if (query.uniqueResult() != null) { value = (Integer) query.uniqueResult(); } - if (value == ProcedureId) { + if (value == procedureId.get()) { VerbundeneFormulare.add(Map.of("formular", var.getVerbundenesFormular())); value = 0; } @@ -150,18 +155,22 @@ public class DNPMHelper implements IProcedureAnalyzer { return systemtherapieService.getSystemischeTherapienFromDiagnose(diagnoseId.get()); } - public Object getProzedurenFromDiagnose(final Map<String, Object> input) { - String dataForm = (String) input.get("dataForm"); - int DiagnoseId = (int) input.get("DiagnoseId"); - int PatientId = (int) input.get("PatientId"); + public String getProzedurenFromDiagnose(final Map<String, Object> input) { // Prozedur, Feldname, Wert + var dataForm = AnalyzerUtils.getRequiredValue(input, "dataForm", String.class); + var diagnoseId = AnalyzerUtils.getRequiredId(input, "DiagnoseId"); + var patientId = AnalyzerUtils.getRequiredId(input, "PatientId"); + + if (dataForm.isEmpty() || diagnoseId.isEmpty() || patientId.isEmpty()) { + return ""; + } List<Object> Formulare = new ArrayList<Object>(); String jsonStr = ""; - List<Procedure> Prozeduren = onkostarApi.getProceduresByPatientId(PatientId); + List<Procedure> Prozeduren = onkostarApi.getProceduresByPatientId(patientId.get()); for (Procedure Prozedur : Prozeduren) { // Formular gehört zur aktuellen Diagnose und hat den angegebenen Namen - if (Prozedur.getDiseaseIds().contains(DiagnoseId) && Prozedur.getFormName().contains(dataForm)) { + if (Prozedur.getDiseaseIds().contains(diagnoseId.get()) && Prozedur.getFormName().contains(dataForm.get())) { // alle Werte auslesen Map<String, Item> Werte = Prozedur.getAllValues(); Map<String, Object> Values = new HashMap<>(); |
