001package org.hl7.fhir.convertors.conv40_50.resources40_50;
002
003import org.hl7.fhir.convertors.context.ConversionContext40_50;
004import org.hl7.fhir.convertors.conv40_50.datatypes40_50.general40_50.*;
005import org.hl7.fhir.convertors.conv40_50.datatypes40_50.primitive40_50.*;
006import org.hl7.fhir.convertors.conv40_50.datatypes40_50.special40_50.Reference40_50;
007import org.hl7.fhir.exceptions.FHIRException;
008
009/*
010  Copyright (c) 2011+, HL7, Inc.
011  All rights reserved.
012  
013  Redistribution and use in source and binary forms, with or without modification, 
014  are permitted provided that the following conditions are met:
015  
016   * Redistributions of source code must retain the above copyright notice, this 
017     list of conditions and the following disclaimer.
018   * Redistributions in binary form must reproduce the above copyright notice, 
019     this list of conditions and the following disclaimer in the documentation 
020     and/or other materials provided with the distribution.
021   * Neither the name of HL7 nor the names of its contributors may be used to 
022     endorse or promote products derived from this software without specific 
023     prior written permission.
024  
025  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 
026  ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 
027  WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 
028  IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 
029  INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 
030  NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 
031  PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 
032  WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 
033  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 
034  POSSIBILITY OF SUCH DAMAGE.
035  
036*/
037// Generated on Sun, Feb 24, 2019 11:37+1100 for FHIR v4.0.0
038public class Claim40_50 {
039
040  public static org.hl7.fhir.r5.model.Claim convertClaim(org.hl7.fhir.r4.model.Claim src) throws FHIRException {
041    if (src == null)
042      return null;
043    org.hl7.fhir.r5.model.Claim tgt = new org.hl7.fhir.r5.model.Claim();
044    ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyDomainResource(src, tgt);
045    for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier())
046      tgt.addIdentifier(Identifier40_50.convertIdentifier(t));
047    if (src.hasStatus())
048      tgt.setStatusElement(convertClaimStatus(src.getStatusElement()));
049    if (src.hasType())
050      tgt.setType(CodeableConcept40_50.convertCodeableConcept(src.getType()));
051    if (src.hasSubType())
052      tgt.setSubType(CodeableConcept40_50.convertCodeableConcept(src.getSubType()));
053    if (src.hasUse())
054      tgt.setUseElement(convertUse(src.getUseElement()));
055    if (src.hasPatient())
056      tgt.setPatient(Reference40_50.convertReference(src.getPatient()));
057    if (src.hasBillablePeriod())
058      tgt.setBillablePeriod(Period40_50.convertPeriod(src.getBillablePeriod()));
059    if (src.hasCreated())
060      tgt.setCreatedElement(DateTime40_50.convertDateTime(src.getCreatedElement()));
061    if (src.hasEnterer())
062      tgt.setEnterer(Reference40_50.convertReference(src.getEnterer()));
063    if (src.hasInsurer())
064      tgt.setInsurer(Reference40_50.convertReference(src.getInsurer()));
065    if (src.hasProvider())
066      tgt.setProvider(Reference40_50.convertReference(src.getProvider()));
067    if (src.hasPriority())
068      tgt.setPriority(CodeableConcept40_50.convertCodeableConcept(src.getPriority()));
069    if (src.hasFundsReserve())
070      tgt.setFundsReserve(CodeableConcept40_50.convertCodeableConcept(src.getFundsReserve()));
071    for (org.hl7.fhir.r4.model.Claim.RelatedClaimComponent t : src.getRelated())
072      tgt.addRelated(convertRelatedClaimComponent(t));
073    if (src.hasPrescription())
074      tgt.setPrescription(Reference40_50.convertReference(src.getPrescription()));
075    if (src.hasOriginalPrescription())
076      tgt.setOriginalPrescription(Reference40_50.convertReference(src.getOriginalPrescription()));
077    if (src.hasPayee())
078      tgt.setPayee(convertPayeeComponent(src.getPayee()));
079    if (src.hasReferral())
080      tgt.setReferral(Reference40_50.convertReference(src.getReferral()));
081    if (src.hasFacility())
082      tgt.setFacility(Reference40_50.convertReference(src.getFacility()));
083    for (org.hl7.fhir.r4.model.Claim.CareTeamComponent t : src.getCareTeam())
084      tgt.addCareTeam(convertCareTeamComponent(t));
085    for (org.hl7.fhir.r4.model.Claim.SupportingInformationComponent t : src.getSupportingInfo())
086      tgt.addSupportingInfo(convertSupportingInformationComponent(t));
087    for (org.hl7.fhir.r4.model.Claim.DiagnosisComponent t : src.getDiagnosis())
088      tgt.addDiagnosis(convertDiagnosisComponent(t));
089    for (org.hl7.fhir.r4.model.Claim.ProcedureComponent t : src.getProcedure())
090      tgt.addProcedure(convertProcedureComponent(t));
091    for (org.hl7.fhir.r4.model.Claim.InsuranceComponent t : src.getInsurance())
092      tgt.addInsurance(convertInsuranceComponent(t));
093    if (src.hasAccident())
094      tgt.setAccident(convertAccidentComponent(src.getAccident()));
095    for (org.hl7.fhir.r4.model.Claim.ItemComponent t : src.getItem()) tgt.addItem(convertItemComponent(t));
096    if (src.hasTotal())
097      tgt.setTotal(Money40_50.convertMoney(src.getTotal()));
098    return tgt;
099  }
100
101  public static org.hl7.fhir.r4.model.Claim convertClaim(org.hl7.fhir.r5.model.Claim src) throws FHIRException {
102    if (src == null)
103      return null;
104    org.hl7.fhir.r4.model.Claim tgt = new org.hl7.fhir.r4.model.Claim();
105    ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyDomainResource(src, tgt);
106    for (org.hl7.fhir.r5.model.Identifier t : src.getIdentifier())
107      tgt.addIdentifier(Identifier40_50.convertIdentifier(t));
108    if (src.hasStatus())
109      tgt.setStatusElement(convertClaimStatus(src.getStatusElement()));
110    if (src.hasType())
111      tgt.setType(CodeableConcept40_50.convertCodeableConcept(src.getType()));
112    if (src.hasSubType())
113      tgt.setSubType(CodeableConcept40_50.convertCodeableConcept(src.getSubType()));
114    if (src.hasUse())
115      tgt.setUseElement(convertUse(src.getUseElement()));
116    if (src.hasPatient())
117      tgt.setPatient(Reference40_50.convertReference(src.getPatient()));
118    if (src.hasBillablePeriod())
119      tgt.setBillablePeriod(Period40_50.convertPeriod(src.getBillablePeriod()));
120    if (src.hasCreated())
121      tgt.setCreatedElement(DateTime40_50.convertDateTime(src.getCreatedElement()));
122    if (src.hasEnterer())
123      tgt.setEnterer(Reference40_50.convertReference(src.getEnterer()));
124    if (src.hasInsurer())
125      tgt.setInsurer(Reference40_50.convertReference(src.getInsurer()));
126    if (src.hasProvider())
127      tgt.setProvider(Reference40_50.convertReference(src.getProvider()));
128    if (src.hasPriority())
129      tgt.setPriority(CodeableConcept40_50.convertCodeableConcept(src.getPriority()));
130    if (src.hasFundsReserve())
131      tgt.setFundsReserve(CodeableConcept40_50.convertCodeableConcept(src.getFundsReserve()));
132    for (org.hl7.fhir.r5.model.Claim.RelatedClaimComponent t : src.getRelated())
133      tgt.addRelated(convertRelatedClaimComponent(t));
134    if (src.hasPrescription())
135      tgt.setPrescription(Reference40_50.convertReference(src.getPrescription()));
136    if (src.hasOriginalPrescription())
137      tgt.setOriginalPrescription(Reference40_50.convertReference(src.getOriginalPrescription()));
138    if (src.hasPayee())
139      tgt.setPayee(convertPayeeComponent(src.getPayee()));
140    if (src.hasReferral())
141      tgt.setReferral(Reference40_50.convertReference(src.getReferral()));
142    if (src.hasFacility())
143      tgt.setFacility(Reference40_50.convertReference(src.getFacility()));
144    for (org.hl7.fhir.r5.model.Claim.CareTeamComponent t : src.getCareTeam())
145      tgt.addCareTeam(convertCareTeamComponent(t));
146    for (org.hl7.fhir.r5.model.Claim.SupportingInformationComponent t : src.getSupportingInfo())
147      tgt.addSupportingInfo(convertSupportingInformationComponent(t));
148    for (org.hl7.fhir.r5.model.Claim.DiagnosisComponent t : src.getDiagnosis())
149      tgt.addDiagnosis(convertDiagnosisComponent(t));
150    for (org.hl7.fhir.r5.model.Claim.ProcedureComponent t : src.getProcedure())
151      tgt.addProcedure(convertProcedureComponent(t));
152    for (org.hl7.fhir.r5.model.Claim.InsuranceComponent t : src.getInsurance())
153      tgt.addInsurance(convertInsuranceComponent(t));
154    if (src.hasAccident())
155      tgt.setAccident(convertAccidentComponent(src.getAccident()));
156    for (org.hl7.fhir.r5.model.Claim.ItemComponent t : src.getItem()) tgt.addItem(convertItemComponent(t));
157    if (src.hasTotal())
158      tgt.setTotal(Money40_50.convertMoney(src.getTotal()));
159    return tgt;
160  }
161
162  static public org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.Enumerations.FinancialResourceStatusCodes> convertClaimStatus(org.hl7.fhir.r4.model.Enumeration<org.hl7.fhir.r4.model.Claim.ClaimStatus> src) throws FHIRException {
163    if (src == null || src.isEmpty())
164      return null;
165    org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.Enumerations.FinancialResourceStatusCodes> tgt = new org.hl7.fhir.r5.model.Enumeration<>(new org.hl7.fhir.r5.model.Enumerations.FinancialResourceStatusCodesEnumFactory());
166    ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt);
167    switch (src.getValue()) {
168      case ACTIVE:
169        tgt.setValue(org.hl7.fhir.r5.model.Enumerations.FinancialResourceStatusCodes.ACTIVE);
170        break;
171      case CANCELLED:
172        tgt.setValue(org.hl7.fhir.r5.model.Enumerations.FinancialResourceStatusCodes.CANCELLED);
173        break;
174      case DRAFT:
175        tgt.setValue(org.hl7.fhir.r5.model.Enumerations.FinancialResourceStatusCodes.DRAFT);
176        break;
177      case ENTEREDINERROR:
178        tgt.setValue(org.hl7.fhir.r5.model.Enumerations.FinancialResourceStatusCodes.ENTEREDINERROR);
179        break;
180      default:
181        tgt.setValue(org.hl7.fhir.r5.model.Enumerations.FinancialResourceStatusCodes.NULL);
182        break;
183    }
184    return tgt;
185  }
186
187  static public org.hl7.fhir.r4.model.Enumeration<org.hl7.fhir.r4.model.Claim.ClaimStatus> convertClaimStatus(org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.Enumerations.FinancialResourceStatusCodes> src) throws FHIRException {
188    if (src == null || src.isEmpty())
189      return null;
190    org.hl7.fhir.r4.model.Enumeration<org.hl7.fhir.r4.model.Claim.ClaimStatus> tgt = new org.hl7.fhir.r4.model.Enumeration<>(new org.hl7.fhir.r4.model.Claim.ClaimStatusEnumFactory());
191    ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt);
192    switch (src.getValue()) {
193      case ACTIVE:
194        tgt.setValue(org.hl7.fhir.r4.model.Claim.ClaimStatus.ACTIVE);
195        break;
196      case CANCELLED:
197        tgt.setValue(org.hl7.fhir.r4.model.Claim.ClaimStatus.CANCELLED);
198        break;
199      case DRAFT:
200        tgt.setValue(org.hl7.fhir.r4.model.Claim.ClaimStatus.DRAFT);
201        break;
202      case ENTEREDINERROR:
203        tgt.setValue(org.hl7.fhir.r4.model.Claim.ClaimStatus.ENTEREDINERROR);
204        break;
205      default:
206        tgt.setValue(org.hl7.fhir.r4.model.Claim.ClaimStatus.NULL);
207        break;
208    }
209    return tgt;
210  }
211
212  static public org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.Enumerations.Use> convertUse(org.hl7.fhir.r4.model.Enumeration<org.hl7.fhir.r4.model.Claim.Use> src) throws FHIRException {
213    if (src == null || src.isEmpty())
214      return null;
215    org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.Enumerations.Use> tgt = new org.hl7.fhir.r5.model.Enumeration<>(new org.hl7.fhir.r5.model.Enumerations.UseEnumFactory());
216    ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt);
217    switch (src.getValue()) {
218      case CLAIM:
219        tgt.setValue(org.hl7.fhir.r5.model.Enumerations.Use.CLAIM);
220        break;
221      case PREAUTHORIZATION:
222        tgt.setValue(org.hl7.fhir.r5.model.Enumerations.Use.PREAUTHORIZATION);
223        break;
224      case PREDETERMINATION:
225        tgt.setValue(org.hl7.fhir.r5.model.Enumerations.Use.PREDETERMINATION);
226        break;
227      default:
228        tgt.setValue(org.hl7.fhir.r5.model.Enumerations.Use.NULL);
229        break;
230    }
231    return tgt;
232  }
233
234  static public org.hl7.fhir.r4.model.Enumeration<org.hl7.fhir.r4.model.Claim.Use> convertUse(org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.Enumerations.Use> src) throws FHIRException {
235    if (src == null || src.isEmpty())
236      return null;
237    org.hl7.fhir.r4.model.Enumeration<org.hl7.fhir.r4.model.Claim.Use> tgt = new org.hl7.fhir.r4.model.Enumeration<>(new org.hl7.fhir.r4.model.Claim.UseEnumFactory());
238    ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt);
239    switch (src.getValue()) {
240      case CLAIM:
241        tgt.setValue(org.hl7.fhir.r4.model.Claim.Use.CLAIM);
242        break;
243      case PREAUTHORIZATION:
244        tgt.setValue(org.hl7.fhir.r4.model.Claim.Use.PREAUTHORIZATION);
245        break;
246      case PREDETERMINATION:
247        tgt.setValue(org.hl7.fhir.r4.model.Claim.Use.PREDETERMINATION);
248        break;
249      default:
250        tgt.setValue(org.hl7.fhir.r4.model.Claim.Use.NULL);
251        break;
252    }
253    return tgt;
254  }
255
256  public static org.hl7.fhir.r5.model.Claim.RelatedClaimComponent convertRelatedClaimComponent(org.hl7.fhir.r4.model.Claim.RelatedClaimComponent src) throws FHIRException {
257    if (src == null)
258      return null;
259    org.hl7.fhir.r5.model.Claim.RelatedClaimComponent tgt = new org.hl7.fhir.r5.model.Claim.RelatedClaimComponent();
260    ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt);
261    if (src.hasClaim())
262      tgt.setClaim(Reference40_50.convertReference(src.getClaim()));
263    if (src.hasRelationship())
264      tgt.setRelationship(CodeableConcept40_50.convertCodeableConcept(src.getRelationship()));
265    if (src.hasReference())
266      tgt.setReference(Identifier40_50.convertIdentifier(src.getReference()));
267    return tgt;
268  }
269
270  public static org.hl7.fhir.r4.model.Claim.RelatedClaimComponent convertRelatedClaimComponent(org.hl7.fhir.r5.model.Claim.RelatedClaimComponent src) throws FHIRException {
271    if (src == null)
272      return null;
273    org.hl7.fhir.r4.model.Claim.RelatedClaimComponent tgt = new org.hl7.fhir.r4.model.Claim.RelatedClaimComponent();
274    ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt);
275    if (src.hasClaim())
276      tgt.setClaim(Reference40_50.convertReference(src.getClaim()));
277    if (src.hasRelationship())
278      tgt.setRelationship(CodeableConcept40_50.convertCodeableConcept(src.getRelationship()));
279    if (src.hasReference())
280      tgt.setReference(Identifier40_50.convertIdentifier(src.getReference()));
281    return tgt;
282  }
283
284  public static org.hl7.fhir.r5.model.Claim.PayeeComponent convertPayeeComponent(org.hl7.fhir.r4.model.Claim.PayeeComponent src) throws FHIRException {
285    if (src == null)
286      return null;
287    org.hl7.fhir.r5.model.Claim.PayeeComponent tgt = new org.hl7.fhir.r5.model.Claim.PayeeComponent();
288    ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt);
289    if (src.hasType())
290      tgt.setType(CodeableConcept40_50.convertCodeableConcept(src.getType()));
291    if (src.hasParty())
292      tgt.setParty(Reference40_50.convertReference(src.getParty()));
293    return tgt;
294  }
295
296  public static org.hl7.fhir.r4.model.Claim.PayeeComponent convertPayeeComponent(org.hl7.fhir.r5.model.Claim.PayeeComponent src) throws FHIRException {
297    if (src == null)
298      return null;
299    org.hl7.fhir.r4.model.Claim.PayeeComponent tgt = new org.hl7.fhir.r4.model.Claim.PayeeComponent();
300    ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt);
301    if (src.hasType())
302      tgt.setType(CodeableConcept40_50.convertCodeableConcept(src.getType()));
303    if (src.hasParty())
304      tgt.setParty(Reference40_50.convertReference(src.getParty()));
305    return tgt;
306  }
307
308  public static org.hl7.fhir.r5.model.Claim.CareTeamComponent convertCareTeamComponent(org.hl7.fhir.r4.model.Claim.CareTeamComponent src) throws FHIRException {
309    if (src == null)
310      return null;
311    org.hl7.fhir.r5.model.Claim.CareTeamComponent tgt = new org.hl7.fhir.r5.model.Claim.CareTeamComponent();
312    ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt);
313    if (src.hasSequence())
314      tgt.setSequenceElement(PositiveInt40_50.convertPositiveInt(src.getSequenceElement()));
315    if (src.hasProvider())
316      tgt.setProvider(Reference40_50.convertReference(src.getProvider()));
317    if (src.hasResponsible())
318      tgt.setResponsibleElement(Boolean40_50.convertBoolean(src.getResponsibleElement()));
319    if (src.hasRole())
320      tgt.setRole(CodeableConcept40_50.convertCodeableConcept(src.getRole()));
321    if (src.hasQualification())
322      tgt.setQualification(CodeableConcept40_50.convertCodeableConcept(src.getQualification()));
323    return tgt;
324  }
325
326  public static org.hl7.fhir.r4.model.Claim.CareTeamComponent convertCareTeamComponent(org.hl7.fhir.r5.model.Claim.CareTeamComponent src) throws FHIRException {
327    if (src == null)
328      return null;
329    org.hl7.fhir.r4.model.Claim.CareTeamComponent tgt = new org.hl7.fhir.r4.model.Claim.CareTeamComponent();
330    ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt);
331    if (src.hasSequence())
332      tgt.setSequenceElement(PositiveInt40_50.convertPositiveInt(src.getSequenceElement()));
333    if (src.hasProvider())
334      tgt.setProvider(Reference40_50.convertReference(src.getProvider()));
335    if (src.hasResponsible())
336      tgt.setResponsibleElement(Boolean40_50.convertBoolean(src.getResponsibleElement()));
337    if (src.hasRole())
338      tgt.setRole(CodeableConcept40_50.convertCodeableConcept(src.getRole()));
339    if (src.hasQualification())
340      tgt.setQualification(CodeableConcept40_50.convertCodeableConcept(src.getQualification()));
341    return tgt;
342  }
343
344  public static org.hl7.fhir.r5.model.Claim.SupportingInformationComponent convertSupportingInformationComponent(org.hl7.fhir.r4.model.Claim.SupportingInformationComponent src) throws FHIRException {
345    if (src == null)
346      return null;
347    org.hl7.fhir.r5.model.Claim.SupportingInformationComponent tgt = new org.hl7.fhir.r5.model.Claim.SupportingInformationComponent();
348    ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt);
349    if (src.hasSequence())
350      tgt.setSequenceElement(PositiveInt40_50.convertPositiveInt(src.getSequenceElement()));
351    if (src.hasCategory())
352      tgt.setCategory(CodeableConcept40_50.convertCodeableConcept(src.getCategory()));
353    if (src.hasCode())
354      tgt.setCode(CodeableConcept40_50.convertCodeableConcept(src.getCode()));
355    if (src.hasTiming())
356      tgt.setTiming(ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().convertType(src.getTiming()));
357    if (src.hasValue())
358      tgt.setValue(ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().convertType(src.getValue()));
359    if (src.hasReason())
360      tgt.setReason(CodeableConcept40_50.convertCodeableConcept(src.getReason()));
361    return tgt;
362  }
363
364  public static org.hl7.fhir.r4.model.Claim.SupportingInformationComponent convertSupportingInformationComponent(org.hl7.fhir.r5.model.Claim.SupportingInformationComponent src) throws FHIRException {
365    if (src == null)
366      return null;
367    org.hl7.fhir.r4.model.Claim.SupportingInformationComponent tgt = new org.hl7.fhir.r4.model.Claim.SupportingInformationComponent();
368    ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt);
369    if (src.hasSequence())
370      tgt.setSequenceElement(PositiveInt40_50.convertPositiveInt(src.getSequenceElement()));
371    if (src.hasCategory())
372      tgt.setCategory(CodeableConcept40_50.convertCodeableConcept(src.getCategory()));
373    if (src.hasCode())
374      tgt.setCode(CodeableConcept40_50.convertCodeableConcept(src.getCode()));
375    if (src.hasTiming())
376      tgt.setTiming(ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().convertType(src.getTiming()));
377    if (src.hasValue())
378      tgt.setValue(ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().convertType(src.getValue()));
379    if (src.hasReason())
380      tgt.setReason(CodeableConcept40_50.convertCodeableConcept(src.getReason()));
381    return tgt;
382  }
383
384  public static org.hl7.fhir.r5.model.Claim.DiagnosisComponent convertDiagnosisComponent(org.hl7.fhir.r4.model.Claim.DiagnosisComponent src) throws FHIRException {
385    if (src == null)
386      return null;
387    org.hl7.fhir.r5.model.Claim.DiagnosisComponent tgt = new org.hl7.fhir.r5.model.Claim.DiagnosisComponent();
388    ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt);
389    if (src.hasSequence())
390      tgt.setSequenceElement(PositiveInt40_50.convertPositiveInt(src.getSequenceElement()));
391    if (src.hasDiagnosis())
392      tgt.setDiagnosis(ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().convertType(src.getDiagnosis()));
393    for (org.hl7.fhir.r4.model.CodeableConcept t : src.getType())
394      tgt.addType(CodeableConcept40_50.convertCodeableConcept(t));
395    if (src.hasOnAdmission())
396      tgt.setOnAdmission(CodeableConcept40_50.convertCodeableConcept(src.getOnAdmission()));
397    if (src.hasPackageCode())
398      tgt.setPackageCode(CodeableConcept40_50.convertCodeableConcept(src.getPackageCode()));
399    return tgt;
400  }
401
402  public static org.hl7.fhir.r4.model.Claim.DiagnosisComponent convertDiagnosisComponent(org.hl7.fhir.r5.model.Claim.DiagnosisComponent src) throws FHIRException {
403    if (src == null)
404      return null;
405    org.hl7.fhir.r4.model.Claim.DiagnosisComponent tgt = new org.hl7.fhir.r4.model.Claim.DiagnosisComponent();
406    ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt);
407    if (src.hasSequence())
408      tgt.setSequenceElement(PositiveInt40_50.convertPositiveInt(src.getSequenceElement()));
409    if (src.hasDiagnosis())
410      tgt.setDiagnosis(ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().convertType(src.getDiagnosis()));
411    for (org.hl7.fhir.r5.model.CodeableConcept t : src.getType())
412      tgt.addType(CodeableConcept40_50.convertCodeableConcept(t));
413    if (src.hasOnAdmission())
414      tgt.setOnAdmission(CodeableConcept40_50.convertCodeableConcept(src.getOnAdmission()));
415    if (src.hasPackageCode())
416      tgt.setPackageCode(CodeableConcept40_50.convertCodeableConcept(src.getPackageCode()));
417    return tgt;
418  }
419
420  public static org.hl7.fhir.r5.model.Claim.ProcedureComponent convertProcedureComponent(org.hl7.fhir.r4.model.Claim.ProcedureComponent src) throws FHIRException {
421    if (src == null)
422      return null;
423    org.hl7.fhir.r5.model.Claim.ProcedureComponent tgt = new org.hl7.fhir.r5.model.Claim.ProcedureComponent();
424    ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt);
425    if (src.hasSequence())
426      tgt.setSequenceElement(PositiveInt40_50.convertPositiveInt(src.getSequenceElement()));
427    for (org.hl7.fhir.r4.model.CodeableConcept t : src.getType())
428      tgt.addType(CodeableConcept40_50.convertCodeableConcept(t));
429    if (src.hasDate())
430      tgt.setDateElement(DateTime40_50.convertDateTime(src.getDateElement()));
431    if (src.hasProcedure())
432      tgt.setProcedure(ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().convertType(src.getProcedure()));
433    for (org.hl7.fhir.r4.model.Reference t : src.getUdi()) tgt.addUdi(Reference40_50.convertReference(t));
434    return tgt;
435  }
436
437  public static org.hl7.fhir.r4.model.Claim.ProcedureComponent convertProcedureComponent(org.hl7.fhir.r5.model.Claim.ProcedureComponent src) throws FHIRException {
438    if (src == null)
439      return null;
440    org.hl7.fhir.r4.model.Claim.ProcedureComponent tgt = new org.hl7.fhir.r4.model.Claim.ProcedureComponent();
441    ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt);
442    if (src.hasSequence())
443      tgt.setSequenceElement(PositiveInt40_50.convertPositiveInt(src.getSequenceElement()));
444    for (org.hl7.fhir.r5.model.CodeableConcept t : src.getType())
445      tgt.addType(CodeableConcept40_50.convertCodeableConcept(t));
446    if (src.hasDate())
447      tgt.setDateElement(DateTime40_50.convertDateTime(src.getDateElement()));
448    if (src.hasProcedure())
449      tgt.setProcedure(ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().convertType(src.getProcedure()));
450    for (org.hl7.fhir.r5.model.Reference t : src.getUdi()) tgt.addUdi(Reference40_50.convertReference(t));
451    return tgt;
452  }
453
454  public static org.hl7.fhir.r5.model.Claim.InsuranceComponent convertInsuranceComponent(org.hl7.fhir.r4.model.Claim.InsuranceComponent src) throws FHIRException {
455    if (src == null)
456      return null;
457    org.hl7.fhir.r5.model.Claim.InsuranceComponent tgt = new org.hl7.fhir.r5.model.Claim.InsuranceComponent();
458    ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt);
459    if (src.hasSequence())
460      tgt.setSequenceElement(PositiveInt40_50.convertPositiveInt(src.getSequenceElement()));
461    if (src.hasFocal())
462      tgt.setFocalElement(Boolean40_50.convertBoolean(src.getFocalElement()));
463    if (src.hasIdentifier())
464      tgt.setIdentifier(Identifier40_50.convertIdentifier(src.getIdentifier()));
465    if (src.hasCoverage())
466      tgt.setCoverage(Reference40_50.convertReference(src.getCoverage()));
467    if (src.hasBusinessArrangement())
468      tgt.setBusinessArrangementElement(String40_50.convertString(src.getBusinessArrangementElement()));
469    for (org.hl7.fhir.r4.model.StringType t : src.getPreAuthRef())
470      tgt.getPreAuthRef().add(String40_50.convertString(t));
471    if (src.hasClaimResponse())
472      tgt.setClaimResponse(Reference40_50.convertReference(src.getClaimResponse()));
473    return tgt;
474  }
475
476  public static org.hl7.fhir.r4.model.Claim.InsuranceComponent convertInsuranceComponent(org.hl7.fhir.r5.model.Claim.InsuranceComponent src) throws FHIRException {
477    if (src == null)
478      return null;
479    org.hl7.fhir.r4.model.Claim.InsuranceComponent tgt = new org.hl7.fhir.r4.model.Claim.InsuranceComponent();
480    ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt);
481    if (src.hasSequence())
482      tgt.setSequenceElement(PositiveInt40_50.convertPositiveInt(src.getSequenceElement()));
483    if (src.hasFocal())
484      tgt.setFocalElement(Boolean40_50.convertBoolean(src.getFocalElement()));
485    if (src.hasIdentifier())
486      tgt.setIdentifier(Identifier40_50.convertIdentifier(src.getIdentifier()));
487    if (src.hasCoverage())
488      tgt.setCoverage(Reference40_50.convertReference(src.getCoverage()));
489    if (src.hasBusinessArrangement())
490      tgt.setBusinessArrangementElement(String40_50.convertString(src.getBusinessArrangementElement()));
491    for (org.hl7.fhir.r5.model.StringType t : src.getPreAuthRef())
492      tgt.getPreAuthRef().add(String40_50.convertString(t));
493    if (src.hasClaimResponse())
494      tgt.setClaimResponse(Reference40_50.convertReference(src.getClaimResponse()));
495    return tgt;
496  }
497
498  public static org.hl7.fhir.r5.model.Claim.AccidentComponent convertAccidentComponent(org.hl7.fhir.r4.model.Claim.AccidentComponent src) throws FHIRException {
499    if (src == null)
500      return null;
501    org.hl7.fhir.r5.model.Claim.AccidentComponent tgt = new org.hl7.fhir.r5.model.Claim.AccidentComponent();
502    ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt);
503    if (src.hasDate())
504      tgt.setDateElement(Date40_50.convertDate(src.getDateElement()));
505    if (src.hasType())
506      tgt.setType(CodeableConcept40_50.convertCodeableConcept(src.getType()));
507    if (src.hasLocation())
508      tgt.setLocation(ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().convertType(src.getLocation()));
509    return tgt;
510  }
511
512  public static org.hl7.fhir.r4.model.Claim.AccidentComponent convertAccidentComponent(org.hl7.fhir.r5.model.Claim.AccidentComponent src) throws FHIRException {
513    if (src == null)
514      return null;
515    org.hl7.fhir.r4.model.Claim.AccidentComponent tgt = new org.hl7.fhir.r4.model.Claim.AccidentComponent();
516    ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt);
517    if (src.hasDate())
518      tgt.setDateElement(Date40_50.convertDate(src.getDateElement()));
519    if (src.hasType())
520      tgt.setType(CodeableConcept40_50.convertCodeableConcept(src.getType()));
521    if (src.hasLocation())
522      tgt.setLocation(ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().convertType(src.getLocation()));
523    return tgt;
524  }
525
526  public static org.hl7.fhir.r5.model.Claim.ItemComponent convertItemComponent(org.hl7.fhir.r4.model.Claim.ItemComponent src) throws FHIRException {
527    if (src == null)
528      return null;
529    org.hl7.fhir.r5.model.Claim.ItemComponent tgt = new org.hl7.fhir.r5.model.Claim.ItemComponent();
530    ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt);
531    if (src.hasSequence())
532      tgt.setSequenceElement(PositiveInt40_50.convertPositiveInt(src.getSequenceElement()));
533    for (org.hl7.fhir.r4.model.PositiveIntType t : src.getCareTeamSequence())
534      tgt.getCareTeamSequence().add(PositiveInt40_50.convertPositiveInt(t));
535    for (org.hl7.fhir.r4.model.PositiveIntType t : src.getDiagnosisSequence())
536      tgt.getDiagnosisSequence().add(PositiveInt40_50.convertPositiveInt(t));
537    for (org.hl7.fhir.r4.model.PositiveIntType t : src.getProcedureSequence())
538      tgt.getProcedureSequence().add(PositiveInt40_50.convertPositiveInt(t));
539    for (org.hl7.fhir.r4.model.PositiveIntType t : src.getInformationSequence())
540      tgt.getInformationSequence().add(PositiveInt40_50.convertPositiveInt(t));
541    if (src.hasRevenue())
542      tgt.setRevenue(CodeableConcept40_50.convertCodeableConcept(src.getRevenue()));
543    if (src.hasCategory())
544      tgt.setCategory(CodeableConcept40_50.convertCodeableConcept(src.getCategory()));
545    if (src.hasProductOrService())
546      tgt.setProductOrService(CodeableConcept40_50.convertCodeableConcept(src.getProductOrService()));
547    for (org.hl7.fhir.r4.model.CodeableConcept t : src.getModifier())
548      tgt.addModifier(CodeableConcept40_50.convertCodeableConcept(t));
549    for (org.hl7.fhir.r4.model.CodeableConcept t : src.getProgramCode())
550      tgt.addProgramCode(CodeableConcept40_50.convertCodeableConcept(t));
551    if (src.hasServiced())
552      tgt.setServiced(ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().convertType(src.getServiced()));
553    if (src.hasLocation())
554      tgt.setLocation(ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().convertType(src.getLocation()));
555    if (src.hasQuantity())
556      tgt.setQuantity(SimpleQuantity40_50.convertSimpleQuantity(src.getQuantity()));
557    if (src.hasUnitPrice())
558      tgt.setUnitPrice(Money40_50.convertMoney(src.getUnitPrice()));
559    if (src.hasFactor())
560      tgt.setFactorElement(Decimal40_50.convertDecimal(src.getFactorElement()));
561    if (src.hasNet())
562      tgt.setNet(Money40_50.convertMoney(src.getNet()));
563    for (org.hl7.fhir.r4.model.Reference t : src.getUdi()) tgt.addUdi(Reference40_50.convertReference(t));
564    if (src.hasBodySite())
565      tgt.setBodySite(CodeableConcept40_50.convertCodeableConcept(src.getBodySite()));
566    for (org.hl7.fhir.r4.model.CodeableConcept t : src.getSubSite())
567      tgt.addSubSite(CodeableConcept40_50.convertCodeableConcept(t));
568    for (org.hl7.fhir.r4.model.Reference t : src.getEncounter()) tgt.addEncounter(Reference40_50.convertReference(t));
569    for (org.hl7.fhir.r4.model.Claim.DetailComponent t : src.getDetail()) tgt.addDetail(convertDetailComponent(t));
570    return tgt;
571  }
572
573  public static org.hl7.fhir.r4.model.Claim.ItemComponent convertItemComponent(org.hl7.fhir.r5.model.Claim.ItemComponent src) throws FHIRException {
574    if (src == null)
575      return null;
576    org.hl7.fhir.r4.model.Claim.ItemComponent tgt = new org.hl7.fhir.r4.model.Claim.ItemComponent();
577    ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt);
578    if (src.hasSequence())
579      tgt.setSequenceElement(PositiveInt40_50.convertPositiveInt(src.getSequenceElement()));
580    for (org.hl7.fhir.r5.model.PositiveIntType t : src.getCareTeamSequence())
581      tgt.getCareTeamSequence().add(PositiveInt40_50.convertPositiveInt(t));
582    for (org.hl7.fhir.r5.model.PositiveIntType t : src.getDiagnosisSequence())
583      tgt.getDiagnosisSequence().add(PositiveInt40_50.convertPositiveInt(t));
584    for (org.hl7.fhir.r5.model.PositiveIntType t : src.getProcedureSequence())
585      tgt.getProcedureSequence().add(PositiveInt40_50.convertPositiveInt(t));
586    for (org.hl7.fhir.r5.model.PositiveIntType t : src.getInformationSequence())
587      tgt.getInformationSequence().add(PositiveInt40_50.convertPositiveInt(t));
588    if (src.hasRevenue())
589      tgt.setRevenue(CodeableConcept40_50.convertCodeableConcept(src.getRevenue()));
590    if (src.hasCategory())
591      tgt.setCategory(CodeableConcept40_50.convertCodeableConcept(src.getCategory()));
592    if (src.hasProductOrService())
593      tgt.setProductOrService(CodeableConcept40_50.convertCodeableConcept(src.getProductOrService()));
594    for (org.hl7.fhir.r5.model.CodeableConcept t : src.getModifier())
595      tgt.addModifier(CodeableConcept40_50.convertCodeableConcept(t));
596    for (org.hl7.fhir.r5.model.CodeableConcept t : src.getProgramCode())
597      tgt.addProgramCode(CodeableConcept40_50.convertCodeableConcept(t));
598    if (src.hasServiced())
599      tgt.setServiced(ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().convertType(src.getServiced()));
600    if (src.hasLocation())
601      tgt.setLocation(ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().convertType(src.getLocation()));
602    if (src.hasQuantity())
603      tgt.setQuantity(SimpleQuantity40_50.convertSimpleQuantity(src.getQuantity()));
604    if (src.hasUnitPrice())
605      tgt.setUnitPrice(Money40_50.convertMoney(src.getUnitPrice()));
606    if (src.hasFactor())
607      tgt.setFactorElement(Decimal40_50.convertDecimal(src.getFactorElement()));
608    if (src.hasNet())
609      tgt.setNet(Money40_50.convertMoney(src.getNet()));
610    for (org.hl7.fhir.r5.model.Reference t : src.getUdi()) tgt.addUdi(Reference40_50.convertReference(t));
611    if (src.hasBodySite())
612      tgt.setBodySite(CodeableConcept40_50.convertCodeableConcept(src.getBodySite()));
613    for (org.hl7.fhir.r5.model.CodeableConcept t : src.getSubSite())
614      tgt.addSubSite(CodeableConcept40_50.convertCodeableConcept(t));
615    for (org.hl7.fhir.r5.model.Reference t : src.getEncounter()) tgt.addEncounter(Reference40_50.convertReference(t));
616    for (org.hl7.fhir.r5.model.Claim.DetailComponent t : src.getDetail()) tgt.addDetail(convertDetailComponent(t));
617    return tgt;
618  }
619
620  public static org.hl7.fhir.r5.model.Claim.DetailComponent convertDetailComponent(org.hl7.fhir.r4.model.Claim.DetailComponent src) throws FHIRException {
621    if (src == null)
622      return null;
623    org.hl7.fhir.r5.model.Claim.DetailComponent tgt = new org.hl7.fhir.r5.model.Claim.DetailComponent();
624    ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt);
625    if (src.hasSequence())
626      tgt.setSequenceElement(PositiveInt40_50.convertPositiveInt(src.getSequenceElement()));
627    if (src.hasRevenue())
628      tgt.setRevenue(CodeableConcept40_50.convertCodeableConcept(src.getRevenue()));
629    if (src.hasCategory())
630      tgt.setCategory(CodeableConcept40_50.convertCodeableConcept(src.getCategory()));
631    if (src.hasProductOrService())
632      tgt.setProductOrService(CodeableConcept40_50.convertCodeableConcept(src.getProductOrService()));
633    for (org.hl7.fhir.r4.model.CodeableConcept t : src.getModifier())
634      tgt.addModifier(CodeableConcept40_50.convertCodeableConcept(t));
635    for (org.hl7.fhir.r4.model.CodeableConcept t : src.getProgramCode())
636      tgt.addProgramCode(CodeableConcept40_50.convertCodeableConcept(t));
637    if (src.hasQuantity())
638      tgt.setQuantity(SimpleQuantity40_50.convertSimpleQuantity(src.getQuantity()));
639    if (src.hasUnitPrice())
640      tgt.setUnitPrice(Money40_50.convertMoney(src.getUnitPrice()));
641    if (src.hasFactor())
642      tgt.setFactorElement(Decimal40_50.convertDecimal(src.getFactorElement()));
643    if (src.hasNet())
644      tgt.setNet(Money40_50.convertMoney(src.getNet()));
645    for (org.hl7.fhir.r4.model.Reference t : src.getUdi()) tgt.addUdi(Reference40_50.convertReference(t));
646    for (org.hl7.fhir.r4.model.Claim.SubDetailComponent t : src.getSubDetail())
647      tgt.addSubDetail(convertSubDetailComponent(t));
648    return tgt;
649  }
650
651  public static org.hl7.fhir.r4.model.Claim.DetailComponent convertDetailComponent(org.hl7.fhir.r5.model.Claim.DetailComponent src) throws FHIRException {
652    if (src == null)
653      return null;
654    org.hl7.fhir.r4.model.Claim.DetailComponent tgt = new org.hl7.fhir.r4.model.Claim.DetailComponent();
655    ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt);
656    if (src.hasSequence())
657      tgt.setSequenceElement(PositiveInt40_50.convertPositiveInt(src.getSequenceElement()));
658    if (src.hasRevenue())
659      tgt.setRevenue(CodeableConcept40_50.convertCodeableConcept(src.getRevenue()));
660    if (src.hasCategory())
661      tgt.setCategory(CodeableConcept40_50.convertCodeableConcept(src.getCategory()));
662    if (src.hasProductOrService())
663      tgt.setProductOrService(CodeableConcept40_50.convertCodeableConcept(src.getProductOrService()));
664    for (org.hl7.fhir.r5.model.CodeableConcept t : src.getModifier())
665      tgt.addModifier(CodeableConcept40_50.convertCodeableConcept(t));
666    for (org.hl7.fhir.r5.model.CodeableConcept t : src.getProgramCode())
667      tgt.addProgramCode(CodeableConcept40_50.convertCodeableConcept(t));
668    if (src.hasQuantity())
669      tgt.setQuantity(SimpleQuantity40_50.convertSimpleQuantity(src.getQuantity()));
670    if (src.hasUnitPrice())
671      tgt.setUnitPrice(Money40_50.convertMoney(src.getUnitPrice()));
672    if (src.hasFactor())
673      tgt.setFactorElement(Decimal40_50.convertDecimal(src.getFactorElement()));
674    if (src.hasNet())
675      tgt.setNet(Money40_50.convertMoney(src.getNet()));
676    for (org.hl7.fhir.r5.model.Reference t : src.getUdi()) tgt.addUdi(Reference40_50.convertReference(t));
677    for (org.hl7.fhir.r5.model.Claim.SubDetailComponent t : src.getSubDetail())
678      tgt.addSubDetail(convertSubDetailComponent(t));
679    return tgt;
680  }
681
682  public static org.hl7.fhir.r5.model.Claim.SubDetailComponent convertSubDetailComponent(org.hl7.fhir.r4.model.Claim.SubDetailComponent src) throws FHIRException {
683    if (src == null)
684      return null;
685    org.hl7.fhir.r5.model.Claim.SubDetailComponent tgt = new org.hl7.fhir.r5.model.Claim.SubDetailComponent();
686    ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt);
687    if (src.hasSequence())
688      tgt.setSequenceElement(PositiveInt40_50.convertPositiveInt(src.getSequenceElement()));
689    if (src.hasRevenue())
690      tgt.setRevenue(CodeableConcept40_50.convertCodeableConcept(src.getRevenue()));
691    if (src.hasCategory())
692      tgt.setCategory(CodeableConcept40_50.convertCodeableConcept(src.getCategory()));
693    if (src.hasProductOrService())
694      tgt.setProductOrService(CodeableConcept40_50.convertCodeableConcept(src.getProductOrService()));
695    for (org.hl7.fhir.r4.model.CodeableConcept t : src.getModifier())
696      tgt.addModifier(CodeableConcept40_50.convertCodeableConcept(t));
697    for (org.hl7.fhir.r4.model.CodeableConcept t : src.getProgramCode())
698      tgt.addProgramCode(CodeableConcept40_50.convertCodeableConcept(t));
699    if (src.hasQuantity())
700      tgt.setQuantity(SimpleQuantity40_50.convertSimpleQuantity(src.getQuantity()));
701    if (src.hasUnitPrice())
702      tgt.setUnitPrice(Money40_50.convertMoney(src.getUnitPrice()));
703    if (src.hasFactor())
704      tgt.setFactorElement(Decimal40_50.convertDecimal(src.getFactorElement()));
705    if (src.hasNet())
706      tgt.setNet(Money40_50.convertMoney(src.getNet()));
707    for (org.hl7.fhir.r4.model.Reference t : src.getUdi()) tgt.addUdi(Reference40_50.convertReference(t));
708    return tgt;
709  }
710
711  public static org.hl7.fhir.r4.model.Claim.SubDetailComponent convertSubDetailComponent(org.hl7.fhir.r5.model.Claim.SubDetailComponent src) throws FHIRException {
712    if (src == null)
713      return null;
714    org.hl7.fhir.r4.model.Claim.SubDetailComponent tgt = new org.hl7.fhir.r4.model.Claim.SubDetailComponent();
715    ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt);
716    if (src.hasSequence())
717      tgt.setSequenceElement(PositiveInt40_50.convertPositiveInt(src.getSequenceElement()));
718    if (src.hasRevenue())
719      tgt.setRevenue(CodeableConcept40_50.convertCodeableConcept(src.getRevenue()));
720    if (src.hasCategory())
721      tgt.setCategory(CodeableConcept40_50.convertCodeableConcept(src.getCategory()));
722    if (src.hasProductOrService())
723      tgt.setProductOrService(CodeableConcept40_50.convertCodeableConcept(src.getProductOrService()));
724    for (org.hl7.fhir.r5.model.CodeableConcept t : src.getModifier())
725      tgt.addModifier(CodeableConcept40_50.convertCodeableConcept(t));
726    for (org.hl7.fhir.r5.model.CodeableConcept t : src.getProgramCode())
727      tgt.addProgramCode(CodeableConcept40_50.convertCodeableConcept(t));
728    if (src.hasQuantity())
729      tgt.setQuantity(SimpleQuantity40_50.convertSimpleQuantity(src.getQuantity()));
730    if (src.hasUnitPrice())
731      tgt.setUnitPrice(Money40_50.convertMoney(src.getUnitPrice()));
732    if (src.hasFactor())
733      tgt.setFactorElement(Decimal40_50.convertDecimal(src.getFactorElement()));
734    if (src.hasNet())
735      tgt.setNet(Money40_50.convertMoney(src.getNet()));
736    for (org.hl7.fhir.r5.model.Reference t : src.getUdi()) tgt.addUdi(Reference40_50.convertReference(t));
737    return tgt;
738  }
739}