Example #1
0
        /// <summary>
        /// Deserialize a JSON property
        /// </summary>
        public new void DeserializeJsonProperty(ref Utf8JsonReader reader, JsonSerializerOptions options, string propertyName)
        {
            switch (propertyName)
            {
            case "chargeItemReference":
                ChargeItemReference = new Fhir.R4.Models.Reference();
                ChargeItemReference.DeserializeJson(ref reader, options);
                break;

            case "chargeItemCodeableConcept":
                ChargeItemCodeableConcept = new Fhir.R4.Models.CodeableConcept();
                ChargeItemCodeableConcept.DeserializeJson(ref reader, options);
                break;

            case "priceComponent":
                if ((reader.TokenType != JsonTokenType.StartArray) || (!reader.Read()))
                {
                    throw new JsonException();
                }

                PriceComponent = new List <InvoiceLineItemPriceComponent>();

                while (reader.TokenType != JsonTokenType.EndArray)
                {
                    Fhir.R4.Models.InvoiceLineItemPriceComponent objPriceComponent = new Fhir.R4.Models.InvoiceLineItemPriceComponent();
                    objPriceComponent.DeserializeJson(ref reader, options);
                    PriceComponent.Add(objPriceComponent);

                    if (!reader.Read())
                    {
                        throw new JsonException();
                    }
                }

                if (PriceComponent.Count == 0)
                {
                    PriceComponent = null;
                }

                break;

            case "sequence":
                Sequence = reader.GetUInt32();
                break;

            default:
                ((Fhir.R4.Models.BackboneElement) this).DeserializeJsonProperty(ref reader, options, propertyName);
                break;
            }
        }
Example #2
0
        /// <summary>
        /// Deserialize a JSON property
        /// </summary>
        public new void DeserializeJsonProperty(ref Utf8JsonReader reader, JsonSerializerOptions options, string propertyName)
        {
            switch (propertyName)
            {
            case "account":
                Account = new Fhir.R4.Models.Reference();
                Account.DeserializeJson(ref reader, options);
                break;

            case "cancelledReason":
                CancelledReason = reader.GetString();
                break;

            case "_cancelledReason":
                _CancelledReason = new Fhir.R4.Models.Element();
                _CancelledReason.DeserializeJson(ref reader, options);
                break;

            case "date":
                Date = reader.GetString();
                break;

            case "_date":
                _Date = new Fhir.R4.Models.Element();
                _Date.DeserializeJson(ref reader, options);
                break;

            case "identifier":
                if ((reader.TokenType != JsonTokenType.StartArray) || (!reader.Read()))
                {
                    throw new JsonException();
                }

                Identifier = new List <Identifier>();

                while (reader.TokenType != JsonTokenType.EndArray)
                {
                    Fhir.R4.Models.Identifier objIdentifier = new Fhir.R4.Models.Identifier();
                    objIdentifier.DeserializeJson(ref reader, options);
                    Identifier.Add(objIdentifier);

                    if (!reader.Read())
                    {
                        throw new JsonException();
                    }
                }

                if (Identifier.Count == 0)
                {
                    Identifier = null;
                }

                break;

            case "issuer":
                Issuer = new Fhir.R4.Models.Reference();
                Issuer.DeserializeJson(ref reader, options);
                break;

            case "lineItem":
                if ((reader.TokenType != JsonTokenType.StartArray) || (!reader.Read()))
                {
                    throw new JsonException();
                }

                LineItem = new List <InvoiceLineItem>();

                while (reader.TokenType != JsonTokenType.EndArray)
                {
                    Fhir.R4.Models.InvoiceLineItem objLineItem = new Fhir.R4.Models.InvoiceLineItem();
                    objLineItem.DeserializeJson(ref reader, options);
                    LineItem.Add(objLineItem);

                    if (!reader.Read())
                    {
                        throw new JsonException();
                    }
                }

                if (LineItem.Count == 0)
                {
                    LineItem = null;
                }

                break;

            case "note":
                if ((reader.TokenType != JsonTokenType.StartArray) || (!reader.Read()))
                {
                    throw new JsonException();
                }

                Note = new List <Annotation>();

                while (reader.TokenType != JsonTokenType.EndArray)
                {
                    Fhir.R4.Models.Annotation objNote = new Fhir.R4.Models.Annotation();
                    objNote.DeserializeJson(ref reader, options);
                    Note.Add(objNote);

                    if (!reader.Read())
                    {
                        throw new JsonException();
                    }
                }

                if (Note.Count == 0)
                {
                    Note = null;
                }

                break;

            case "participant":
                if ((reader.TokenType != JsonTokenType.StartArray) || (!reader.Read()))
                {
                    throw new JsonException();
                }

                Participant = new List <InvoiceParticipant>();

                while (reader.TokenType != JsonTokenType.EndArray)
                {
                    Fhir.R4.Models.InvoiceParticipant objParticipant = new Fhir.R4.Models.InvoiceParticipant();
                    objParticipant.DeserializeJson(ref reader, options);
                    Participant.Add(objParticipant);

                    if (!reader.Read())
                    {
                        throw new JsonException();
                    }
                }

                if (Participant.Count == 0)
                {
                    Participant = null;
                }

                break;

            case "paymentTerms":
                PaymentTerms = reader.GetString();
                break;

            case "_paymentTerms":
                _PaymentTerms = new Fhir.R4.Models.Element();
                _PaymentTerms.DeserializeJson(ref reader, options);
                break;

            case "recipient":
                Recipient = new Fhir.R4.Models.Reference();
                Recipient.DeserializeJson(ref reader, options);
                break;

            case "status":
                Status = reader.GetString();
                break;

            case "_status":
                _Status = new Fhir.R4.Models.Element();
                _Status.DeserializeJson(ref reader, options);
                break;

            case "subject":
                Subject = new Fhir.R4.Models.Reference();
                Subject.DeserializeJson(ref reader, options);
                break;

            case "totalGross":
                TotalGross = new Fhir.R4.Models.Money();
                TotalGross.DeserializeJson(ref reader, options);
                break;

            case "totalNet":
                TotalNet = new Fhir.R4.Models.Money();
                TotalNet.DeserializeJson(ref reader, options);
                break;

            case "totalPriceComponent":
                if ((reader.TokenType != JsonTokenType.StartArray) || (!reader.Read()))
                {
                    throw new JsonException();
                }

                TotalPriceComponent = new List <InvoiceLineItemPriceComponent>();

                while (reader.TokenType != JsonTokenType.EndArray)
                {
                    Fhir.R4.Models.InvoiceLineItemPriceComponent objTotalPriceComponent = new Fhir.R4.Models.InvoiceLineItemPriceComponent();
                    objTotalPriceComponent.DeserializeJson(ref reader, options);
                    TotalPriceComponent.Add(objTotalPriceComponent);

                    if (!reader.Read())
                    {
                        throw new JsonException();
                    }
                }

                if (TotalPriceComponent.Count == 0)
                {
                    TotalPriceComponent = null;
                }

                break;

            case "type":
                Type = new Fhir.R4.Models.CodeableConcept();
                Type.DeserializeJson(ref reader, options);
                break;

            default:
                ((Fhir.R4.Models.DomainResource) this).DeserializeJsonProperty(ref reader, options, propertyName);
                break;
            }
        }