
001package org.hl7.fhir.convertors.conv30_50.resources30_50; 002 003import org.hl7.fhir.convertors.context.ConversionContext30_50; 004import org.hl7.fhir.convertors.conv30_50.datatypes30_50.Reference30_50; 005import org.hl7.fhir.convertors.conv30_50.datatypes30_50.complextypes30_50.CodeableConcept30_50; 006import org.hl7.fhir.convertors.conv30_50.datatypes30_50.complextypes30_50.Identifier30_50; 007import org.hl7.fhir.convertors.conv30_50.datatypes30_50.primitivetypes30_50.Decimal30_50; 008import org.hl7.fhir.convertors.conv30_50.datatypes30_50.primitivetypes30_50.String30_50; 009import org.hl7.fhir.dstu3.model.RiskAssessment; 010import org.hl7.fhir.exceptions.FHIRException; 011import org.hl7.fhir.r5.model.Enumeration; 012import org.hl7.fhir.r5.model.Enumerations; 013 014public class RiskAssessment30_50 { 015 016 public static org.hl7.fhir.r5.model.RiskAssessment convertRiskAssessment(org.hl7.fhir.dstu3.model.RiskAssessment src) throws FHIRException { 017 if (src == null) 018 return null; 019 org.hl7.fhir.r5.model.RiskAssessment tgt = new org.hl7.fhir.r5.model.RiskAssessment(); 020 ConversionContext30_50.INSTANCE.getVersionConvertor_30_50().copyDomainResource(src, tgt); 021 if (src.hasIdentifier()) 022 tgt.addIdentifier(Identifier30_50.convertIdentifier(src.getIdentifier())); 023 if (src.hasBasedOn()) 024 tgt.setBasedOn(Reference30_50.convertReference(src.getBasedOn())); 025 if (src.hasParent()) 026 tgt.setParent(Reference30_50.convertReference(src.getParent())); 027 if (src.hasStatus()) 028 tgt.setStatusElement(convertRiskAssessmentStatus(src.getStatusElement())); 029 if (src.hasMethod()) 030 tgt.setMethod(CodeableConcept30_50.convertCodeableConcept(src.getMethod())); 031 if (src.hasCode()) 032 tgt.setCode(CodeableConcept30_50.convertCodeableConcept(src.getCode())); 033 if (src.hasSubject()) 034 tgt.setSubject(Reference30_50.convertReference(src.getSubject())); 035 if (src.hasContext()) 036 tgt.setEncounter(Reference30_50.convertReference(src.getContext())); 037 if (src.hasOccurrence()) 038 tgt.setOccurrence(ConversionContext30_50.INSTANCE.getVersionConvertor_30_50().convertType(src.getOccurrence())); 039 if (src.hasCondition()) 040 tgt.setCondition(Reference30_50.convertReference(src.getCondition())); 041 if (src.hasPerformer()) 042 tgt.setPerformer(Reference30_50.convertReference(src.getPerformer())); 043 if (src.hasReason()) { 044 if (src.getReason() instanceof org.hl7.fhir.dstu3.model.CodeableConcept) 045 tgt.addReason(Reference30_50.convertCodeableConceptToCodableReference((org.hl7.fhir.dstu3.model.CodeableConcept) src.getReason())); 046 else if (src.getReason() instanceof org.hl7.fhir.dstu3.model.Reference) 047 tgt.addReason(Reference30_50.convertReferenceToCodableReference((org.hl7.fhir.dstu3.model.Reference) src.getReason())); 048 } 049 for (org.hl7.fhir.dstu3.model.Reference t : src.getBasis()) tgt.addBasis(Reference30_50.convertReference(t)); 050 for (org.hl7.fhir.dstu3.model.RiskAssessment.RiskAssessmentPredictionComponent t : src.getPrediction()) 051 tgt.addPrediction(convertRiskAssessmentPredictionComponent(t)); 052 if (src.hasMitigation()) 053 tgt.setMitigationElement(String30_50.convertString(src.getMitigationElement())); 054 if (src.hasComment()) 055 tgt.addNote().setText(src.getComment()); 056 return tgt; 057 } 058 059 public static org.hl7.fhir.dstu3.model.RiskAssessment convertRiskAssessment(org.hl7.fhir.r5.model.RiskAssessment src) throws FHIRException { 060 if (src == null) 061 return null; 062 org.hl7.fhir.dstu3.model.RiskAssessment tgt = new org.hl7.fhir.dstu3.model.RiskAssessment(); 063 ConversionContext30_50.INSTANCE.getVersionConvertor_30_50().copyDomainResource(src, tgt); 064 if (src.hasIdentifier()) 065 tgt.setIdentifier(Identifier30_50.convertIdentifier(src.getIdentifierFirstRep())); 066 if (src.hasBasedOn()) 067 tgt.setBasedOn(Reference30_50.convertReference(src.getBasedOn())); 068 if (src.hasParent()) 069 tgt.setParent(Reference30_50.convertReference(src.getParent())); 070 if (src.hasStatus()) 071 tgt.setStatusElement(convertRiskAssessmentStatus(src.getStatusElement())); 072 if (src.hasMethod()) 073 tgt.setMethod(CodeableConcept30_50.convertCodeableConcept(src.getMethod())); 074 if (src.hasCode()) 075 tgt.setCode(CodeableConcept30_50.convertCodeableConcept(src.getCode())); 076 if (src.hasSubject()) 077 tgt.setSubject(Reference30_50.convertReference(src.getSubject())); 078 if (src.hasEncounter()) 079 tgt.setContext(Reference30_50.convertReference(src.getEncounter())); 080 if (src.hasOccurrence()) 081 tgt.setOccurrence(ConversionContext30_50.INSTANCE.getVersionConvertor_30_50().convertType(src.getOccurrence())); 082 if (src.hasCondition()) 083 tgt.setCondition(Reference30_50.convertReference(src.getCondition())); 084 if (src.hasPerformer()) 085 tgt.setPerformer(Reference30_50.convertReference(src.getPerformer())); 086 if (src.hasReason() && src.getReasonFirstRep().hasConcept()) 087 tgt.setReason(ConversionContext30_50.INSTANCE.getVersionConvertor_30_50().convertType(src.getReasonFirstRep().getConcept())); 088 if (src.hasReason() && src.getReasonFirstRep().hasReference()) 089 tgt.setReason(ConversionContext30_50.INSTANCE.getVersionConvertor_30_50().convertType(src.getReasonFirstRep().getReference())); 090 for (org.hl7.fhir.r5.model.Reference t : src.getBasis()) tgt.addBasis(Reference30_50.convertReference(t)); 091 for (org.hl7.fhir.r5.model.RiskAssessment.RiskAssessmentPredictionComponent t : src.getPrediction()) 092 tgt.addPrediction(convertRiskAssessmentPredictionComponent(t)); 093 if (src.hasMitigation()) 094 tgt.setMitigationElement(String30_50.convertString(src.getMitigationElement())); 095 if (src.hasNote()) 096 tgt.setComment(src.getNoteFirstRep().getText()); 097 return tgt; 098 } 099 100 public static org.hl7.fhir.r5.model.RiskAssessment.RiskAssessmentPredictionComponent convertRiskAssessmentPredictionComponent(org.hl7.fhir.dstu3.model.RiskAssessment.RiskAssessmentPredictionComponent src) throws FHIRException { 101 if (src == null) 102 return null; 103 org.hl7.fhir.r5.model.RiskAssessment.RiskAssessmentPredictionComponent tgt = new org.hl7.fhir.r5.model.RiskAssessment.RiskAssessmentPredictionComponent(); 104 ConversionContext30_50.INSTANCE.getVersionConvertor_30_50().copyBackboneElement(src,tgt); 105 if (src.hasOutcome()) 106 tgt.setOutcome(CodeableConcept30_50.convertCodeableConcept(src.getOutcome())); 107 if (src.hasProbability()) 108 tgt.setProbability(ConversionContext30_50.INSTANCE.getVersionConvertor_30_50().convertType(src.getProbability())); 109 if (src.hasQualitativeRisk()) 110 tgt.setQualitativeRisk(CodeableConcept30_50.convertCodeableConcept(src.getQualitativeRisk())); 111 if (src.hasRelativeRisk()) 112 tgt.setRelativeRiskElement(Decimal30_50.convertDecimal(src.getRelativeRiskElement())); 113 if (src.hasWhen()) 114 tgt.setWhen(ConversionContext30_50.INSTANCE.getVersionConvertor_30_50().convertType(src.getWhen())); 115 if (src.hasRationale()) 116 tgt.setRationaleElement(String30_50.convertString(src.getRationaleElement())); 117 return tgt; 118 } 119 120 public static org.hl7.fhir.dstu3.model.RiskAssessment.RiskAssessmentPredictionComponent convertRiskAssessmentPredictionComponent(org.hl7.fhir.r5.model.RiskAssessment.RiskAssessmentPredictionComponent src) throws FHIRException { 121 if (src == null) 122 return null; 123 org.hl7.fhir.dstu3.model.RiskAssessment.RiskAssessmentPredictionComponent tgt = new org.hl7.fhir.dstu3.model.RiskAssessment.RiskAssessmentPredictionComponent(); 124 ConversionContext30_50.INSTANCE.getVersionConvertor_30_50().copyBackboneElement(src,tgt); 125 if (src.hasOutcome()) 126 tgt.setOutcome(CodeableConcept30_50.convertCodeableConcept(src.getOutcome())); 127 if (src.hasProbability()) 128 tgt.setProbability(ConversionContext30_50.INSTANCE.getVersionConvertor_30_50().convertType(src.getProbability())); 129 if (src.hasQualitativeRisk()) 130 tgt.setQualitativeRisk(CodeableConcept30_50.convertCodeableConcept(src.getQualitativeRisk())); 131 if (src.hasRelativeRisk()) 132 tgt.setRelativeRiskElement(Decimal30_50.convertDecimal(src.getRelativeRiskElement())); 133 if (src.hasWhen()) 134 tgt.setWhen(ConversionContext30_50.INSTANCE.getVersionConvertor_30_50().convertType(src.getWhen())); 135 if (src.hasRationale()) 136 tgt.setRationaleElement(String30_50.convertString(src.getRationaleElement())); 137 return tgt; 138 } 139 140 static public org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.Enumerations.ObservationStatus> convertRiskAssessmentStatus(org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.RiskAssessment.RiskAssessmentStatus> src) throws FHIRException { 141 if (src == null || src.isEmpty()) 142 return null; 143 Enumeration<Enumerations.ObservationStatus> tgt = new Enumeration<>(new Enumerations.ObservationStatusEnumFactory()); 144 ConversionContext30_50.INSTANCE.getVersionConvertor_30_50().copyElement(src, tgt); 145 if (src.getValue() == null) { 146 tgt.setValue(null); 147 } else { 148 switch (src.getValue()) { 149 case REGISTERED: 150 tgt.setValue(Enumerations.ObservationStatus.REGISTERED); 151 break; 152 case PRELIMINARY: 153 tgt.setValue(Enumerations.ObservationStatus.PRELIMINARY); 154 break; 155 case FINAL: 156 tgt.setValue(Enumerations.ObservationStatus.FINAL); 157 break; 158 case AMENDED: 159 tgt.setValue(Enumerations.ObservationStatus.AMENDED); 160 break; 161 case CORRECTED: 162 tgt.setValue(Enumerations.ObservationStatus.CORRECTED); 163 break; 164 case CANCELLED: 165 tgt.setValue(Enumerations.ObservationStatus.CANCELLED); 166 break; 167 case ENTEREDINERROR: 168 tgt.setValue(Enumerations.ObservationStatus.ENTEREDINERROR); 169 break; 170 case UNKNOWN: 171 tgt.setValue(Enumerations.ObservationStatus.UNKNOWN); 172 break; 173 default: 174 tgt.setValue(Enumerations.ObservationStatus.NULL); 175 break; 176 } 177 } 178 return tgt; 179 } 180 181 static public org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.RiskAssessment.RiskAssessmentStatus> convertRiskAssessmentStatus(org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.Enumerations.ObservationStatus> src) throws FHIRException { 182 if (src == null || src.isEmpty()) 183 return null; 184 org.hl7.fhir.dstu3.model.Enumeration<RiskAssessment.RiskAssessmentStatus> tgt = new org.hl7.fhir.dstu3.model.Enumeration<>(new RiskAssessment.RiskAssessmentStatusEnumFactory()); 185 ConversionContext30_50.INSTANCE.getVersionConvertor_30_50().copyElement(src, tgt); 186 if (src.getValue() == null) { 187 tgt.setValue(null); 188 } else { 189 switch (src.getValue()) { 190 case REGISTERED: 191 tgt.setValue(RiskAssessment.RiskAssessmentStatus.REGISTERED); 192 break; 193 case PRELIMINARY: 194 tgt.setValue(RiskAssessment.RiskAssessmentStatus.PRELIMINARY); 195 break; 196 case FINAL: 197 tgt.setValue(RiskAssessment.RiskAssessmentStatus.FINAL); 198 break; 199 case AMENDED: 200 tgt.setValue(RiskAssessment.RiskAssessmentStatus.AMENDED); 201 break; 202 case CORRECTED: 203 tgt.setValue(RiskAssessment.RiskAssessmentStatus.CORRECTED); 204 break; 205 case CANCELLED: 206 tgt.setValue(RiskAssessment.RiskAssessmentStatus.CANCELLED); 207 break; 208 case ENTEREDINERROR: 209 tgt.setValue(RiskAssessment.RiskAssessmentStatus.ENTEREDINERROR); 210 break; 211 case UNKNOWN: 212 tgt.setValue(RiskAssessment.RiskAssessmentStatus.UNKNOWN); 213 break; 214 default: 215 tgt.setValue(RiskAssessment.RiskAssessmentStatus.NULL); 216 break; 217 } 218 } 219 return tgt; 220 } 221}