001package org.hl7.fhir.convertors.conv10_30.resources10_30; 002 003import org.hl7.fhir.convertors.context.ConversionContext10_30; 004import org.hl7.fhir.convertors.conv10_30.datatypes10_30.Reference10_30; 005import org.hl7.fhir.convertors.conv10_30.datatypes10_30.complextypes10_30.CodeableConcept10_30; 006import org.hl7.fhir.convertors.conv10_30.datatypes10_30.complextypes10_30.Identifier10_30; 007import org.hl7.fhir.convertors.conv10_30.datatypes10_30.primitivetypes10_30.DateTime10_30; 008import org.hl7.fhir.exceptions.FHIRException; 009 010public class ProcedureRequest10_30 { 011 012 public static org.hl7.fhir.dstu3.model.ProcedureRequest convertProcedureRequest(org.hl7.fhir.dstu2.model.ProcedureRequest src) throws FHIRException { 013 if (src == null || src.isEmpty()) 014 return null; 015 org.hl7.fhir.dstu3.model.ProcedureRequest tgt = new org.hl7.fhir.dstu3.model.ProcedureRequest(); 016 ConversionContext10_30.INSTANCE.getVersionConvertor_10_30().copyDomainResource(src, tgt); 017 for (org.hl7.fhir.dstu2.model.Identifier t : src.getIdentifier()) 018 tgt.addIdentifier(Identifier10_30.convertIdentifier(t)); 019 if (src.hasSubject()) 020 tgt.setSubject(Reference10_30.convertReference(src.getSubject())); 021 if (src.hasCode()) 022 tgt.setCode(CodeableConcept10_30.convertCodeableConcept(src.getCode())); 023 for (org.hl7.fhir.dstu2.model.CodeableConcept t : src.getBodySite()) 024 tgt.addBodySite(CodeableConcept10_30.convertCodeableConcept(t)); 025 if (src.hasReasonCodeableConcept()) 026 tgt.addReasonCode(CodeableConcept10_30.convertCodeableConcept(src.getReasonCodeableConcept())); 027 if (src.hasScheduled()) 028 tgt.setOccurrence(ConversionContext10_30.INSTANCE.getVersionConvertor_10_30().convertType(src.getScheduled())); 029 if (src.hasEncounter()) 030 tgt.setContext(Reference10_30.convertReference(src.getEncounter())); 031 if (src.hasPerformer()) 032 tgt.setPerformer(Reference10_30.convertReference(src.getPerformer())); 033 if (src.hasStatus()) 034 tgt.setStatusElement(convertProcedureRequestStatus(src.getStatusElement())); 035 if (src.hasAsNeeded()) 036 tgt.setAsNeeded(ConversionContext10_30.INSTANCE.getVersionConvertor_10_30().convertType(src.getAsNeeded())); 037 if (src.hasOrderedOnElement()) 038 tgt.setAuthoredOnElement(DateTime10_30.convertDateTime(src.getOrderedOnElement())); 039 if (src.hasPriority()) 040 tgt.setPriorityElement(convertProcedureRequestPriority(src.getPriorityElement())); 041 return tgt; 042 } 043 044 public static org.hl7.fhir.dstu2.model.ProcedureRequest convertProcedureRequest(org.hl7.fhir.dstu3.model.ProcedureRequest src) throws FHIRException { 045 if (src == null || src.isEmpty()) 046 return null; 047 org.hl7.fhir.dstu2.model.ProcedureRequest tgt = new org.hl7.fhir.dstu2.model.ProcedureRequest(); 048 ConversionContext10_30.INSTANCE.getVersionConvertor_10_30().copyDomainResource(src, tgt); 049 for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) 050 tgt.addIdentifier(Identifier10_30.convertIdentifier(t)); 051 if (src.hasSubject()) 052 tgt.setSubject(Reference10_30.convertReference(src.getSubject())); 053 if (src.hasCode()) 054 tgt.setCode(CodeableConcept10_30.convertCodeableConcept(src.getCode())); 055 for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getBodySite()) 056 tgt.addBodySite(CodeableConcept10_30.convertCodeableConcept(t)); 057 if (src.hasReasonCode()) 058 tgt.setReason(ConversionContext10_30.INSTANCE.getVersionConvertor_10_30().convertType(src.getReasonCodeFirstRep())); 059 if (src.hasOccurrence()) 060 tgt.setScheduled(ConversionContext10_30.INSTANCE.getVersionConvertor_10_30().convertType(src.getOccurrence())); 061 if (src.hasContext()) 062 tgt.setEncounter(Reference10_30.convertReference(src.getContext())); 063 if (src.hasPerformer()) 064 tgt.setPerformer(Reference10_30.convertReference(src.getPerformer())); 065 if (src.hasStatus()) 066 tgt.setStatusElement(convertProcedureRequestStatus(src.getStatusElement())); 067 if (src.hasAsNeeded()) 068 tgt.setAsNeeded(ConversionContext10_30.INSTANCE.getVersionConvertor_10_30().convertType(src.getAsNeeded())); 069 if (src.hasAuthoredOnElement()) 070 tgt.setOrderedOnElement(DateTime10_30.convertDateTime(src.getAuthoredOnElement())); 071 if (src.hasPriority()) 072 tgt.setPriorityElement(convertProcedureRequestPriority(src.getPriorityElement())); 073 return tgt; 074 } 075 076 static public org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestPriority> convertProcedureRequestPriority(org.hl7.fhir.dstu2.model.Enumeration<org.hl7.fhir.dstu2.model.ProcedureRequest.ProcedureRequestPriority> src) throws FHIRException { 077 if (src == null || src.isEmpty()) 078 return null; 079 org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestPriority> tgt = new org.hl7.fhir.dstu3.model.Enumeration<>(new org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestPriorityEnumFactory()); 080 ConversionContext10_30.INSTANCE.getVersionConvertor_10_30().copyElement(src, tgt); 081 switch (src.getValue()) { 082 case ROUTINE: 083 tgt.setValue(org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestPriority.ROUTINE); 084 break; 085 case URGENT: 086 tgt.setValue(org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestPriority.URGENT); 087 break; 088 case STAT: 089 tgt.setValue(org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestPriority.STAT); 090 break; 091 case ASAP: 092 tgt.setValue(org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestPriority.ASAP); 093 break; 094 default: 095 tgt.setValue(org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestPriority.NULL); 096 break; 097 } 098 return tgt; 099 } 100 101 static public org.hl7.fhir.dstu2.model.Enumeration<org.hl7.fhir.dstu2.model.ProcedureRequest.ProcedureRequestPriority> convertProcedureRequestPriority(org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestPriority> src) throws FHIRException { 102 if (src == null || src.isEmpty()) 103 return null; 104 org.hl7.fhir.dstu2.model.Enumeration<org.hl7.fhir.dstu2.model.ProcedureRequest.ProcedureRequestPriority> tgt = new org.hl7.fhir.dstu2.model.Enumeration<>(new org.hl7.fhir.dstu2.model.ProcedureRequest.ProcedureRequestPriorityEnumFactory()); 105 ConversionContext10_30.INSTANCE.getVersionConvertor_10_30().copyElement(src, tgt); 106 switch (src.getValue()) { 107 case ROUTINE: 108 tgt.setValue(org.hl7.fhir.dstu2.model.ProcedureRequest.ProcedureRequestPriority.ROUTINE); 109 break; 110 case URGENT: 111 tgt.setValue(org.hl7.fhir.dstu2.model.ProcedureRequest.ProcedureRequestPriority.URGENT); 112 break; 113 case STAT: 114 tgt.setValue(org.hl7.fhir.dstu2.model.ProcedureRequest.ProcedureRequestPriority.STAT); 115 break; 116 case ASAP: 117 tgt.setValue(org.hl7.fhir.dstu2.model.ProcedureRequest.ProcedureRequestPriority.ASAP); 118 break; 119 default: 120 tgt.setValue(org.hl7.fhir.dstu2.model.ProcedureRequest.ProcedureRequestPriority.NULL); 121 break; 122 } 123 return tgt; 124 } 125 126 static public org.hl7.fhir.dstu2.model.Enumeration<org.hl7.fhir.dstu2.model.ProcedureRequest.ProcedureRequestStatus> convertProcedureRequestStatus(org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus> src) throws FHIRException { 127 if (src == null || src.isEmpty()) 128 return null; 129 org.hl7.fhir.dstu2.model.Enumeration<org.hl7.fhir.dstu2.model.ProcedureRequest.ProcedureRequestStatus> tgt = new org.hl7.fhir.dstu2.model.Enumeration<>(new org.hl7.fhir.dstu2.model.ProcedureRequest.ProcedureRequestStatusEnumFactory()); 130 ConversionContext10_30.INSTANCE.getVersionConvertor_10_30().copyElement(src, tgt); 131 switch (src.getValue()) { 132 case DRAFT: 133 tgt.setValue(org.hl7.fhir.dstu2.model.ProcedureRequest.ProcedureRequestStatus.DRAFT); 134 break; 135 case ACTIVE: 136 tgt.setValue(org.hl7.fhir.dstu2.model.ProcedureRequest.ProcedureRequestStatus.INPROGRESS); 137 break; 138 case COMPLETED: 139 tgt.setValue(org.hl7.fhir.dstu2.model.ProcedureRequest.ProcedureRequestStatus.COMPLETED); 140 break; 141 case SUSPENDED: 142 tgt.setValue(org.hl7.fhir.dstu2.model.ProcedureRequest.ProcedureRequestStatus.SUSPENDED); 143 break; 144 case ENTEREDINERROR: 145 tgt.setValue(org.hl7.fhir.dstu2.model.ProcedureRequest.ProcedureRequestStatus.ABORTED); 146 break; 147 default: 148 tgt.setValue(org.hl7.fhir.dstu2.model.ProcedureRequest.ProcedureRequestStatus.NULL); 149 break; 150 } 151 return tgt; 152 } 153 154 static public org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus> convertProcedureRequestStatus(org.hl7.fhir.dstu2.model.Enumeration<org.hl7.fhir.dstu2.model.ProcedureRequest.ProcedureRequestStatus> src) throws FHIRException { 155 if (src == null || src.isEmpty()) 156 return null; 157 org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus> tgt = new org.hl7.fhir.dstu3.model.Enumeration<>(new org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatusEnumFactory()); 158 ConversionContext10_30.INSTANCE.getVersionConvertor_10_30().copyElement(src, tgt); 159 switch (src.getValue()) { 160 case PROPOSED: 161 tgt.setValue(org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus.DRAFT); 162 break; 163 case DRAFT: 164 tgt.setValue(org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus.DRAFT); 165 break; 166 case REQUESTED: 167 tgt.setValue(org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus.ACTIVE); 168 break; 169 case RECEIVED: 170 tgt.setValue(org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus.ACTIVE); 171 break; 172 case ACCEPTED: 173 tgt.setValue(org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus.ACTIVE); 174 break; 175 case INPROGRESS: 176 tgt.setValue(org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus.ACTIVE); 177 break; 178 case COMPLETED: 179 tgt.setValue(org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus.COMPLETED); 180 break; 181 case SUSPENDED: 182 tgt.setValue(org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus.SUSPENDED); 183 break; 184 case ABORTED: 185 tgt.setValue(org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus.ENTEREDINERROR); 186 break; 187 default: 188 tgt.setValue(org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus.NULL); 189 break; 190 } 191 return tgt; 192 } 193}