Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.

...

Hinweis

Dieser Integrationsschritt kann erst durchgeführt werden, sobald die Vorbedingungen aus Abschnitt 3 erfüllt sind – d.h. sobald entsprechende Businessobjekte für Währung, Referenzen und ggf. Zahlungsbedingungen existieren.

 

Bei der Anbindung des MT940CAMT-Nuclets sind Wrapper-Klassen für Währungsobjekte, Referenzen und Zahlungsbedingungen (optional) anzupassen.

...

Codeblock
languagejava
titleorg.nuclet.mt940.wrapper.CurrencyWrapper
linenumberstrue
collapsetrue
package org.nuclet.mt940camt.wrapper;


import org.nuclos.api.businessobject.BusinessObject;

import org.nuclet.camt.wrapper.AbstractCurrencyWrapper;

// @replace!
//
// mit eigenem Code zu ersetzen, Beispiel:
//
// import org.nuclet.currency.Currency;


/**
 * Konkrete Wrapper-Klasse für Währungsobjekte
 * 
 * @version 1.0
 * @date 0710.0802.20132015
 * @nuclet org.nuclet.MT940CAMT054
 * @nucletversion 1.40.0
 * @sincenucletversion 1.10.0
 * @since 0710.0802.20132015
 * 
 * @author frank.lehmann@nuclos.de
 */
public class CurrencyWrapper extends AbstractCurrencyWrapper 
{
    public CurrencyWrapper(final BusinessObject currency)
    {
        // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
        //
        // Beispiel:
        //
        // if (currency instanceof Currency) {
        //    this.businessObject = currency;
        // }
    }
    
 
    /**
     * Liefert den ISO-4217-Code des Währungsobjektes.
     * @see https://de.wikipedia.org/wiki/ISO_4217
     * @see https://en.wikipedia.org/wiki/ISO_4217
     */
    public String getIso4217Code()
    {
        // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
        //
        // Beispiel:
        //
        // return ((Currency)this.businessObject).getIso4217Code();
        
        return null;
    }
}

...

Codeblock
languagejava
titleorg.nuclet.mt940.wrapper.ConditionsOfPaymentWrapper
linenumberstrue
collapsetrue
package org.nuclet.mt940camt.wrapper;


import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

import org.nuclos.api.businessobject.BusinessObject;
import org.nuclos.api.businessobject.facade.Stateful;

import org.nuclet.camt.wrapper.AbstractConditionsOfPaymentWrapper;

// @replace!
//
// mit eigenem Code zu ersetzen, Beispiel:
//
// import org.nuclet.businessobject.ConditionsOfPayment;


/**
 * Abstrakte Wrapper-Klasse für Zahlungsbedingungen
 * 
 * @version 1.10
 * @date 2010.02.20132015
 * @nuclet org.nuclet.MT940CAMT054
 * @nucletversion 1.40.0
 * @sincenucletversion 1.20.0
 * @since 2010.0902.20132015
 * 
 * @author frank.lehmann@nuclos.de
 * 
 */
public class ConditionsOfPaymentWrapper extends AbstractConditionsOfPaymentWrapper
{       
    
    public ConditionsOfPaymentWrapper(final BusinessObject boConditionsOfPayment)
    {
        // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
        //
        // Beispiel:
        //
        // if (boConditionsOfPayment instanceof ConditionsOfPayment) {
        //    this.businessObject = boConditionsOfPayment;
        // }
    }
    
    /**
     * Liefert den Skontosatz.
     */
    public BigDecimal getCashDiscount()
    {
        // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
        //
        // Beispiel:
        //
        // return ((ConditionsOfPayment)this.businessObject).getCashDiscount();
        
        return null;
    }
    
    /**
     * Liefert den erweiterten Skontosatz.
     */
    public BigDecimal getExtendedCashDiscount()
    {
        // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
        //
        // Beispiel:
        //
        // return ((ConditionsOfPayment)this.businessObject).getExtendedCashDiscount();
        
        return null;
    }
    
    
    /**
     * Liefert die Skontofrist (in Tagen).
     */
    public Integer getCashDiscountPeriod()
    {
        // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
        //
        // Beispiel:
        //
        // return ((ConditionsOfPayment)this.businessObject).getCashDiscountPeriod();
        
        return null;
    }
    
    /**
     * Liefert die erweiterte Skontofrist (in Tagen).
     */
    public Integer getExtendedCashDiscountPeriod()
    {
        // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
        //
        // Beispiel:
        //
        // return ((ConditionsOfPayment)this.businessObject).getExtendedCashDiscountPeriod();
        
        return null;
    }
    
    /**
     * Liefert die Kulanz (in Tagen).
     */
    public Integer getCashDiscountExGratiaDays()
    {
        // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
        //
        // Beispiel:
        //
        // return ((ConditionsOfPayment)this.businessObject).getCashDiscountExGratiaDays();
        
        return null;
    }
}

...

Codeblock
languagejava
titleorg.nuclet.mt940.wrapper.ReferenceWrapper
linenumberstrue
collapsetrue
package org.nuclet.mt940camt.wrapper;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

import org.nuclos.api.businessobject.BusinessObject;
import org.nuclos.api.businessobject.facade.Stateful;
import org.nuclos.api.provider.QueryProvider;

import org.nuclet.mt940camt.BankTransactionRef;
import org.nuclet.mt940camt.wrapper.ConditionsOfPaymentWrapper;
import org.nuclet.mt940camt.wrapper.AbstractConditionsOfPaymentWrapper;
import org.nuclet.camt.wrapper.AbstractReferenceWrapper;

// @replace!
//
// mit eigenem Code zu ersetzen, Beispiel:
//
// import org.nuclet.businessnuclet.ClientBilling;
// import org.nuclet.businessnuclet.ConditionsOfPayment;


/**
 * Konkrete Wrapper-Klasse für Referenzobjekte (Rechnungen, o.ä.)
 * 
 * @version 1.20
 * @date 0710.0702.20142015
 * @nuclet org.nuclet.MT940CAMT054
 * @nucletversion 1.40.10
 * @sincenucletversion 1.20.0
 * @since 2010.0902.20132015
 * 
 * @author frank.lehmann@nuclos.de
 */
public class ReferenceWrapper extends AbstractReferenceWrapper
{
 public ReferenceWrapper(final Stateful reference)
 {
 // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
 //
 // Beispiel:
 //
 // if (reference instanceof ClientBilling) {
 // this.businessObject = reference;
 // }
 }
 
 /**
 * Liefert die Referenz-Nummer, anhand derer der Datensatz eindeutig
 * zu identifizieren ist
 */
 public String getReferenceNumber()
 {
 // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
 //
 // Beispiel:
 //
 // return ((ClientBilling)this.businessObject).getBillingNumber();
 
 return null;
 }
 
 /**
 * Liefert die Datenbank-ID der referenzierten Zahlungsbedingungen
 * 
 */
 public Long getConditionsOfPaymentId()
 {
 // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
 //
 // Beispiel:
 //
 // return ((ClientBilling)this.businessObject).getConditionsOfPaymentId();
 
 return null;
 }
 

 /**
 * Liefert die Information darüber, ob die erste eingehende Zahlung den Statuswechsel 
 * im Referenzobjekt auslösen soll, d.h. den Statusübergang in Richtung "Bezahlt", 
 * "Beglichen", o.ä.
 */
 public Boolean getAcceptFirstIncomingPayment()
 {
 // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
 //
 // Beispiel:
 //
 // return ((ClientBilling)this.businessObject).getAcceptFirstIncomingPayment();
 
 return Boolean.FALSE;
 }
 
 /**
 * Liefert alle zugeordneten Bankumsätze, indirekt über die Zwischenentität "BankTransactionRef",
 * d.h. es sollten alle Einträge des entsprechenden Unterformulars zurückgegeben werden.
 * 
 */
 public List<BankTransactionRef> getBankTransactionRef()
 {
 // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
 //
 // Beispiel:
 //
 // return ((ClientBilling)this.businessObject).getBankTransactionRef();
 
 return null;
 } 
 
 /**
 * Liefert die tatsächlich genutzten Zahlungsbedingungen als "gewrapptes" Objekt.
 * 
 */
 public AbstractConditionsOfPaymentWrapper getConditionsOfPayment()
 {
 // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
 //
 // Beispiel:
 //
 // final Long lngConditionsOfPaymentId = ((ClientBilling)this.businessObject).getConditionsOfPaymentId();
 // final ConditionsOfPayment boConditionsOfPayment = QueryProvider.getById(ConditionsOfPayment.class, lngConditionsOfPaymentId);
 //
 // return new ConditionsOfPaymentWrapper(boConditionsOfPayment);
 
 return null;
 }
 
 /**
 * Liefert das das Zahlungsdatum.
 * 
 */
 public Date getDateOfInvoice()
 {
 // @replace Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
 //
 // Beispiel:
 //
 // return ((ClientBilling)this.businessObject).getBillingDate();
 
 return null;
 }
 
 /**
 * Liefert den Bruttogesamtbetrag des Referenzobjektes, d.h. den über eingehende
 * Zahlung auszugleichenden Betrag.
 * 
 */
 public BigDecimal getTotalAmountGross()
 {
 // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
 //
 // Beispiel:
 //
 // return ((ClientBilling)this.businessObject).getTotalAmountGross();
 
 return BigDecimal.ZERO;
 }
 
 /**
 * Setzt das "Payment Date" (Zahlungsdatum, Bezahlt am, o.ä.) im Referenzobjekt.
 * 
 * @param datPaymentDate 
 *
 */
 public void setPaymentDate(final Date datPaymentDate)
 {
 // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
 //
 // Beispiel:
 //
 // ((ClientBilling)this.businessObject).setPaymentDate(datPaymentDate);
 }
 
 
}