blob: 06ab9d2daecc745bdcfec4dde8bbc780f94b8780 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
package DNPM.services.molekulargenetik;
import DNPM.dto.Variant;
import DNPM.security.PersonPoolSecured;
import de.itc.onkostar.api.Procedure;
import java.util.List;
import java.util.Optional;
import java.util.stream.Collectors;
public class OsMolekulargenetikFormService implements MolekulargenetikFormService {
/**
* Ermittelt alle (unterstützten) Varianten zur Prozedur eines Formulars "OS.Molekulargenetik"
* Unterstützte Varianten sind:
* <uL>
* <li>Einfache Variante
* <li>CNV
* <li>Fusion
* @param procedure Die Prozedur zum Formular "OS.Molekulargenetik"
* @return Die unterstützten Varianten oder eine leere Liste, wenn keine Varianten gefunden wurden.
*/
@Override
@PersonPoolSecured
public List<Variant> getVariants(Procedure procedure) {
if (! "OS.Molekulargenetik".equals(procedure.getFormName())) {
return List.of();
}
var subforms = procedure.getSubProceduresMap().get("MolekulargenetischeUntersuchung");
if (null == subforms) {
return List.of();
}
return subforms.stream()
.map(Variant::fromProcedure)
.filter(Optional::isPresent)
.map(Optional::get)
.collect(Collectors.toList());
}
}
|