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

com.tools20022.repository.msg.RemittanceAmount3 Maven / Gradle / Ivy

The newest version!
/* Tools20022 - API for ISO 20022
* Copyright (C) 2017 Tools20022.com - László Bukodi 
* 
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* 
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
* GNU General Public License for more details.
* 
* You should have received a copy of the GNU General Public License
* along with this program.  If not, see .
*/

package com.tools20022.repository.msg;

import com.tools20022.metamodel.MMMessageAssociationEnd;
import com.tools20022.metamodel.MMMessageAttribute;
import com.tools20022.metamodel.MMMessageComponent;
import com.tools20022.metamodel.MMRegistrationStatus;
import com.tools20022.repository.datatype.ActiveOrHistoricCurrencyAndAmount;
import com.tools20022.repository.entity.Adjustment;
import com.tools20022.repository.entity.Discount;
import com.tools20022.repository.entity.PaymentObligation;
import com.tools20022.repository.entity.Tax;
import com.tools20022.repository.GeneratedRepository;
import java.util.Arrays;
import java.util.concurrent.atomic.AtomicReference;
import java.util.List;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlType;

/**
 * Nature of the amount and currency on a document referred to in the remittance
 * section, typically either the original amount due/payable or the amount
 * actually remitted for the referenced document.
 * 

* Constant fields: *

    *
  • * {@linkplain com.tools20022.metamodel.MMMessageElementContainer#getMessageElement * messageElement} = *
      *
    • * {@linkplain com.tools20022.repository.msg.RemittanceAmount3#mmDuePayableAmount * RemittanceAmount3.mmDuePayableAmount}
    • *
    • * {@linkplain com.tools20022.repository.msg.RemittanceAmount3#mmDiscountAppliedAmount * RemittanceAmount3.mmDiscountAppliedAmount}
    • *
    • * {@linkplain com.tools20022.repository.msg.RemittanceAmount3#mmCreditNoteAmount * RemittanceAmount3.mmCreditNoteAmount}
    • *
    • {@linkplain com.tools20022.repository.msg.RemittanceAmount3#mmTaxAmount * RemittanceAmount3.mmTaxAmount}
    • *
    • * {@linkplain com.tools20022.repository.msg.RemittanceAmount3#mmAdjustmentAmountAndReason * RemittanceAmount3.mmAdjustmentAmountAndReason}
    • *
    • * {@linkplain com.tools20022.repository.msg.RemittanceAmount3#mmRemittedAmount * RemittanceAmount3.mmRemittedAmount}
    • *
    *
  • *
  • * {@linkplain com.tools20022.metamodel.MMTopLevelDictionaryEntry#getDataDictionary * dataDictionary} = * {@linkplain com.tools20022.repository.GeneratedRepository#mmdataDict * GeneratedRepository.mmdataDict}
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getRegistrationStatus * registrationStatus} = * com.tools20022.metamodel.MMRegistrationStatus.REGISTERED
  • *
  • {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getName name} = * "RemittanceAmount3"
  • *
  • {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getDefinition * definition} = * "Nature of the amount and currency on a document referred to in the remittance section, typically either the original amount due/payable or the amount actually remitted for the referenced document." *
  • *
  • {@linkplain com.tools20022.metamodel.MMModelEntity#getPreviousVersion * previousVersion} = * {@linkplain com.tools20022.repository.msg.RemittanceAmount2 * RemittanceAmount2}
  • *
*/ @XmlAccessorType(XmlAccessType.PROPERTY) @XmlType(name = "RemittanceAmount3", propOrder = {"duePayableAmount", "discountAppliedAmount", "creditNoteAmount", "taxAmount", "adjustmentAmountAndReason", "remittedAmount"}) public class RemittanceAmount3 { final static private AtomicReference mmObject_lazy = new AtomicReference<>(); protected ActiveOrHistoricCurrencyAndAmount duePayableAmount; /** * Amount specified is the exact amount due and payable to the creditor. *

* Constant fields: *

    *
  • * {@linkplain com.tools20022.metamodel.MMMessageAttribute#getSimpleType * simpleType} = * {@linkplain com.tools20022.repository.datatype.ActiveOrHistoricCurrencyAndAmount * ActiveOrHistoricCurrencyAndAmount}
  • *
  • * {@linkplain com.tools20022.metamodel.MMMessageElement#getBusinessElementTrace * businessElementTrace} = * {@linkplain com.tools20022.repository.entity.PaymentObligation#mmAmount * PaymentObligation.mmAmount}
  • *
  • * {@linkplain com.tools20022.metamodel.MMMessageElement#getComponentContext * componentContext} = * {@linkplain com.tools20022.repository.msg.RemittanceAmount3 * RemittanceAmount3}
  • *
  • {@linkplain com.tools20022.metamodel.MMMessageConstruct#getXmlTag * xmlTag} = "DuePyblAmt"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getRegistrationStatus * registrationStatus} = * com.tools20022.metamodel.MMRegistrationStatus.PROVISIONALLY_REGISTERED
  • *
  • {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getName * name} = "DuePayableAmount"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getDefinition * definition} = * "Amount specified is the exact amount due and payable to the creditor."
  • *
  • * {@linkplain com.tools20022.metamodel.MMModelEntity#getPreviousVersion * previousVersion} = * {@linkplain com.tools20022.repository.msg.RemittanceAmount2#mmDuePayableAmount * RemittanceAmount2.mmDuePayableAmount}
  • *
*/ public static final MMMessageAttribute mmDuePayableAmount = new MMMessageAttribute() { { businessElementTrace_lazy = () -> PaymentObligation.mmAmount; componentContext_lazy = () -> RemittanceAmount3.mmObject(); isDerived = false; xmlTag = "DuePyblAmt"; registrationStatus = MMRegistrationStatus.PROVISIONALLY_REGISTERED; name = "DuePayableAmount"; definition = "Amount specified is the exact amount due and payable to the creditor."; previousVersion_lazy = () -> RemittanceAmount2.mmDuePayableAmount; maxOccurs = 1; minOccurs = 0; simpleType_lazy = () -> ActiveOrHistoricCurrencyAndAmount.mmObject(); } }; protected List discountAppliedAmount; /** * Amount of discount to be applied to the amount due and payable to the * creditor. *

* Constant fields: *

    *
  • * {@linkplain com.tools20022.metamodel.MMMessageAttribute#getComplexType * complexType} = * {@linkplain com.tools20022.repository.msg.DiscountAmountAndType1 * DiscountAmountAndType1}
  • *
  • * {@linkplain com.tools20022.metamodel.MMMessageElement#getBusinessElementTrace * businessElementTrace} = * {@linkplain com.tools20022.repository.entity.Discount#mmDiscountAppliedAmount * Discount.mmDiscountAppliedAmount}
  • *
  • * {@linkplain com.tools20022.metamodel.MMMessageElement#getComponentContext * componentContext} = * {@linkplain com.tools20022.repository.msg.RemittanceAmount3 * RemittanceAmount3}
  • *
  • {@linkplain com.tools20022.metamodel.MMMessageConstruct#getXmlTag * xmlTag} = "DscntApldAmt"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getRegistrationStatus * registrationStatus} = * com.tools20022.metamodel.MMRegistrationStatus.PROVISIONALLY_REGISTERED
  • *
  • {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getName * name} = "DiscountAppliedAmount"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getDefinition * definition} = * "Amount of discount to be applied to the amount due and payable to the creditor." *
  • *
  • * {@linkplain com.tools20022.metamodel.MMModelEntity#getPreviousVersion * previousVersion} = * {@linkplain com.tools20022.repository.msg.RemittanceAmount2#mmDiscountAppliedAmount * RemittanceAmount2.mmDiscountAppliedAmount}
  • *
*/ public static final MMMessageAttribute mmDiscountAppliedAmount = new MMMessageAttribute() { { businessElementTrace_lazy = () -> Discount.mmDiscountAppliedAmount; componentContext_lazy = () -> RemittanceAmount3.mmObject(); isDerived = false; xmlTag = "DscntApldAmt"; registrationStatus = MMRegistrationStatus.PROVISIONALLY_REGISTERED; name = "DiscountAppliedAmount"; definition = "Amount of discount to be applied to the amount due and payable to the creditor."; previousVersion_lazy = () -> RemittanceAmount2.mmDiscountAppliedAmount; minOccurs = 0; complexType_lazy = () -> com.tools20022.repository.msg.DiscountAmountAndType1.mmObject(); } }; protected ActiveOrHistoricCurrencyAndAmount creditNoteAmount; /** * Amount of a credit note. *

* Constant fields: *

    *
  • * {@linkplain com.tools20022.metamodel.MMMessageAttribute#getSimpleType * simpleType} = * {@linkplain com.tools20022.repository.datatype.ActiveOrHistoricCurrencyAndAmount * ActiveOrHistoricCurrencyAndAmount}
  • *
  • * {@linkplain com.tools20022.metamodel.MMMessageElement#getComponentContext * componentContext} = * {@linkplain com.tools20022.repository.msg.RemittanceAmount3 * RemittanceAmount3}
  • *
  • {@linkplain com.tools20022.metamodel.MMMessageConstruct#getXmlTag * xmlTag} = "CdtNoteAmt"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getRegistrationStatus * registrationStatus} = * com.tools20022.metamodel.MMRegistrationStatus.PROVISIONALLY_REGISTERED
  • *
  • {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getName * name} = "CreditNoteAmount"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getDefinition * definition} = "Amount of a credit note."
  • *
  • * {@linkplain com.tools20022.metamodel.MMModelEntity#getPreviousVersion * previousVersion} = * {@linkplain com.tools20022.repository.msg.RemittanceAmount2#mmCreditNoteAmount * RemittanceAmount2.mmCreditNoteAmount}
  • *
*/ public static final MMMessageAttribute mmCreditNoteAmount = new MMMessageAttribute() { { componentContext_lazy = () -> RemittanceAmount3.mmObject(); isDerived = false; xmlTag = "CdtNoteAmt"; registrationStatus = MMRegistrationStatus.PROVISIONALLY_REGISTERED; name = "CreditNoteAmount"; definition = "Amount of a credit note."; previousVersion_lazy = () -> RemittanceAmount2.mmCreditNoteAmount; maxOccurs = 1; minOccurs = 0; simpleType_lazy = () -> ActiveOrHistoricCurrencyAndAmount.mmObject(); } }; protected List taxAmount; /** * Amount of the tax. *

* Constant fields: *

    *
  • * {@linkplain com.tools20022.metamodel.MMMessageAttribute#getComplexType * complexType} = * {@linkplain com.tools20022.repository.msg.TaxAmountAndType1 * TaxAmountAndType1}
  • *
  • * {@linkplain com.tools20022.metamodel.MMMessageElement#getBusinessElementTrace * businessElementTrace} = * {@linkplain com.tools20022.repository.entity.Tax#mmAmount Tax.mmAmount}
  • *
  • * {@linkplain com.tools20022.metamodel.MMMessageElement#getComponentContext * componentContext} = * {@linkplain com.tools20022.repository.msg.RemittanceAmount3 * RemittanceAmount3}
  • *
  • {@linkplain com.tools20022.metamodel.MMMessageConstruct#getXmlTag * xmlTag} = "TaxAmt"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getRegistrationStatus * registrationStatus} = * com.tools20022.metamodel.MMRegistrationStatus.PROVISIONALLY_REGISTERED
  • *
  • {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getName * name} = "TaxAmount"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getDefinition * definition} = "Amount of the tax."
  • *
  • * {@linkplain com.tools20022.metamodel.MMModelEntity#getPreviousVersion * previousVersion} = * {@linkplain com.tools20022.repository.msg.RemittanceAmount2#mmTaxAmount * RemittanceAmount2.mmTaxAmount}
  • *
*/ public static final MMMessageAttribute mmTaxAmount = new MMMessageAttribute() { { businessElementTrace_lazy = () -> Tax.mmAmount; componentContext_lazy = () -> RemittanceAmount3.mmObject(); isDerived = false; xmlTag = "TaxAmt"; registrationStatus = MMRegistrationStatus.PROVISIONALLY_REGISTERED; name = "TaxAmount"; definition = "Amount of the tax."; previousVersion_lazy = () -> RemittanceAmount2.mmTaxAmount; minOccurs = 0; complexType_lazy = () -> com.tools20022.repository.msg.TaxAmountAndType1.mmObject(); } }; protected List adjustmentAmountAndReason; /** * Specifies detailed information on the amount and reason of the * adjustment. *

* Constant fields: *

    *
  • {@linkplain com.tools20022.metamodel.MMMessageAssociationEnd#getType * type} = {@linkplain com.tools20022.repository.msg.DocumentAdjustment1 * DocumentAdjustment1}
  • *
  • * {@linkplain com.tools20022.metamodel.MMMessageElement#getBusinessComponentTrace * businessComponentTrace} = * {@linkplain com.tools20022.repository.entity.Adjustment Adjustment}
  • *
  • * {@linkplain com.tools20022.metamodel.MMMessageElement#getComponentContext * componentContext} = * {@linkplain com.tools20022.repository.msg.RemittanceAmount3 * RemittanceAmount3}
  • *
  • {@linkplain com.tools20022.metamodel.MMMessageConstruct#getXmlTag * xmlTag} = "AdjstmntAmtAndRsn"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getRegistrationStatus * registrationStatus} = * com.tools20022.metamodel.MMRegistrationStatus.PROVISIONALLY_REGISTERED
  • *
  • {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getName * name} = "AdjustmentAmountAndReason"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getDefinition * definition} = * "Specifies detailed information on the amount and reason of the adjustment." *
  • *
  • * {@linkplain com.tools20022.metamodel.MMModelEntity#getPreviousVersion * previousVersion} = * {@linkplain com.tools20022.repository.msg.RemittanceAmount2#mmAdjustmentAmountAndReason * RemittanceAmount2.mmAdjustmentAmountAndReason}
  • *
*/ public static final MMMessageAssociationEnd mmAdjustmentAmountAndReason = new MMMessageAssociationEnd() { { businessComponentTrace_lazy = () -> Adjustment.mmObject(); componentContext_lazy = () -> RemittanceAmount3.mmObject(); isDerived = false; xmlTag = "AdjstmntAmtAndRsn"; registrationStatus = MMRegistrationStatus.PROVISIONALLY_REGISTERED; name = "AdjustmentAmountAndReason"; definition = "Specifies detailed information on the amount and reason of the adjustment."; previousVersion_lazy = () -> RemittanceAmount2.mmAdjustmentAmountAndReason; minOccurs = 0; isComposite = true; type_lazy = () -> com.tools20022.repository.msg.DocumentAdjustment1.mmObject(); } }; protected ActiveOrHistoricCurrencyAndAmount remittedAmount; /** * Amount of money remitted. *

* Constant fields: *

    *
  • * {@linkplain com.tools20022.metamodel.MMMessageAttribute#getSimpleType * simpleType} = * {@linkplain com.tools20022.repository.datatype.ActiveOrHistoricCurrencyAndAmount * ActiveOrHistoricCurrencyAndAmount}
  • *
  • * {@linkplain com.tools20022.metamodel.MMMessageElement#getComponentContext * componentContext} = * {@linkplain com.tools20022.repository.msg.RemittanceAmount3 * RemittanceAmount3}
  • *
  • {@linkplain com.tools20022.metamodel.MMMessageConstruct#getXmlTag * xmlTag} = "RmtdAmt"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getRegistrationStatus * registrationStatus} = * com.tools20022.metamodel.MMRegistrationStatus.PROVISIONALLY_REGISTERED
  • *
  • {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getName * name} = "RemittedAmount"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getDefinition * definition} = "Amount of money remitted."
  • *
  • * {@linkplain com.tools20022.metamodel.MMModelEntity#getPreviousVersion * previousVersion} = * {@linkplain com.tools20022.repository.msg.RemittanceAmount2#mmRemittedAmount * RemittanceAmount2.mmRemittedAmount}
  • *
*/ public static final MMMessageAttribute mmRemittedAmount = new MMMessageAttribute() { { componentContext_lazy = () -> RemittanceAmount3.mmObject(); isDerived = false; xmlTag = "RmtdAmt"; registrationStatus = MMRegistrationStatus.PROVISIONALLY_REGISTERED; name = "RemittedAmount"; definition = "Amount of money remitted."; previousVersion_lazy = () -> RemittanceAmount2.mmRemittedAmount; maxOccurs = 1; minOccurs = 0; simpleType_lazy = () -> ActiveOrHistoricCurrencyAndAmount.mmObject(); } }; final static public MMMessageComponent mmObject() { mmObject_lazy.compareAndSet(null, new MMMessageComponent() { { messageElement_lazy = () -> Arrays.asList(RemittanceAmount3.mmDuePayableAmount, RemittanceAmount3.mmDiscountAppliedAmount, RemittanceAmount3.mmCreditNoteAmount, RemittanceAmount3.mmTaxAmount, RemittanceAmount3.mmAdjustmentAmountAndReason, RemittanceAmount3.mmRemittedAmount); dataDictionary_lazy = () -> GeneratedRepository.mmdataDict; registrationStatus = MMRegistrationStatus.REGISTERED; name = "RemittanceAmount3"; definition = "Nature of the amount and currency on a document referred to in the remittance section, typically either the original amount due/payable or the amount actually remitted for the referenced document."; previousVersion_lazy = () -> RemittanceAmount2.mmObject(); } }); return mmObject_lazy.get(); } @XmlElement(name = "DuePyblAmt") public ActiveOrHistoricCurrencyAndAmount getDuePayableAmount() { return duePayableAmount; } public void setDuePayableAmount(ActiveOrHistoricCurrencyAndAmount duePayableAmount) { this.duePayableAmount = duePayableAmount; } @XmlElement(name = "DscntApldAmt") public List getDiscountAppliedAmount() { return discountAppliedAmount; } public void setDiscountAppliedAmount(List discountAppliedAmount) { this.discountAppliedAmount = discountAppliedAmount; } @XmlElement(name = "CdtNoteAmt") public ActiveOrHistoricCurrencyAndAmount getCreditNoteAmount() { return creditNoteAmount; } public void setCreditNoteAmount(ActiveOrHistoricCurrencyAndAmount creditNoteAmount) { this.creditNoteAmount = creditNoteAmount; } @XmlElement(name = "TaxAmt") public List getTaxAmount() { return taxAmount; } public void setTaxAmount(List taxAmount) { this.taxAmount = taxAmount; } @XmlElement(name = "AdjstmntAmtAndRsn") public List getAdjustmentAmountAndReason() { return adjustmentAmountAndReason; } public void setAdjustmentAmountAndReason(List adjustmentAmountAndReason) { this.adjustmentAmountAndReason = adjustmentAmountAndReason; } @XmlElement(name = "RmtdAmt") public ActiveOrHistoricCurrencyAndAmount getRemittedAmount() { return remittedAmount; } public void setRemittedAmount(ActiveOrHistoricCurrencyAndAmount remittedAmount) { this.remittedAmount = remittedAmount; } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy