All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.softlayer.api.service.billing.invoice.item.tax.Info Maven / Gradle / Ivy

There is a newer version: 0.3.4
Show newest version
package com.softlayer.api.service.billing.invoice.item.tax;

import com.softlayer.api.annotation.ApiProperty;
import com.softlayer.api.annotation.ApiType;
import com.softlayer.api.service.Entity;
import com.softlayer.api.service.billing.Currency;
import com.softlayer.api.service.billing.invoice.Item;
import java.math.BigDecimal;
import java.util.GregorianCalendar;

/**
 * Information about the tax rates that apply to a particular invoice item. 
 *
 * @see SoftLayer_Billing_Invoice_Item_Tax_Info
 */
@ApiType("SoftLayer_Billing_Invoice_Item_Tax_Info")
public class Info extends Entity {

    @ApiProperty
    protected Item invoiceItem;

    public Item getInvoiceItem() {
        return invoiceItem;
    }

    public void setInvoiceItem(Item invoiceItem) {
        this.invoiceItem = invoiceItem;
    }

    @ApiProperty
    protected com.softlayer.api.service.billing.invoice.tax.Info invoiceTaxInfo;

    public com.softlayer.api.service.billing.invoice.tax.Info getInvoiceTaxInfo() {
        return invoiceTaxInfo;
    }

    public void setInvoiceTaxInfo(com.softlayer.api.service.billing.invoice.tax.Info invoiceTaxInfo) {
        this.invoiceTaxInfo = invoiceTaxInfo;
    }

    /**
     * This is the currency the invoice will be converted to.
     */
    @ApiProperty
    protected Currency toCurrency;

    public Currency getToCurrency() {
        return toCurrency;
    }

    public void setToCurrency(Currency toCurrency) {
        this.toCurrency = toCurrency;
    }

    /**
     * The date and time the tax information was recorded.
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected GregorianCalendar createDate;

    public GregorianCalendar getCreateDate() {
        return createDate;
    }

    public void setCreateDate(GregorianCalendar createDate) {
        createDateSpecified = true;
        this.createDate = createDate;
    }

    protected boolean createDateSpecified;

    public boolean isCreateDateSpecified() {
        return createDateSpecified;
    }

    public void unsetCreateDate() {
        createDate = null;
        createDateSpecified = false;
    }

    /**
     * The invoice description with special information about the invoice.
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected String description;

    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        descriptionSpecified = true;
        this.description = description;
    }

    protected boolean descriptionSpecified;

    public boolean isDescriptionSpecified() {
        return descriptionSpecified;
    }

    public void unsetDescription() {
        description = null;
        descriptionSpecified = false;
    }

    /**
     * The tax rate that can be multiplied by the subtotal to get the
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected BigDecimal effectiveTaxRate;

    public BigDecimal getEffectiveTaxRate() {
        return effectiveTaxRate;
    }

    public void setEffectiveTaxRate(BigDecimal effectiveTaxRate) {
        effectiveTaxRateSpecified = true;
        this.effectiveTaxRate = effectiveTaxRate;
    }

    protected boolean effectiveTaxRateSpecified;

    public boolean isEffectiveTaxRateSpecified() {
        return effectiveTaxRateSpecified;
    }

    public void unsetEffectiveTaxRate() {
        effectiveTaxRate = null;
        effectiveTaxRateSpecified = false;
    }

    /**
     * The amount that is exempt from tax.
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected BigDecimal exemptAmount;

    public BigDecimal getExemptAmount() {
        return exemptAmount;
    }

    public void setExemptAmount(BigDecimal exemptAmount) {
        exemptAmountSpecified = true;
        this.exemptAmount = exemptAmount;
    }

    protected boolean exemptAmountSpecified;

    public boolean isExemptAmountSpecified() {
        return exemptAmountSpecified;
    }

    public void unsetExemptAmount() {
        exemptAmount = null;
        exemptAmountSpecified = false;
    }

    /**
     * The type of fee being tracked for this particular set of tax information.
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected String feeProperty;

    public String getFeeProperty() {
        return feeProperty;
    }

    public void setFeeProperty(String feeProperty) {
        feePropertySpecified = true;
        this.feeProperty = feeProperty;
    }

    protected boolean feePropertySpecified;

    public boolean isFeePropertySpecified() {
        return feePropertySpecified;
    }

    public void unsetFeeProperty() {
        feeProperty = null;
        feePropertySpecified = false;
    }

    /**
     * An invoice item's tax information internal identifier.
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected Long id;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        idSpecified = true;
        this.id = id;
    }

    protected boolean idSpecified;

    public boolean isIdSpecified() {
        return idSpecified;
    }

    public void unsetId() {
        id = null;
        idSpecified = false;
    }

    /**
     * A reference to the related invoice item.
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected Long invoiceItemId;

    public Long getInvoiceItemId() {
        return invoiceItemId;
    }

    public void setInvoiceItemId(Long invoiceItemId) {
        invoiceItemIdSpecified = true;
        this.invoiceItemId = invoiceItemId;
    }

    protected boolean invoiceItemIdSpecified;

    public boolean isInvoiceItemIdSpecified() {
        return invoiceItemIdSpecified;
    }

    public void unsetInvoiceItemId() {
        invoiceItemId = null;
        invoiceItemIdSpecified = false;
    }

    /**
     * A reference to the tax information for the parent invoice.
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected Long invoiceTaxInfoId;

    public Long getInvoiceTaxInfoId() {
        return invoiceTaxInfoId;
    }

    public void setInvoiceTaxInfoId(Long invoiceTaxInfoId) {
        invoiceTaxInfoIdSpecified = true;
        this.invoiceTaxInfoId = invoiceTaxInfoId;
    }

    protected boolean invoiceTaxInfoIdSpecified;

    public boolean isInvoiceTaxInfoIdSpecified() {
        return invoiceTaxInfoIdSpecified;
    }

    public void unsetInvoiceTaxInfoId() {
        invoiceTaxInfoId = null;
        invoiceTaxInfoIdSpecified = false;
    }

    /**
     * The date and time the tax information was modified.
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected GregorianCalendar modifyDate;

    public GregorianCalendar getModifyDate() {
        return modifyDate;
    }

    public void setModifyDate(GregorianCalendar modifyDate) {
        modifyDateSpecified = true;
        this.modifyDate = modifyDate;
    }

    protected boolean modifyDateSpecified;

    public boolean isModifyDateSpecified() {
        return modifyDateSpecified;
    }

    public void unsetModifyDate() {
        modifyDate = null;
        modifyDateSpecified = false;
    }

    /**
     * The amount that is exempt from tax.
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected BigDecimal nonTaxableBasis;

    public BigDecimal getNonTaxableBasis() {
        return nonTaxableBasis;
    }

    public void setNonTaxableBasis(BigDecimal nonTaxableBasis) {
        nonTaxableBasisSpecified = true;
        this.nonTaxableBasis = nonTaxableBasis;
    }

    protected boolean nonTaxableBasisSpecified;

    public boolean isNonTaxableBasisSpecified() {
        return nonTaxableBasisSpecified;
    }

    public void unsetNonTaxableBasis() {
        nonTaxableBasis = null;
        nonTaxableBasisSpecified = false;
    }

    /**
     * A flag to indicate whether this is the official record for this invoice item.
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected Boolean reportedFlag;

    public Boolean getReportedFlag() {
        return reportedFlag;
    }

    public void setReportedFlag(Boolean reportedFlag) {
        reportedFlagSpecified = true;
        this.reportedFlag = reportedFlag;
    }

    protected boolean reportedFlagSpecified;

    public boolean isReportedFlagSpecified() {
        return reportedFlagSpecified;
    }

    public void unsetReportedFlag() {
        reportedFlag = null;
        reportedFlagSpecified = false;
    }

    /**
     * The registration that the seller will use to report the invoice.
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected String sellerRegistration;

    public String getSellerRegistration() {
        return sellerRegistration;
    }

    public void setSellerRegistration(String sellerRegistration) {
        sellerRegistrationSpecified = true;
        this.sellerRegistration = sellerRegistration;
    }

    protected boolean sellerRegistrationSpecified;

    public boolean isSellerRegistrationSpecified() {
        return sellerRegistrationSpecified;
    }

    public void unsetSellerRegistration() {
        sellerRegistration = null;
        sellerRegistrationSpecified = false;
    }

    /**
     * The tax amount associated with this line item.
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected BigDecimal taxAmount;

    public BigDecimal getTaxAmount() {
        return taxAmount;
    }

    public void setTaxAmount(BigDecimal taxAmount) {
        taxAmountSpecified = true;
        this.taxAmount = taxAmount;
    }

    protected boolean taxAmountSpecified;

    public boolean isTaxAmountSpecified() {
        return taxAmountSpecified;
    }

    public void unsetTaxAmount() {
        taxAmount = null;
        taxAmountSpecified = false;
    }

    /**
     * The tax amount (converted to the 'to' currency) associated with this line item.
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected BigDecimal taxAmountToCurrency;

    public BigDecimal getTaxAmountToCurrency() {
        return taxAmountToCurrency;
    }

    public void setTaxAmountToCurrency(BigDecimal taxAmountToCurrency) {
        taxAmountToCurrencySpecified = true;
        this.taxAmountToCurrency = taxAmountToCurrency;
    }

    protected boolean taxAmountToCurrencySpecified;

    public boolean isTaxAmountToCurrencySpecified() {
        return taxAmountToCurrencySpecified;
    }

    public void unsetTaxAmountToCurrency() {
        taxAmountToCurrency = null;
        taxAmountToCurrencySpecified = false;
    }

    /**
     * The tax rate used. Note that this might apply to only part of the
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected BigDecimal taxRate;

    public BigDecimal getTaxRate() {
        return taxRate;
    }

    public void setTaxRate(BigDecimal taxRate) {
        taxRateSpecified = true;
        this.taxRate = taxRate;
    }

    protected boolean taxRateSpecified;

    public boolean isTaxRateSpecified() {
        return taxRateSpecified;
    }

    public void unsetTaxRate() {
        taxRate = null;
        taxRateSpecified = false;
    }

    /**
     * The amount that is subject to tax.
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected BigDecimal taxableBasis;

    public BigDecimal getTaxableBasis() {
        return taxableBasis;
    }

    public void setTaxableBasis(BigDecimal taxableBasis) {
        taxableBasisSpecified = true;
        this.taxableBasis = taxableBasis;
    }

    protected boolean taxableBasisSpecified;

    public boolean isTaxableBasisSpecified() {
        return taxableBasisSpecified;
    }

    public void unsetTaxableBasis() {
        taxableBasis = null;
        taxableBasisSpecified = false;
    }

    /**
     * The currency code that the invoice is being converted to.
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected Long toCurrencyId;

    public Long getToCurrencyId() {
        return toCurrencyId;
    }

    public void setToCurrencyId(Long toCurrencyId) {
        toCurrencyIdSpecified = true;
        this.toCurrencyId = toCurrencyId;
    }

    protected boolean toCurrencyIdSpecified;

    public boolean isToCurrencyIdSpecified() {
        return toCurrencyIdSpecified;
    }

    public void unsetToCurrencyId() {
        toCurrencyId = null;
        toCurrencyIdSpecified = false;
    }

    public static class Mask extends com.softlayer.api.service.Entity.Mask {

        public com.softlayer.api.service.billing.invoice.Item.Mask invoiceItem() {
            return withSubMask("invoiceItem", com.softlayer.api.service.billing.invoice.Item.Mask.class);
        }

        public com.softlayer.api.service.billing.invoice.tax.Info.Mask invoiceTaxInfo() {
            return withSubMask("invoiceTaxInfo", com.softlayer.api.service.billing.invoice.tax.Info.Mask.class);
        }

        public com.softlayer.api.service.billing.Currency.Mask toCurrency() {
            return withSubMask("toCurrency", com.softlayer.api.service.billing.Currency.Mask.class);
        }

        public Mask createDate() {
            withLocalProperty("createDate");
            return this;
        }

        public Mask description() {
            withLocalProperty("description");
            return this;
        }

        public Mask effectiveTaxRate() {
            withLocalProperty("effectiveTaxRate");
            return this;
        }

        public Mask exemptAmount() {
            withLocalProperty("exemptAmount");
            return this;
        }

        public Mask feeProperty() {
            withLocalProperty("feeProperty");
            return this;
        }

        public Mask id() {
            withLocalProperty("id");
            return this;
        }

        public Mask invoiceItemId() {
            withLocalProperty("invoiceItemId");
            return this;
        }

        public Mask invoiceTaxInfoId() {
            withLocalProperty("invoiceTaxInfoId");
            return this;
        }

        public Mask modifyDate() {
            withLocalProperty("modifyDate");
            return this;
        }

        public Mask nonTaxableBasis() {
            withLocalProperty("nonTaxableBasis");
            return this;
        }

        public Mask reportedFlag() {
            withLocalProperty("reportedFlag");
            return this;
        }

        public Mask sellerRegistration() {
            withLocalProperty("sellerRegistration");
            return this;
        }

        public Mask taxAmount() {
            withLocalProperty("taxAmount");
            return this;
        }

        public Mask taxAmountToCurrency() {
            withLocalProperty("taxAmountToCurrency");
            return this;
        }

        public Mask taxRate() {
            withLocalProperty("taxRate");
            return this;
        }

        public Mask taxableBasis() {
            withLocalProperty("taxableBasis");
            return this;
        }

        public Mask toCurrencyId() {
            withLocalProperty("toCurrencyId");
            return this;
        }

    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy