|
25 | 25 |
|
26 | 26 | import org.camunda.bpm.engine.delegate.BpmnError; |
27 | 27 | import org.camunda.bpm.engine.delegate.DelegateExecution; |
28 | | -import org.hl7.fhir.r4.model.Bundle; |
| 28 | +import org.hl7.fhir.r4.model.*; |
29 | 29 | import org.hl7.fhir.r4.model.Bundle.BundleEntryComponent; |
30 | 30 | import org.hl7.fhir.r4.model.Bundle.BundleType; |
31 | 31 | import org.hl7.fhir.r4.model.Bundle.HTTPVerb; |
32 | | -import org.hl7.fhir.r4.model.CanonicalType; |
33 | | -import org.hl7.fhir.r4.model.Condition; |
34 | 32 | import org.hl7.fhir.r4.model.Condition.ConditionEvidenceComponent; |
35 | 33 | import org.hl7.fhir.r4.model.Condition.ConditionStageComponent; |
36 | | -import org.hl7.fhir.r4.model.Consent; |
37 | 34 | import org.hl7.fhir.r4.model.Consent.ConsentVerificationComponent; |
38 | 35 | import org.hl7.fhir.r4.model.Consent.provisionActorComponent; |
39 | 36 | import org.hl7.fhir.r4.model.Consent.provisionComponent; |
40 | 37 | import org.hl7.fhir.r4.model.Consent.provisionDataComponent; |
41 | | -import org.hl7.fhir.r4.model.DateTimeType; |
42 | | -import org.hl7.fhir.r4.model.DiagnosticReport; |
43 | 38 | import org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportMediaComponent; |
44 | | -import org.hl7.fhir.r4.model.DomainResource; |
45 | | -import org.hl7.fhir.r4.model.Encounter; |
46 | 39 | import org.hl7.fhir.r4.model.Encounter.DiagnosisComponent; |
47 | 40 | import org.hl7.fhir.r4.model.Encounter.EncounterHospitalizationComponent; |
48 | 41 | import org.hl7.fhir.r4.model.Encounter.EncounterLocationComponent; |
49 | 42 | import org.hl7.fhir.r4.model.Encounter.EncounterParticipantComponent; |
50 | | -import org.hl7.fhir.r4.model.IdType; |
51 | | -import org.hl7.fhir.r4.model.Identifier; |
52 | | -import org.hl7.fhir.r4.model.Immunization; |
53 | 43 | import org.hl7.fhir.r4.model.Immunization.ImmunizationPerformerComponent; |
54 | 44 | import org.hl7.fhir.r4.model.Immunization.ImmunizationProtocolAppliedComponent; |
55 | 45 | import org.hl7.fhir.r4.model.Immunization.ImmunizationReactionComponent; |
56 | | -import org.hl7.fhir.r4.model.InstantType; |
57 | | -import org.hl7.fhir.r4.model.Medication; |
58 | 46 | import org.hl7.fhir.r4.model.Medication.MedicationIngredientComponent; |
59 | | -import org.hl7.fhir.r4.model.MedicationAdministration; |
60 | 47 | import org.hl7.fhir.r4.model.MedicationAdministration.MedicationAdministrationPerformerComponent; |
61 | | -import org.hl7.fhir.r4.model.MedicationStatement; |
62 | | -import org.hl7.fhir.r4.model.Meta; |
63 | | -import org.hl7.fhir.r4.model.Observation; |
64 | | -import org.hl7.fhir.r4.model.Patient; |
65 | 48 | import org.hl7.fhir.r4.model.Patient.ContactComponent; |
66 | 49 | import org.hl7.fhir.r4.model.Patient.PatientLinkComponent; |
67 | | -import org.hl7.fhir.r4.model.Procedure; |
68 | 50 | import org.hl7.fhir.r4.model.Procedure.ProcedureFocalDeviceComponent; |
69 | 51 | import org.hl7.fhir.r4.model.Procedure.ProcedurePerformerComponent; |
70 | | -import org.hl7.fhir.r4.model.Reference; |
71 | | -import org.hl7.fhir.r4.model.Resource; |
72 | | -import org.hl7.fhir.r4.model.Task; |
73 | 52 | import org.slf4j.Logger; |
74 | 53 | import org.slf4j.LoggerFactory; |
75 | 54 |
|
@@ -645,7 +624,6 @@ else if (resource instanceof Observation o) |
645 | 624 | cleanUnsupportedReferences(o, "Observation.focus", Observation::hasFocus, Observation::setFocus); |
646 | 625 | cleanUnsupportedReferences(o, "Observation.performer", Observation::hasPerformer, |
647 | 626 | Observation::setPerformer); |
648 | | - cleanUnsupportedReference(o, "Observation.specimen", Observation::hasSpecimen, Observation::setSpecimen); |
649 | 627 | cleanUnsupportedReference(o, "Observation.device", Observation::hasDevice, Observation::setDevice); |
650 | 628 | cleanUnsupportedReferences(o, "Observation.derivedFrom", Observation::hasDerivedFrom, |
651 | 629 | Observation::setDerivedFrom); |
@@ -674,6 +652,11 @@ else if (resource instanceof Procedure p) |
674 | 652 | cleanUnsupportedReferences(p, "Procedure.usedReference", Procedure::hasUsedReference, |
675 | 653 | Procedure::setUsedReference); |
676 | 654 | } |
| 655 | + else if (resource instanceof Specimen s) |
| 656 | + { |
| 657 | + // todo |
| 658 | + |
| 659 | + } |
677 | 660 | else |
678 | 661 | throw new RuntimeException("Resource of type " + resource.getResourceType().name() + " not supported"); |
679 | 662 | } |
@@ -741,6 +724,12 @@ else if (resource instanceof Procedure p) |
741 | 724 | p.setIdentifier(Collections.emptyList()); |
742 | 725 | p.setSubject(patientRef); |
743 | 726 | } |
| 727 | + else if (resource instanceof Specimen s) |
| 728 | + { |
| 729 | + s.setIdentifier(Collections.emptyList()); |
| 730 | + s.setAccessionIdentifier(null); |
| 731 | + s.setSubject(patientRef); |
| 732 | + } |
744 | 733 | else |
745 | 734 | throw new RuntimeException("Resource of type " + resource.getResourceType().name() + " not supported"); |
746 | 735 | } |
|
0 commit comments