Class InvoiceBuilder.Impl

    • Constructor Detail

      • Impl

        public Impl​(com.babylonhealth.lit.hl7.INVOICE_STATUS status)
        Required fields for Invoice
        Parameters:
        status - - The current state of the Invoice.
    • Method Detail

      • withId

        public InvoiceBuilder.Impl withId​(@NonNull
                                          @NonNull java.lang.String id)
        Parameters:
        id - - The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
      • withMeta

        public InvoiceBuilder.Impl withMeta​(@NonNull
                                            @NonNull com.babylonhealth.lit.core.model.Meta meta)
        Parameters:
        meta - - The metadata about the resource. This is content that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource.
      • withMeta

        public InvoiceBuilder.Impl withMeta​(@NonNull
                                            @NonNull com.babylonhealth.lit.core_java.builders.MetaBuilder meta)
      • withText

        public InvoiceBuilder.Impl withText​(@NonNull
                                            @NonNull com.babylonhealth.lit.hl7.model.Narrative text)
        Parameters:
        text - - A human-readable narrative that contains a summary of the resource and can be used to represent the content of the resource to a human. The narrative need not encode all the structured data, but is required to contain sufficient detail to make it "clinically safe" for a human to just read the narrative. Resource definitions may define what content should be represented in the narrative to ensure clinical safety.
      • withType

        public InvoiceBuilder.Impl withType​(@NonNull
                                            @NonNull com.babylonhealth.lit.core.model.CodeableConcept _type)
        Parameters:
        _type - - Type of Invoice depending on domain, realm an usage (e.g. internal/external, dental, preliminary).
      • withType

        public InvoiceBuilder.Impl withType​(@NonNull
                                            @NonNull com.babylonhealth.lit.core_java.builders.CodeableConceptBuilder _type)
      • withDate

        public InvoiceBuilder.Impl withDate​(@NonNull
                                            @NonNull com.babylonhealth.lit.core.FHIRDateTime date)
        Parameters:
        date - - Date/time(s) of when this Invoice was posted.
      • withNote

        public InvoiceBuilder.Impl withNote​(@NonNull
                                            @NonNull com.babylonhealth.lit.core.model.Annotation... note)
        Parameters:
        note - - Comments made about the invoice by the issuer, subject, or other participants.
      • withNote

        public InvoiceBuilder.Impl withNote​(@NonNull
                                            @NonNull java.util.Collection<com.babylonhealth.lit.core.model.Annotation> note)
        Parameters:
        note - - Comments made about the invoice by the issuer, subject, or other participants.
      • withNote

        public InvoiceBuilder.Impl withNote​(@NonNull
                                            @NonNull com.babylonhealth.lit.core_java.builders.AnnotationBuilder... note)
      • withIssuer

        public InvoiceBuilder.Impl withIssuer​(@NonNull
                                              @NonNull com.babylonhealth.lit.core.model.Reference issuer)
        Parameters:
        issuer - - The organizationissuing the Invoice.
      • withIssuer

        public InvoiceBuilder.Impl withIssuer​(@NonNull
                                              @NonNull com.babylonhealth.lit.core_java.builders.ReferenceBuilder issuer)
      • withSubject

        public InvoiceBuilder.Impl withSubject​(@NonNull
                                               @NonNull com.babylonhealth.lit.core.model.Reference subject)
        Parameters:
        subject - - The individual or set of individuals receiving the goods and services billed in this invoice.
      • withSubject

        public InvoiceBuilder.Impl withSubject​(@NonNull
                                               @NonNull com.babylonhealth.lit.core_java.builders.ReferenceBuilder subject)
      • withAccount

        public InvoiceBuilder.Impl withAccount​(@NonNull
                                               @NonNull com.babylonhealth.lit.core.model.Reference account)
        Parameters:
        account - - Account which is supposed to be balanced with this Invoice.
      • withAccount

        public InvoiceBuilder.Impl withAccount​(@NonNull
                                               @NonNull com.babylonhealth.lit.core_java.builders.ReferenceBuilder account)
      • withLanguage

        public InvoiceBuilder.Impl withLanguage​(@NonNull
                                                @NonNull com.babylonhealth.lit.core.LANGUAGES language)
        Parameters:
        language - - The base language in which the resource is written.
      • withTotalNet

        public InvoiceBuilder.Impl withTotalNet​(@NonNull
                                                @NonNull com.babylonhealth.lit.core.model.Money totalNet)
        Parameters:
        totalNet - - Invoice total , taxes excluded.
      • withTotalNet

        public InvoiceBuilder.Impl withTotalNet​(@NonNull
                                                @NonNull com.babylonhealth.lit.core_java.builders.MoneyBuilder totalNet)
      • withContained

        public InvoiceBuilder.Impl withContained​(@NonNull
                                                 @NonNull com.babylonhealth.lit.core.model.Resource... contained)
        Parameters:
        contained - - These resources do not have an independent existence apart from the resource that contains them - they cannot be identified independently, and nor can they have their own independent transaction scope.
      • withContained

        public InvoiceBuilder.Impl withContained​(@NonNull
                                                 @NonNull java.util.Collection<com.babylonhealth.lit.core.model.Resource> contained)
        Parameters:
        contained - - These resources do not have an independent existence apart from the resource that contains them - they cannot be identified independently, and nor can they have their own independent transaction scope.
      • withContained

        public InvoiceBuilder.Impl withContained​(@NonNull
                                                 @NonNull com.babylonhealth.lit.core_java.builders.ResourceBuilder... contained)
      • withExtension

        public InvoiceBuilder.Impl withExtension​(@NonNull
                                                 @NonNull com.babylonhealth.lit.core.model.Extension... extension)
        Parameters:
        extension - - May be used to represent additional information that is not part of the basic definition of the resource. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
      • withExtension

        public InvoiceBuilder.Impl withExtension​(@NonNull
                                                 @NonNull java.util.Collection<com.babylonhealth.lit.core.model.Extension> extension)
        Parameters:
        extension - - May be used to represent additional information that is not part of the basic definition of the resource. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
      • withExtension

        public InvoiceBuilder.Impl withExtension​(@NonNull
                                                 @NonNull com.babylonhealth.lit.core_java.builders.ExtensionBuilder... extension)
      • withRecipient

        public InvoiceBuilder.Impl withRecipient​(@NonNull
                                                 @NonNull com.babylonhealth.lit.core.model.Reference recipient)
        Parameters:
        recipient - - The individual or Organization responsible for balancing of this invoice.
      • withRecipient

        public InvoiceBuilder.Impl withRecipient​(@NonNull
                                                 @NonNull com.babylonhealth.lit.core_java.builders.ReferenceBuilder recipient)
      • withIdentifier

        public InvoiceBuilder.Impl withIdentifier​(@NonNull
                                                  @NonNull com.babylonhealth.lit.core.model.Identifier... identifier)
        Parameters:
        identifier - - Identifier of this Invoice, often used for reference in correspondence about this invoice or for tracking of payments.
      • withIdentifier

        public InvoiceBuilder.Impl withIdentifier​(@NonNull
                                                  @NonNull java.util.Collection<com.babylonhealth.lit.core.model.Identifier> identifier)
        Parameters:
        identifier - - Identifier of this Invoice, often used for reference in correspondence about this invoice or for tracking of payments.
      • withIdentifier

        public InvoiceBuilder.Impl withIdentifier​(@NonNull
                                                  @NonNull com.babylonhealth.lit.core_java.builders.IdentifierBuilder... identifier)
      • withTotalGross

        public InvoiceBuilder.Impl withTotalGross​(@NonNull
                                                  @NonNull com.babylonhealth.lit.core.model.Money totalGross)
        Parameters:
        totalGross - - Invoice total, tax included.
      • withTotalGross

        public InvoiceBuilder.Impl withTotalGross​(@NonNull
                                                  @NonNull com.babylonhealth.lit.core_java.builders.MoneyBuilder totalGross)
      • withPaymentTerms

        public InvoiceBuilder.Impl withPaymentTerms​(@NonNull
                                                    @NonNull java.lang.String paymentTerms)
        Parameters:
        paymentTerms - - Payment details such as banking details, period of payment, deductibles, methods of payment.
      • withImplicitRules

        public InvoiceBuilder.Impl withImplicitRules​(@NonNull
                                                     @NonNull java.lang.String implicitRules)
        Parameters:
        implicitRules - - A reference to a set of rules that were followed when the resource was constructed, and which must be understood when processing the content. Often, this is a reference to an implementation guide that defines the special rules along with other profiles etc.
      • withCancelledReason

        public InvoiceBuilder.Impl withCancelledReason​(@NonNull
                                                       @NonNull java.lang.String cancelledReason)
        Parameters:
        cancelledReason - - In case of Invoice cancellation a reason must be given (entered in error, superseded by corrected invoice etc.).
      • withModifierExtension

        public InvoiceBuilder.Impl withModifierExtension​(@NonNull
                                                         @NonNull com.babylonhealth.lit.core.model.Extension... modifierExtension)
        Parameters:
        modifierExtension - - May be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

        Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

      • withModifierExtension

        public InvoiceBuilder.Impl withModifierExtension​(@NonNull
                                                         @NonNull java.util.Collection<com.babylonhealth.lit.core.model.Extension> modifierExtension)
        Parameters:
        modifierExtension - - May be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

        Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

      • withModifierExtension

        public InvoiceBuilder.Impl withModifierExtension​(@NonNull
                                                         @NonNull com.babylonhealth.lit.core_java.builders.ExtensionBuilder... modifierExtension)
      • withTotalPriceComponent

        public InvoiceBuilder.Impl withTotalPriceComponent​(@NonNull
                                                           @NonNull com.babylonhealth.lit.hl7.model.Invoice$LineItem$PriceComponent... totalPriceComponent)
        Parameters:
        totalPriceComponent - - The total amount for the Invoice may be calculated as the sum of the line items with surcharges/deductions that apply in certain conditions. The priceComponent element can be used to offer transparency to the recipient of the Invoice of how the total price was calculated.
      • withTotalPriceComponent

        public InvoiceBuilder.Impl withTotalPriceComponent​(@NonNull
                                                           @NonNull java.util.Collection<com.babylonhealth.lit.hl7.model.Invoice$LineItem$PriceComponent> totalPriceComponent)
        Parameters:
        totalPriceComponent - - The total amount for the Invoice may be calculated as the sum of the line items with surcharges/deductions that apply in certain conditions. The priceComponent element can be used to offer transparency to the recipient of the Invoice of how the total price was calculated.
      • withParticipant

        public InvoiceBuilder.Impl withParticipant​(@NonNull
                                                   @NonNull com.babylonhealth.lit.hl7.model.Invoice.Participant... participant)
        Parameters:
        participant - - Indicates who or what performed or participated in the charged service.
      • withParticipant

        public InvoiceBuilder.Impl withParticipant​(@NonNull
                                                   @NonNull java.util.Collection<com.babylonhealth.lit.hl7.model.Invoice.Participant> participant)
        Parameters:
        participant - - Indicates who or what performed or participated in the charged service.
      • withLineItem

        public InvoiceBuilder.Impl withLineItem​(@NonNull
                                                @NonNull com.babylonhealth.lit.hl7.model.Invoice.LineItem... lineItem)
        Parameters:
        lineItem - - Each line item represents one charge for goods and services rendered. Details such as date, code and amount are found in the referenced ChargeItem resource.
      • withLineItem

        public InvoiceBuilder.Impl withLineItem​(@NonNull
                                                @NonNull java.util.Collection<com.babylonhealth.lit.hl7.model.Invoice.LineItem> lineItem)
        Parameters:
        lineItem - - Each line item represents one charge for goods and services rendered. Details such as date, code and amount are found in the referenced ChargeItem resource.
      • build

        public com.babylonhealth.lit.hl7.model.Invoice build()
        Specified by:
        build in interface DomainResourceBuilder
        Specified by:
        build in interface InvoiceBuilder
        Specified by:
        build in interface com.babylonhealth.lit.core_java.builders.ResourceBuilder