public override IDeepCopyable CopyTo(IDeepCopyable other) { var dest = other as PaymentReconciliation; if (dest == null) { throw new ArgumentException("Can only copy to an object of the same type", "other"); } base.CopyTo(dest); if (Identifier != null) { dest.Identifier = new List <Hl7.Fhir.Model.Identifier>(Identifier.DeepCopy()); } if (StatusElement != null) { dest.StatusElement = (Code <Hl7.Fhir.Model.FinancialResourceStatusCodes>)StatusElement.DeepCopy(); } if (Period != null) { dest.Period = (Hl7.Fhir.Model.Period)Period.DeepCopy(); } if (CreatedElement != null) { dest.CreatedElement = (Hl7.Fhir.Model.FhirDateTime)CreatedElement.DeepCopy(); } if (PaymentIssuer != null) { dest.PaymentIssuer = (Hl7.Fhir.Model.ResourceReference)PaymentIssuer.DeepCopy(); } if (Request != null) { dest.Request = (Hl7.Fhir.Model.ResourceReference)Request.DeepCopy(); } if (Requestor != null) { dest.Requestor = (Hl7.Fhir.Model.ResourceReference)Requestor.DeepCopy(); } if (OutcomeElement != null) { dest.OutcomeElement = (Code <Hl7.Fhir.Model.ClaimProcessingCodes>)OutcomeElement.DeepCopy(); } if (DispositionElement != null) { dest.DispositionElement = (Hl7.Fhir.Model.FhirString)DispositionElement.DeepCopy(); } if (PaymentDateElement != null) { dest.PaymentDateElement = (Hl7.Fhir.Model.Date)PaymentDateElement.DeepCopy(); } if (PaymentAmount != null) { dest.PaymentAmount = (Hl7.Fhir.Model.Money)PaymentAmount.DeepCopy(); } if (PaymentIdentifier != null) { dest.PaymentIdentifier = (Hl7.Fhir.Model.Identifier)PaymentIdentifier.DeepCopy(); } if (Detail != null) { dest.Detail = new List <Hl7.Fhir.Model.PaymentReconciliation.DetailsComponent>(Detail.DeepCopy()); } if (FormCode != null) { dest.FormCode = (Hl7.Fhir.Model.CodeableConcept)FormCode.DeepCopy(); } if (ProcessNote != null) { dest.ProcessNote = new List <Hl7.Fhir.Model.PaymentReconciliation.NotesComponent>(ProcessNote.DeepCopy()); } return(dest); }
/// <summary> /// Serialize to a JSON object /// </summary> public new void SerializeJson(Utf8JsonWriter writer, JsonSerializerOptions options, bool includeStartObject = true) { if (includeStartObject) { writer.WriteStartObject(); } if (!string.IsNullOrEmpty(ResourceType)) { writer.WriteString("resourceType", (string)ResourceType !); } ((Fhir.R4.Models.DomainResource) this).SerializeJson(writer, options, false); if ((Identifier != null) && (Identifier.Count != 0)) { writer.WritePropertyName("identifier"); writer.WriteStartArray(); foreach (Identifier valIdentifier in Identifier) { valIdentifier.SerializeJson(writer, options, true); } writer.WriteEndArray(); } if (!string.IsNullOrEmpty(Status)) { writer.WriteString("status", (string)Status !); } if (_Status != null) { writer.WritePropertyName("_status"); _Status.SerializeJson(writer, options); } if (Period != null) { writer.WritePropertyName("period"); Period.SerializeJson(writer, options); } if (!string.IsNullOrEmpty(Created)) { writer.WriteString("created", (string)Created !); } if (_Created != null) { writer.WritePropertyName("_created"); _Created.SerializeJson(writer, options); } if (PaymentIssuer != null) { writer.WritePropertyName("paymentIssuer"); PaymentIssuer.SerializeJson(writer, options); } if (Request != null) { writer.WritePropertyName("request"); Request.SerializeJson(writer, options); } if (Requestor != null) { writer.WritePropertyName("requestor"); Requestor.SerializeJson(writer, options); } if (!string.IsNullOrEmpty(Outcome)) { writer.WriteString("outcome", (string)Outcome !); } if (_Outcome != null) { writer.WritePropertyName("_outcome"); _Outcome.SerializeJson(writer, options); } if (!string.IsNullOrEmpty(Disposition)) { writer.WriteString("disposition", (string)Disposition !); } if (_Disposition != null) { writer.WritePropertyName("_disposition"); _Disposition.SerializeJson(writer, options); } if (!string.IsNullOrEmpty(PaymentDate)) { writer.WriteString("paymentDate", (string)PaymentDate !); } if (_PaymentDate != null) { writer.WritePropertyName("_paymentDate"); _PaymentDate.SerializeJson(writer, options); } if (PaymentAmount != null) { writer.WritePropertyName("paymentAmount"); PaymentAmount.SerializeJson(writer, options); } if (PaymentIdentifier != null) { writer.WritePropertyName("paymentIdentifier"); PaymentIdentifier.SerializeJson(writer, options); } if ((Detail != null) && (Detail.Count != 0)) { writer.WritePropertyName("detail"); writer.WriteStartArray(); foreach (PaymentReconciliationDetail valDetail in Detail) { valDetail.SerializeJson(writer, options, true); } writer.WriteEndArray(); } if (FormCode != null) { writer.WritePropertyName("formCode"); FormCode.SerializeJson(writer, options); } if ((ProcessNote != null) && (ProcessNote.Count != 0)) { writer.WritePropertyName("processNote"); writer.WriteStartArray(); foreach (PaymentReconciliationProcessNote valProcessNote in ProcessNote) { valProcessNote.SerializeJson(writer, options, true); } writer.WriteEndArray(); } if (includeStartObject) { writer.WriteEndObject(); } }