diff options
| author | Paul-Christian Volkmer | 2023-03-20 16:43:07 +0100 |
|---|---|---|
| committer | Paul-Christian Volkmer | 2023-03-20 22:29:32 +0100 |
| commit | 887221d5aec7fbe32a86b705b33aa4b5d2fa7062 (patch) | |
| tree | 665c53fd39595acca562cd7758e5cf919fc1fab5 /src/main/java/DNPM/services/mtb/DefaultMtbService.java | |
| parent | ef5c91a352788a2ad84afa18fa0c7cdadec70ed8 (diff) | |
Issue #11: Service zum Generieren des Protokollauszugs aus MTBs
Implementierungen vorhanden für die Formulare:
* OS.Tumorkonferenz
* OS.Tumorkonferenz.VarianteUKW
Diffstat (limited to 'src/main/java/DNPM/services/mtb/DefaultMtbService.java')
| -rw-r--r-- | src/main/java/DNPM/services/mtb/DefaultMtbService.java | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/src/main/java/DNPM/services/mtb/DefaultMtbService.java b/src/main/java/DNPM/services/mtb/DefaultMtbService.java new file mode 100644 index 0000000..40d9360 --- /dev/null +++ b/src/main/java/DNPM/services/mtb/DefaultMtbService.java @@ -0,0 +1,39 @@ +package DNPM.services.mtb; + +import DNPM.services.SettingsService; +import de.itc.onkostar.api.Procedure; + +import java.util.List; + +public class DefaultMtbService implements MtbService { + + private final SettingsService settingsService; + + public DefaultMtbService(final SettingsService settingsService) { + this.settingsService = settingsService; + } + + @Override + public String getProtocol(List<Procedure> procedures) { + ProcedureToProtocolMapper mapper = null; + var sid = settingsService.getSID(); + + if (sid.isPresent()) { + switch (sid.get()) { + case "20119": + mapper = new OsTumorkonferenzVarianteUkwToProtocolMapper(); + default: + if (!settingsService.multipleMtbsInMtbEpisode()) { + mapper = new OsTumorkonferenzToProtocolMapper(); + } + } + } + + if (null == mapper) { + return ""; + } + + return mapper.apply(procedures).orElse(""); + } + +} |
