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 class
Invoice.Builder
static class
Invoice.LineItem
Each line item represents one charge for goods and services rendered.static class
Invoice.Participant
Indicates 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 void
accept(String elementName, int elementIndex, Visitor visitor)
Accept a Visitor and invoke the appropriate visit methods.static Invoice.Builder
builder()
boolean
equals(Object obj)
Reference
getAccount()
Account which is supposed to be balanced with this Invoice.String
getCancelledReason()
In case of Invoice cancellation a reason must be given (entered in error, superseded by corrected invoice etc.).DateTime
getDate()
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.Reference
getIssuer()
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.Markdown
getPaymentTerms()
Payment details such as banking details, period of payment, deductibles, methods of payment.Reference
getRecipient()
The individual or Organization responsible for balancing of this invoice.InvoiceStatus
getStatus()
The current state of the Invoice.Reference
getSubject()
The individual or set of individuals receiving the goods and services billed in this invoice.Money
getTotalGross()
Invoice total, tax included.Money
getTotalNet()
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.CodeableConcept
getType()
Type of Invoice depending on domain, realm an usage (e.g.boolean
hasChildren()
int
hashCode()
Invoice.Builder
toBuilder()
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
Identifier
that may be empty.
-
getStatus
public InvoiceStatus getStatus()
The current state of the Invoice.- Returns:
- An immutable object of type
InvoiceStatus
that 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
String
that 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
CodeableConcept
that 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
Reference
that may be null.
-
getRecipient
public Reference getRecipient()
The individual or Organization responsible for balancing of this invoice.- Returns:
- An immutable object of type
Reference
that may be null.
-
getDate
public DateTime getDate()
Date/time(s) of when this Invoice was posted.- Returns:
- An immutable object of type
DateTime
that 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.Participant
that may be empty.
-
getIssuer
public Reference getIssuer()
The organizationissuing the Invoice.- Returns:
- An immutable object of type
Reference
that may be null.
-
getAccount
public Reference getAccount()
Account which is supposed to be balanced with this Invoice.- Returns:
- An immutable object of type
Reference
that 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.LineItem
that 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
PriceComponent
that may be empty.
-
getTotalNet
public Money getTotalNet()
Invoice total , taxes excluded.- Returns:
- An immutable object of type
Money
that may be null.
-
getTotalGross
public Money getTotalGross()
Invoice total, tax included.- Returns:
- An immutable object of type
Money
that 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
Markdown
that 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
Annotation
that may be empty.
-
hasChildren
public boolean hasChildren()
- Overrides:
hasChildren
in classDomainResource
-
accept
public void accept(String elementName, int elementIndex, Visitor visitor)
Description copied from interface:Visitable
Accept 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:
accept
in interfaceVisitable
- Specified by:
accept
in 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:Resource
Create a new Builder from the contents of this Resource- Specified by:
toBuilder
in classDomainResource
-
builder
public static Invoice.Builder builder()
-
-