1
0
mirror of https://github.com/pcvolkmer/onkostar-plugin-dnpm.git synced 2025-07-02 01:02:55 +00:00

Dokumentation im Paket 'mtb'

This commit is contained in:
2023-04-23 16:13:46 +02:00
parent 2808e55c40
commit d07abfcfc3
5 changed files with 47 additions and 4 deletions

View File

@ -21,14 +21,20 @@ public class DefaultMtbService implements MtbService {
this.onkostarApi = onkostarApi;
}
/**
* Zusammenfassung der Prozeduren.
* Dabei werden alle Prozeduren sortiert, mit ermitteltem Mapper in {@link Optional} eines {@link String}s
* gewandelt und, wenn dies erfolgreich war, die Zeichenkette extrahiert.
* Im Anschluss wird die Abfolge der Zeichenketten mit den einzelnen Prozedur-Zusammenfassungen in eine
* einzige Zusammenfassung zusammengefügt.
* @param procedures Prozeduren, die zusammen gefasst werden sollen
* @return Text mit Zusammenfassung aller übergebenen Prozeduren
*/
@Override
public String getProtocol(List<Procedure> procedures) {
return procedures.stream()
.sorted(Comparator.comparing(Procedure::getStartDate))
.map(procedure -> {
var mapper = procedureToProtocolMapper(procedure);
return mapper.apply(procedure);
})
.map(procedure -> this.procedureToProtocolMapper(procedure).apply(procedure))
.filter(Optional::isPresent)
.map(Optional::get)
.distinct()
@ -36,6 +42,13 @@ public class DefaultMtbService implements MtbService {
}
/**
* Übergibt anzuwendenden Mapper für eine Prozedur.
* Wurde keine Implementierung festgelegt, wird ein Mapper zurückgegeben, der eine
* Prozedur in ein leeres {@link Optional} zurück gibt, übergeben.
* @param procedure Prozedur, für die ein Mapper ermittelt werden soll
* @return Mapper für diese Prozedur
*/
@Override
public ProcedureToProtocolMapper procedureToProtocolMapper(Procedure procedure) {
switch (procedure.getFormName()) {

View File

@ -15,6 +15,12 @@ public class MrMtbAnmeldungToProtocolMapper implements ProcedureToProtocolMapper
this.onkostarApi = onkostarApi;
}
/**
* Wandelt eine Prozedur mit Formularnamen "MR.MTB_Anmeldung" in ein {@link Optional} mit einer
* Zeichenkette oder im Fehlerfall in ein leeres Optional um.
* @param procedure Die Prozedur, für die eine Zusammenfassung ermittelt werden soll.
* @return Das {@link Optional} mit, im Erfolgsfall, der Zusammenfassung für die Prozedur.
*/
@Override
public Optional<String> apply(Procedure procedure) {
assert (procedure.getFormName().equals("MR.MTB_Anmeldung"));

View File

@ -5,7 +5,17 @@ import de.itc.onkostar.api.Procedure;
import java.util.List;
public interface MtbService {
/**
* Zusammenfassung der Prozeduren
* @param procedures Prozeduren, die zusammen gefasst werden sollen
* @return Text mit Zusammenfassung der Prozeduren
*/
String getProtocol(List<Procedure> procedures);
/**
* Übergibt anzuwendenden Mapper für eine Prozedur
* @param procedure Prozedur, für die ein Mapper ermittelt werden soll
* @return Mapper für diese Prozedur
*/
ProcedureToProtocolMapper procedureToProtocolMapper(Procedure procedure);
}

View File

@ -11,6 +11,13 @@ import java.util.Optional;
* @since 0.0.2
*/
public class OsTumorkonferenzToProtocolMapper implements ProcedureToProtocolMapper {
/**
* Wandelt eine Prozedur mit Formularnamen "OS.Tumorkonferenz" in ein {@link Optional} mit einer
* Zeichenkette oder im Fehlerfall in ein leeres Optional um.
* @param procedure Die Prozedur, für die eine Zusammenfassung ermittelt werden soll.
* @return Das {@link Optional} mit, im Erfolgsfall, der Zusammenfassung für die Prozedur.
*/
@Override
public Optional<String> apply(Procedure procedure) {
assert(procedure.getFormName().equals("OS.Tumorkonferenz"));

View File

@ -10,6 +10,13 @@ import java.util.Optional;
* @since 0.0.2
*/
public class OsTumorkonferenzVarianteUkwToProtocolMapper implements ProcedureToProtocolMapper {
/**
* Wandelt eine Prozedur mit Formularnamen "OS.Tumorkonferenz.VarianteUKW" in ein {@link Optional} mit einer
* Zeichenkette oder im Fehlerfall in ein leeres Optional um.
* @param procedure Die Prozedur, für die eine Zusammenfassung ermittelt werden soll.
* @return Das {@link Optional} mit, im Erfolgsfall, der Zusammenfassung für die Prozedur.
*/
@Override
public Optional<String> apply(Procedure procedure) {
assert (procedure.getFormName().equals("OS.Tumorkonferenz.VarianteUKW"));