mirror of
https://github.com/pcvolkmer/onkostar-plugin-dnpm.git
synced 2025-07-03 01:32:55 +00:00
Issue #29: Methoden zum Anlegen und Aktualisieren des Ecog-Verlaufs extrahiert
This commit is contained in:
@ -117,13 +117,21 @@ public class SystemtherapieAnalyzer implements IProcedureAnalyzer {
|
||||
.forEach(p -> {
|
||||
var ufEcog = p.getValue("ECOGVerlauf");
|
||||
if (null != ufEcog && ufEcog.getValue() instanceof List) {
|
||||
updateExistingEcogVerlauf(p, ecogFromCompleted, ufEcog);
|
||||
} else {
|
||||
newEcogverlauf(p, ecogFromCompleted);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
private void updateExistingEcogVerlauf(Procedure p, List<SystemtherapieService.EcogStatusWithDate> ecogFromCompleted, Item ufEcog) {
|
||||
var shouldSave = false;
|
||||
var existingDates = ufEcog.<List<Map<String, String>>>getValue().stream()
|
||||
.map(v -> v.get("Datum"))
|
||||
.collect(Collectors.toList());
|
||||
for (var ecog : ecogFromCompleted) {
|
||||
var formattedDate = new SimpleDateFormat("yyyy-MM-dd").format(ecog.getDate());
|
||||
if (! existingDates.contains(formattedDate)) {
|
||||
if (!existingDates.contains(formattedDate)) {
|
||||
var newSubProcedure = new Procedure(onkostarApi);
|
||||
newSubProcedure.setStartDate(ecog.getDate());
|
||||
newSubProcedure.setValue("Datum", new Item("Datum", ecog.getDate()));
|
||||
@ -139,7 +147,9 @@ public class SystemtherapieAnalyzer implements IProcedureAnalyzer {
|
||||
logger.error("Cannot update ECOG for procedure '{}'", p.getId());
|
||||
}
|
||||
}
|
||||
} else {
|
||||
}
|
||||
|
||||
private void newEcogverlauf(Procedure p, List<SystemtherapieService.EcogStatusWithDate> ecogFromCompleted) {
|
||||
p.setValue("ECOGVerlauf", new Item("ECOGVerlauf", List.of()));
|
||||
for (var ecog : ecogFromCompleted) {
|
||||
var newSubProcedure = new Procedure(onkostarApi);
|
||||
@ -154,7 +164,5 @@ public class SystemtherapieAnalyzer implements IProcedureAnalyzer {
|
||||
logger.error("Create update ECOG for procedure '{}'", p.getId());
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
|
Reference in New Issue
Block a user