Package com.ibm.fhir.model.resource
Class Invoice
- java.lang.Object
-
- com.ibm.fhir.model.visitor.AbstractVisitable
-
- com.ibm.fhir.model.resource.Resource
-
- com.ibm.fhir.model.resource.DomainResource
-
- com.ibm.fhir.model.resource.Invoice
-
- All Implemented Interfaces:
Visitable
@Generated("com.ibm.fhir.tools.CodeGenerator") public class Invoice extends DomainResource
Invoice containing collected ChargeItems from an Account with calculated individual and total price for Billing purpose.Maturity level: FMM0 (Trial Use)
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classInvoice.Builderstatic classInvoice.LineItemEach line item represents one charge for goods and services rendered.static classInvoice.ParticipantIndicates who or what performed or participated in the charged service.
-
Field Summary
-
Fields inherited from class com.ibm.fhir.model.resource.DomainResource
contained, extension, modifierExtension, text
-
Fields inherited from class com.ibm.fhir.model.resource.Resource
id, implicitRules, language, meta
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaccept(String elementName, int elementIndex, Visitor visitor)Accept a Visitor and invoke the appropriate visit methods.static Invoice.Builderbuilder()booleanequals(Object obj)ReferencegetAccount()Account which is supposed to be balanced with this Invoice.StringgetCancelledReason()In case of Invoice cancellation a reason must be given (entered in error, superseded by corrected invoice etc.).DateTimegetDate()Date/time(s) of when this Invoice was posted.List<Identifier>getIdentifier()Identifier of this Invoice, often used for reference in correspondence about this invoice or for tracking of payments.ReferencegetIssuer()The organizationissuing the Invoice.List<Invoice.LineItem>getLineItem()Each line item represents one charge for goods and services rendered.List<Annotation>getNote()Comments made about the invoice by the issuer, subject, or other participants.List<Invoice.Participant>getParticipant()Indicates who or what performed or participated in the charged service.MarkdowngetPaymentTerms()Payment details such as banking details, period of payment, deductibles, methods of payment.ReferencegetRecipient()The individual or Organization responsible for balancing of this invoice.InvoiceStatusgetStatus()The current state of the Invoice.ReferencegetSubject()The individual or set of individuals receiving the goods and services billed in this invoice.MoneygetTotalGross()Invoice total, tax included.MoneygetTotalNet()Invoice total , taxes excluded.List<Invoice.LineItem.PriceComponent>getTotalPriceComponent()The total amount for the Invoice may be calculated as the sum of the line items with surcharges/deductions that apply in certain conditions.CodeableConceptgetType()Type of Invoice depending on domain, realm an usage (e.g.booleanhasChildren()inthashCode()Invoice.BuildertoBuilder()Create a new Builder from the contents of this Resource-
Methods inherited from class com.ibm.fhir.model.resource.DomainResource
getContained, getExtension, getModifierExtension, getText
-
Methods inherited from class com.ibm.fhir.model.resource.Resource
as, getId, getImplicitRules, getLanguage, getMeta, is
-
-
-
-
Method Detail
-
getIdentifier
public List<Identifier> getIdentifier()
Identifier of this Invoice, often used for reference in correspondence about this invoice or for tracking of payments.- Returns:
- An unmodifiable list containing immutable objects of type
Identifierthat may be empty.
-
getStatus
public InvoiceStatus getStatus()
The current state of the Invoice.- Returns:
- An immutable object of type
InvoiceStatusthat is non-null.
-
getCancelledReason
public String getCancelledReason()
In case of Invoice cancellation a reason must be given (entered in error, superseded by corrected invoice etc.).- Returns:
- An immutable object of type
Stringthat may be null.
-
getType
public CodeableConcept getType()
Type of Invoice depending on domain, realm an usage (e.g. internal/external, dental, preliminary).- Returns:
- An immutable object of type
CodeableConceptthat may be null.
-
getSubject
public Reference getSubject()
The individual or set of individuals receiving the goods and services billed in this invoice.- Returns:
- An immutable object of type
Referencethat may be null.
-
getRecipient
public Reference getRecipient()
The individual or Organization responsible for balancing of this invoice.- Returns:
- An immutable object of type
Referencethat may be null.
-
getDate
public DateTime getDate()
Date/time(s) of when this Invoice was posted.- Returns:
- An immutable object of type
DateTimethat may be null.
-
getParticipant
public List<Invoice.Participant> getParticipant()
Indicates who or what performed or participated in the charged service.- Returns:
- An unmodifiable list containing immutable objects of type
Invoice.Participantthat may be empty.
-
getIssuer
public Reference getIssuer()
The organizationissuing the Invoice.- Returns:
- An immutable object of type
Referencethat may be null.
-
getAccount
public Reference getAccount()
Account which is supposed to be balanced with this Invoice.- Returns:
- An immutable object of type
Referencethat may be null.
-
getLineItem
public List<Invoice.LineItem> getLineItem()
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.- Returns:
- An unmodifiable list containing immutable objects of type
Invoice.LineItemthat may be empty.
-
getTotalPriceComponent
public List<Invoice.LineItem.PriceComponent> getTotalPriceComponent()
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.- Returns:
- An unmodifiable list containing immutable objects of type
PriceComponentthat may be empty.
-
getTotalNet
public Money getTotalNet()
Invoice total , taxes excluded.- Returns:
- An immutable object of type
Moneythat may be null.
-
getTotalGross
public Money getTotalGross()
Invoice total, tax included.- Returns:
- An immutable object of type
Moneythat may be null.
-
getPaymentTerms
public Markdown getPaymentTerms()
Payment details such as banking details, period of payment, deductibles, methods of payment.- Returns:
- An immutable object of type
Markdownthat may be null.
-
getNote
public List<Annotation> getNote()
Comments made about the invoice by the issuer, subject, or other participants.- Returns:
- An unmodifiable list containing immutable objects of type
Annotationthat may be empty.
-
hasChildren
public boolean hasChildren()
- Overrides:
hasChildrenin classDomainResource
-
accept
public void accept(String elementName, int elementIndex, Visitor visitor)
Description copied from interface:VisitableAccept a Visitor and invoke the appropriate visit methods. A typical implementation would look like this:if (visitor.preVisit(this)) { visitor.visitStart(elementName, elementIndex, this); if (visitor.visit(elementName, elementIndex, this)) { // visit children } visitor.visitEnd(elementName, elementIndex, this); visitor.postVisit(this); }- Specified by:
acceptin interfaceVisitable- Specified by:
acceptin classAbstractVisitable- Parameters:
elementName- the name of the element in the context of this visitelementIndex- the index of the element in a list or -1 if it is not contained within a Listvisitor- the visitor to use
-
toBuilder
public Invoice.Builder toBuilder()
Description copied from class:ResourceCreate a new Builder from the contents of this Resource- Specified by:
toBuilderin classDomainResource
-
builder
public static Invoice.Builder builder()
-
-