1
0
mirror of https://github.com/pcvolkmer/onkostar-plugin-dnpm.git synced 2025-07-05 10:32:54 +00:00
Files
onkostar-plugin-dnpm/src/main/java/DNPM/services/therapieplan/AbstractTherapieplanService.java

43 lines
1.5 KiB
Java

package DNPM.services.therapieplan;
import DNPM.services.FormService;
import de.itc.onkostar.api.IOnkostarApi;
import de.itc.onkostar.api.Procedure;
import java.util.List;
import java.util.stream.Collectors;
public abstract class AbstractTherapieplanService implements TherapieplanService {
protected final IOnkostarApi onkostarApi;
protected final FormService formService;
public AbstractTherapieplanService(final IOnkostarApi onkostarApi, final FormService formService) {
this.onkostarApi = onkostarApi;
this.formService = formService;
}
@Override
public List<Procedure> findReferencedFollowUpsForSubform(Procedure procedure) {
if (null == procedure || !"DNPM UF Einzelempfehlung".equals(procedure.getFormName())) {
return List.of();
}
return procedure.getDiseaseIds().stream()
.flatMap(diseaseId -> onkostarApi.getProceduresForDiseaseByForm(diseaseId, "DNPM FollowUp").stream())
.filter(p -> p.getValue("LinkTherapieempfehlung").getInt() == procedure.getId())
.collect(Collectors.toList());
}
@Override
public List<Procedure> findReferencedFollowUpsForSubform(int procedureId) {
var procedure = this.onkostarApi.getProcedure(procedureId);
if (null == procedure || !"DNPM UF Einzelempfehlung".equals(procedure.getFormName())) {
return List.of();
}
return findReferencedFollowUpsForSubform(procedure);
}
}