package api.unicore.component.fees;
 
import static api.AbstractHandler.COMMISSION_BASIS_CLASSIFIER_NULL;
import static api.AbstractHandler.COMMISSION_BASIS_CLASSIFIER_NULL_CODE;
import static api.util.ComponentConstants.INTEGER_NULL;
import static api.util.ComponentConstants.INTEGER_NULL_CODE;
import static org.codehaus.jackson.map.annotate.JsonSerialize.Inclusion.NON_NULL;
 
import api.unicore.component.fees_manual.BatchFeeCommission;
import api.util.ClassifierFormat;
import api.util.IntegerFormat;
import iapp.util.audit.AuditHelper;
import javax.ws.rs.DefaultValue;
import javax.ws.rs.FormParam;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlSeeAlso;
import javax.xml.bind.annotation.XmlType;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
import org.codehaus.jackson.annotate.JsonPropertyOrder;
import org.codehaus.jackson.map.annotate.JsonDeserialize;
import org.codehaus.jackson.map.annotate.JsonSerialize;
 
/**
 * @author CodeGen [Liza Zhydok]
 * @company UnitedThinkers
 * @since 2013/04/10
 */
 
@JsonSerialize(include=NON_NULL)
@XmlType(propOrder={"visaSaleProcessingBasis", "visaSaleProcessingRate", "visaSaleItemBasis", "visaSaleItemRate", "visaCreditProcessingBasis", "visaCreditProcessingRate", "visaCreditItemBasis", "visaCreditItemRate", "masterCardSaleProcessingBasis", "masterCardSaleProcessingRate", "masterCardSaleItemBasis", "masterCardSaleItemRate", "masterCardCreditProcessingBasis", "masterCardCreditProcessingRate", "masterCardCreditItemBasis", "masterCardCreditItemRate", "amexSaleProcessingBasis", "amexSaleProcessingRate", "amexSaleItemBasis", "amexSaleItemRate", "amexCreditProcessingBasis", "amexCreditProcessingRate", "amexCreditItemBasis", "amexCreditItemRate", "discoverSaleProcessingBasis", "discoverSaleProcessingRate", "discoverSaleItemBasis", "discoverSaleItemRate", "discoverCreditProcessingBasis", "discoverCreditProcessingRate", "discoverCreditItemBasis", "discoverCreditItemRate", "achSaleProcessingBasis", "achSaleProcessingRate", "achSaleItemBasis", "achSaleItemRate", "achCreditProcessingBasis", "achCreditProcessingRate", "achCreditItemBasis", "achCreditItemRate"})
@JsonPropertyOrder({"visaSaleProcessingBasis", "visaSaleProcessingRate", "visaSaleItemBasis", "visaSaleItemRate", "visaCreditProcessingBasis", "visaCreditProcessingRate", "visaCreditItemBasis", "visaCreditItemRate", "masterCardSaleProcessingBasis", "masterCardSaleProcessingRate", "masterCardSaleItemBasis", "masterCardSaleItemRate", "masterCardCreditProcessingBasis", "masterCardCreditProcessingRate", "masterCardCreditItemBasis", "masterCardCreditItemRate", "amexSaleProcessingBasis", "amexSaleProcessingRate", "amexSaleItemBasis", "amexSaleItemRate", "amexCreditProcessingBasis", "amexCreditProcessingRate", "amexCreditItemBasis", "amexCreditItemRate", "discoverSaleProcessingBasis", "discoverSaleProcessingRate", "discoverSaleItemBasis", "discoverSaleItemRate", "discoverCreditProcessingBasis", "discoverCreditProcessingRate", "discoverCreditItemBasis", "discoverCreditItemRate", "achSaleProcessingBasis", "achSaleProcessingRate", "achSaleItemBasis", "achSaleItemRate", "achCreditProcessingBasis", "achCreditProcessingRate", "achCreditItemBasis", "achCreditItemRate"})
@XmlAccessorType(XmlAccessType.NONE)
@XmlSeeAlso(BatchFeeCommission.class)
public abstract class AbstractBatchFeeCommission {
 
    @FormParam("visaSaleProcessingBasis")
    @ClassifierFormat(unicore.model.CommissionBasisClassifier.class)
    @DefaultValue(COMMISSION_BASIS_CLASSIFIER_NULL_CODE)
    protected unicore.model.CommissionBasisClassifier visaSaleProcessingBasis = COMMISSION_BASIS_CLASSIFIER_NULL;
 
    @FormParam("visaSaleProcessingRate")
    @IntegerFormat
    @DefaultValue(INTEGER_NULL_CODE)
    protected Integer visaSaleProcessingRate = INTEGER_NULL;
 
    @FormParam("visaSaleItemBasis")
    @ClassifierFormat(unicore.model.CommissionBasisClassifier.class)
    @DefaultValue(COMMISSION_BASIS_CLASSIFIER_NULL_CODE)
    protected unicore.model.CommissionBasisClassifier visaSaleItemBasis = COMMISSION_BASIS_CLASSIFIER_NULL;
 
    @FormParam("visaSaleItemRate")
    @IntegerFormat
    @DefaultValue(INTEGER_NULL_CODE)
    protected Integer visaSaleItemRate = INTEGER_NULL;
 
    @FormParam("visaCreditProcessingBasis")
    @ClassifierFormat(unicore.model.CommissionBasisClassifier.class)
    @DefaultValue(COMMISSION_BASIS_CLASSIFIER_NULL_CODE)
    protected unicore.model.CommissionBasisClassifier visaCreditProcessingBasis = COMMISSION_BASIS_CLASSIFIER_NULL;
 
    @FormParam("visaCreditProcessingRate")
    @IntegerFormat
    @DefaultValue(INTEGER_NULL_CODE)
    protected Integer visaCreditProcessingRate = INTEGER_NULL;
 
    @FormParam("visaCreditItemBasis")
    @ClassifierFormat(unicore.model.CommissionBasisClassifier.class)
    @DefaultValue(COMMISSION_BASIS_CLASSIFIER_NULL_CODE)
    protected unicore.model.CommissionBasisClassifier visaCreditItemBasis = COMMISSION_BASIS_CLASSIFIER_NULL;
 
    @FormParam("visaCreditItemRate")
    @IntegerFormat
    @DefaultValue(INTEGER_NULL_CODE)
    protected Integer visaCreditItemRate = INTEGER_NULL;
 
    @FormParam("masterCardSaleProcessingBasis")
    @ClassifierFormat(unicore.model.CommissionBasisClassifier.class)
    @DefaultValue(COMMISSION_BASIS_CLASSIFIER_NULL_CODE)
    protected unicore.model.CommissionBasisClassifier masterCardSaleProcessingBasis = COMMISSION_BASIS_CLASSIFIER_NULL;
 
    @FormParam("masterCardSaleProcessingRate")
    @IntegerFormat
    @DefaultValue(INTEGER_NULL_CODE)
    protected Integer masterCardSaleProcessingRate = INTEGER_NULL;
 
    @FormParam("masterCardSaleItemBasis")
    @ClassifierFormat(unicore.model.CommissionBasisClassifier.class)
    @DefaultValue(COMMISSION_BASIS_CLASSIFIER_NULL_CODE)
    protected unicore.model.CommissionBasisClassifier masterCardSaleItemBasis = COMMISSION_BASIS_CLASSIFIER_NULL;
 
    @FormParam("masterCardSaleItemRate")
    @IntegerFormat
    @DefaultValue(INTEGER_NULL_CODE)
    protected Integer masterCardSaleItemRate = INTEGER_NULL;
 
    @FormParam("masterCardCreditProcessingBasis")
    @ClassifierFormat(unicore.model.CommissionBasisClassifier.class)
    @DefaultValue(COMMISSION_BASIS_CLASSIFIER_NULL_CODE)
    protected unicore.model.CommissionBasisClassifier masterCardCreditProcessingBasis = COMMISSION_BASIS_CLASSIFIER_NULL;
 
    @FormParam("masterCardCreditProcessingRate")
    @IntegerFormat
    @DefaultValue(INTEGER_NULL_CODE)
    protected Integer masterCardCreditProcessingRate = INTEGER_NULL;
 
    @FormParam("masterCardCreditItemBasis")
    @ClassifierFormat(unicore.model.CommissionBasisClassifier.class)
    @DefaultValue(COMMISSION_BASIS_CLASSIFIER_NULL_CODE)
    protected unicore.model.CommissionBasisClassifier masterCardCreditItemBasis = COMMISSION_BASIS_CLASSIFIER_NULL;
 
    @FormParam("masterCardCreditItemRate")
    @IntegerFormat
    @DefaultValue(INTEGER_NULL_CODE)
    protected Integer masterCardCreditItemRate = INTEGER_NULL;
 
    @FormParam("amexSaleProcessingBasis")
    @ClassifierFormat(unicore.model.CommissionBasisClassifier.class)
    @DefaultValue(COMMISSION_BASIS_CLASSIFIER_NULL_CODE)
    protected unicore.model.CommissionBasisClassifier amexSaleProcessingBasis = COMMISSION_BASIS_CLASSIFIER_NULL;
 
    @FormParam("amexSaleProcessingRate")
    @IntegerFormat
    @DefaultValue(INTEGER_NULL_CODE)
    protected Integer amexSaleProcessingRate = INTEGER_NULL;
 
    @FormParam("amexSaleItemBasis")
    @ClassifierFormat(unicore.model.CommissionBasisClassifier.class)
    @DefaultValue(COMMISSION_BASIS_CLASSIFIER_NULL_CODE)
    protected unicore.model.CommissionBasisClassifier amexSaleItemBasis = COMMISSION_BASIS_CLASSIFIER_NULL;
 
    @FormParam("amexSaleItemRate")
    @IntegerFormat
    @DefaultValue(INTEGER_NULL_CODE)
    protected Integer amexSaleItemRate = INTEGER_NULL;
 
    @FormParam("amexCreditProcessingBasis")
    @ClassifierFormat(unicore.model.CommissionBasisClassifier.class)
    @DefaultValue(COMMISSION_BASIS_CLASSIFIER_NULL_CODE)
    protected unicore.model.CommissionBasisClassifier amexCreditProcessingBasis = COMMISSION_BASIS_CLASSIFIER_NULL;
 
    @FormParam("amexCreditProcessingRate")
    @IntegerFormat
    @DefaultValue(INTEGER_NULL_CODE)
    protected Integer amexCreditProcessingRate = INTEGER_NULL;
 
    @FormParam("amexCreditItemBasis")
    @ClassifierFormat(unicore.model.CommissionBasisClassifier.class)
    @DefaultValue(COMMISSION_BASIS_CLASSIFIER_NULL_CODE)
    protected unicore.model.CommissionBasisClassifier amexCreditItemBasis = COMMISSION_BASIS_CLASSIFIER_NULL;
 
    @FormParam("amexCreditItemRate")
    @IntegerFormat
    @DefaultValue(INTEGER_NULL_CODE)
    protected Integer amexCreditItemRate = INTEGER_NULL;
 
    @FormParam("discoverSaleProcessingBasis")
    @ClassifierFormat(unicore.model.CommissionBasisClassifier.class)
    @DefaultValue(COMMISSION_BASIS_CLASSIFIER_NULL_CODE)
    protected unicore.model.CommissionBasisClassifier discoverSaleProcessingBasis = COMMISSION_BASIS_CLASSIFIER_NULL;
 
    @FormParam("discoverSaleProcessingRate")
    @IntegerFormat
    @DefaultValue(INTEGER_NULL_CODE)
    protected Integer discoverSaleProcessingRate = INTEGER_NULL;
 
    @FormParam("discoverSaleItemBasis")
    @ClassifierFormat(unicore.model.CommissionBasisClassifier.class)
    @DefaultValue(COMMISSION_BASIS_CLASSIFIER_NULL_CODE)
    protected unicore.model.CommissionBasisClassifier discoverSaleItemBasis = COMMISSION_BASIS_CLASSIFIER_NULL;
 
    @FormParam("discoverSaleItemRate")
    @IntegerFormat
    @DefaultValue(INTEGER_NULL_CODE)
    protected Integer discoverSaleItemRate = INTEGER_NULL;
 
    @FormParam("discoverCreditProcessingBasis")
    @ClassifierFormat(unicore.model.CommissionBasisClassifier.class)
    @DefaultValue(COMMISSION_BASIS_CLASSIFIER_NULL_CODE)
    protected unicore.model.CommissionBasisClassifier discoverCreditProcessingBasis = COMMISSION_BASIS_CLASSIFIER_NULL;
 
    @FormParam("discoverCreditProcessingRate")
    @IntegerFormat
    @DefaultValue(INTEGER_NULL_CODE)
    protected Integer discoverCreditProcessingRate = INTEGER_NULL;
 
    @FormParam("discoverCreditItemBasis")
    @ClassifierFormat(unicore.model.CommissionBasisClassifier.class)
    @DefaultValue(COMMISSION_BASIS_CLASSIFIER_NULL_CODE)
    protected unicore.model.CommissionBasisClassifier discoverCreditItemBasis = COMMISSION_BASIS_CLASSIFIER_NULL;
 
    @FormParam("discoverCreditItemRate")
    @IntegerFormat
    @DefaultValue(INTEGER_NULL_CODE)
    protected Integer discoverCreditItemRate = INTEGER_NULL;
 
    @FormParam("achSaleProcessingBasis")
    @ClassifierFormat(unicore.model.CommissionBasisClassifier.class)
    @DefaultValue(COMMISSION_BASIS_CLASSIFIER_NULL_CODE)
    protected unicore.model.CommissionBasisClassifier achSaleProcessingBasis = COMMISSION_BASIS_CLASSIFIER_NULL;
 
    @FormParam("achSaleProcessingRate")
    @IntegerFormat
    @DefaultValue(INTEGER_NULL_CODE)
    protected Integer achSaleProcessingRate = INTEGER_NULL;
 
    @FormParam("achSaleItemBasis")
    @ClassifierFormat(unicore.model.CommissionBasisClassifier.class)
    @DefaultValue(COMMISSION_BASIS_CLASSIFIER_NULL_CODE)
    protected unicore.model.CommissionBasisClassifier achSaleItemBasis = COMMISSION_BASIS_CLASSIFIER_NULL;
 
    @FormParam("achSaleItemRate")
    @IntegerFormat
    @DefaultValue(INTEGER_NULL_CODE)
    protected Integer achSaleItemRate = INTEGER_NULL;
 
    @FormParam("achCreditProcessingBasis")
    @ClassifierFormat(unicore.model.CommissionBasisClassifier.class)
    @DefaultValue(COMMISSION_BASIS_CLASSIFIER_NULL_CODE)
    protected unicore.model.CommissionBasisClassifier achCreditProcessingBasis = COMMISSION_BASIS_CLASSIFIER_NULL;
 
    @FormParam("achCreditProcessingRate")
    @IntegerFormat
    @DefaultValue(INTEGER_NULL_CODE)
    protected Integer achCreditProcessingRate = INTEGER_NULL;
 
    @FormParam("achCreditItemBasis")
    @ClassifierFormat(unicore.model.CommissionBasisClassifier.class)
    @DefaultValue(COMMISSION_BASIS_CLASSIFIER_NULL_CODE)
    protected unicore.model.CommissionBasisClassifier achCreditItemBasis = COMMISSION_BASIS_CLASSIFIER_NULL;
 
    @FormParam("achCreditItemRate")
    @IntegerFormat
    @DefaultValue(INTEGER_NULL_CODE)
    protected Integer achCreditItemRate = INTEGER_NULL;
 
 
    public AbstractBatchFeeCommission(){
    }
 
    public String toString(){
        StringBuilder sb = new StringBuilder();
        sb.append("commission: {");
        sb.append("visaSaleProcessingBasis: ");
        sb.append(visaSaleProcessingBasis);
        sb.append(',').append(' ');
        sb.append("visaSaleProcessingRate: ");
        sb.append(visaSaleProcessingRate);
        sb.append(',').append(' ');
        sb.append("visaSaleItemBasis: ");
        sb.append(visaSaleItemBasis);
        sb.append(',').append(' ');
        sb.append("visaSaleItemRate: ");
        sb.append(visaSaleItemRate);
        sb.append(',').append(' ');
        sb.append("visaCreditProcessingBasis: ");
        sb.append(visaCreditProcessingBasis);
        sb.append(',').append(' ');
        sb.append("visaCreditProcessingRate: ");
        sb.append(visaCreditProcessingRate);
        sb.append(',').append(' ');
        sb.append("visaCreditItemBasis: ");
        sb.append(visaCreditItemBasis);
        sb.append(',').append(' ');
        sb.append("visaCreditItemRate: ");
        sb.append(visaCreditItemRate);
        sb.append(',').append(' ');
        sb.append("masterCardSaleProcessingBasis: ");
        sb.append(masterCardSaleProcessingBasis);
        sb.append(',').append(' ');
        sb.append("masterCardSaleProcessingRate: ");
        sb.append(masterCardSaleProcessingRate);
        sb.append(',').append(' ');
        sb.append("masterCardSaleItemBasis: ");
        sb.append(masterCardSaleItemBasis);
        sb.append(',').append(' ');
        sb.append("masterCardSaleItemRate: ");
        sb.append(masterCardSaleItemRate);
        sb.append(',').append(' ');
        sb.append("masterCardCreditProcessingBasis: ");
        sb.append(masterCardCreditProcessingBasis);
        sb.append(',').append(' ');
        sb.append("masterCardCreditProcessingRate: ");
        sb.append(masterCardCreditProcessingRate);
        sb.append(',').append(' ');
        sb.append("masterCardCreditItemBasis: ");
        sb.append(masterCardCreditItemBasis);
        sb.append(',').append(' ');
        sb.append("masterCardCreditItemRate: ");
        sb.append(masterCardCreditItemRate);
        sb.append(',').append(' ');
        sb.append("amexSaleProcessingBasis: ");
        sb.append(amexSaleProcessingBasis);
        sb.append(',').append(' ');
        sb.append("amexSaleProcessingRate: ");
        sb.append(amexSaleProcessingRate);
        sb.append(',').append(' ');
        sb.append("amexSaleItemBasis: ");
        sb.append(amexSaleItemBasis);
        sb.append(',').append(' ');
        sb.append("amexSaleItemRate: ");
        sb.append(amexSaleItemRate);
        sb.append(',').append(' ');
        sb.append("amexCreditProcessingBasis: ");
        sb.append(amexCreditProcessingBasis);
        sb.append(',').append(' ');
        sb.append("amexCreditProcessingRate: ");
        sb.append(amexCreditProcessingRate);
        sb.append(',').append(' ');
        sb.append("amexCreditItemBasis: ");
        sb.append(amexCreditItemBasis);
        sb.append(',').append(' ');
        sb.append("amexCreditItemRate: ");
        sb.append(amexCreditItemRate);
        sb.append(',').append(' ');
        sb.append("discoverSaleProcessingBasis: ");
        sb.append(discoverSaleProcessingBasis);
        sb.append(',').append(' ');
        sb.append("discoverSaleProcessingRate: ");
        sb.append(discoverSaleProcessingRate);
        sb.append(',').append(' ');
        sb.append("discoverSaleItemBasis: ");
        sb.append(discoverSaleItemBasis);
        sb.append(',').append(' ');
        sb.append("discoverSaleItemRate: ");
        sb.append(discoverSaleItemRate);
        sb.append(',').append(' ');
        sb.append("discoverCreditProcessingBasis: ");
        sb.append(discoverCreditProcessingBasis);
        sb.append(',').append(' ');
        sb.append("discoverCreditProcessingRate: ");
        sb.append(discoverCreditProcessingRate);
        sb.append(',').append(' ');
        sb.append("discoverCreditItemBasis: ");
        sb.append(discoverCreditItemBasis);
        sb.append(',').append(' ');
        sb.append("discoverCreditItemRate: ");
        sb.append(discoverCreditItemRate);
        sb.append(',').append(' ');
        sb.append("achSaleProcessingBasis: ");
        sb.append(achSaleProcessingBasis);
        sb.append(',').append(' ');
        sb.append("achSaleProcessingRate: ");
        sb.append(achSaleProcessingRate);
        sb.append(',').append(' ');
        sb.append("achSaleItemBasis: ");
        sb.append(achSaleItemBasis);
        sb.append(',').append(' ');
        sb.append("achSaleItemRate: ");
        sb.append(achSaleItemRate);
        sb.append(',').append(' ');
        sb.append("achCreditProcessingBasis: ");
        sb.append(achCreditProcessingBasis);
        sb.append(',').append(' ');
        sb.append("achCreditProcessingRate: ");
        sb.append(achCreditProcessingRate);
        sb.append(',').append(' ');
        sb.append("achCreditItemBasis: ");
        sb.append(achCreditItemBasis);
        sb.append(',').append(' ');
        sb.append("achCreditItemRate: ");
        sb.append(achCreditItemRate);
        sb.append('}');
        return sb.toString();
    }
 
 
    @XmlAttribute(name="visaSaleProcessingBasis")
    @XmlJavaTypeAdapter(value=api.util.CommissionBasisClassifierAdapter.class)
    @FormParam("visaSaleProcessingBasis")
    @JsonSerialize(using=api.util.ClassifierSerializer.class, include=NON_NULL)
    public unicore.model.CommissionBasisClassifier getVisaSaleProcessingBasis(){
        return visaSaleProcessingBasis;
    }
 
    public void setVisaSaleProcessingBasis(unicore.model.CommissionBasisClassifier value){
        this.visaSaleProcessingBasis = value;
    }
 
    @XmlAttribute(name="visaSaleProcessingRate")
    @XmlJavaTypeAdapter(value=api.util.IntegerAdapter.class, type=Integer.class)
    @FormParam("visaSaleProcessingRate")
    @IntegerFormat
    @JsonDeserialize(using=api.util.NumberDeserializer.class)
    public Integer getVisaSaleProcessingRate(){
        return visaSaleProcessingRate;
    }
 
    public void setVisaSaleProcessingRate(Integer value){
        this.visaSaleProcessingRate = value;
    }
 
    @XmlAttribute(name="visaSaleItemBasis")
    @XmlJavaTypeAdapter(value=api.util.CommissionBasisClassifierAdapter.class)
    @FormParam("visaSaleItemBasis")
    @JsonSerialize(using=api.util.ClassifierSerializer.class, include=NON_NULL)
    public unicore.model.CommissionBasisClassifier getVisaSaleItemBasis(){
        return visaSaleItemBasis;
    }
 
    public void setVisaSaleItemBasis(unicore.model.CommissionBasisClassifier value){
        this.visaSaleItemBasis = value;
    }
 
    @XmlAttribute(name="visaSaleItemRate")
    @XmlJavaTypeAdapter(value=api.util.IntegerAdapter.class, type=Integer.class)
    @FormParam("visaSaleItemRate")
    @IntegerFormat
    @JsonDeserialize(using=api.util.NumberDeserializer.class)
    public Integer getVisaSaleItemRate(){
        return visaSaleItemRate;
    }
 
    public void setVisaSaleItemRate(Integer value){
        this.visaSaleItemRate = value;
    }
 
    @XmlAttribute(name="visaCreditProcessingBasis")
    @XmlJavaTypeAdapter(value=api.util.CommissionBasisClassifierAdapter.class)
    @FormParam("visaCreditProcessingBasis")
    @JsonSerialize(using=api.util.ClassifierSerializer.class, include=NON_NULL)
    public unicore.model.CommissionBasisClassifier getVisaCreditProcessingBasis(){
        return visaCreditProcessingBasis;
    }
 
    public void setVisaCreditProcessingBasis(unicore.model.CommissionBasisClassifier value){
        this.visaCreditProcessingBasis = value;
    }
 
    @XmlAttribute(name="visaCreditProcessingRate")
    @XmlJavaTypeAdapter(value=api.util.IntegerAdapter.class, type=Integer.class)
    @FormParam("visaCreditProcessingRate")
    @IntegerFormat
    @JsonDeserialize(using=api.util.NumberDeserializer.class)
    public Integer getVisaCreditProcessingRate(){
        return visaCreditProcessingRate;
    }
 
    public void setVisaCreditProcessingRate(Integer value){
        this.visaCreditProcessingRate = value;
    }
 
    @XmlAttribute(name="visaCreditItemBasis")
    @XmlJavaTypeAdapter(value=api.util.CommissionBasisClassifierAdapter.class)
    @FormParam("visaCreditItemBasis")
    @JsonSerialize(using=api.util.ClassifierSerializer.class, include=NON_NULL)
    public unicore.model.CommissionBasisClassifier getVisaCreditItemBasis(){
        return visaCreditItemBasis;
    }
 
    public void setVisaCreditItemBasis(unicore.model.CommissionBasisClassifier value){
        this.visaCreditItemBasis = value;
    }
 
    @XmlAttribute(name="visaCreditItemRate")
    @XmlJavaTypeAdapter(value=api.util.IntegerAdapter.class, type=Integer.class)
    @FormParam("visaCreditItemRate")
    @IntegerFormat
    @JsonDeserialize(using=api.util.NumberDeserializer.class)
    public Integer getVisaCreditItemRate(){
        return visaCreditItemRate;
    }
 
    public void setVisaCreditItemRate(Integer value){
        this.visaCreditItemRate = value;
    }
 
    @XmlAttribute(name="masterCardSaleProcessingBasis")
    @XmlJavaTypeAdapter(value=api.util.CommissionBasisClassifierAdapter.class)
    @FormParam("masterCardSaleProcessingBasis")
    @JsonSerialize(using=api.util.ClassifierSerializer.class, include=NON_NULL)
    public unicore.model.CommissionBasisClassifier getMasterCardSaleProcessingBasis(){
        return masterCardSaleProcessingBasis;
    }
 
    public void setMasterCardSaleProcessingBasis(unicore.model.CommissionBasisClassifier value){
        this.masterCardSaleProcessingBasis = value;
    }
 
    @XmlAttribute(name="masterCardSaleProcessingRate")
    @XmlJavaTypeAdapter(value=api.util.IntegerAdapter.class, type=Integer.class)
    @FormParam("masterCardSaleProcessingRate")
    @IntegerFormat
    @JsonDeserialize(using=api.util.NumberDeserializer.class)
    public Integer getMasterCardSaleProcessingRate(){
        return masterCardSaleProcessingRate;
    }
 
    public void setMasterCardSaleProcessingRate(Integer value){
        this.masterCardSaleProcessingRate = value;
    }
 
    @XmlAttribute(name="masterCardSaleItemBasis")
    @XmlJavaTypeAdapter(value=api.util.CommissionBasisClassifierAdapter.class)
    @FormParam("masterCardSaleItemBasis")
    @JsonSerialize(using=api.util.ClassifierSerializer.class, include=NON_NULL)
    public unicore.model.CommissionBasisClassifier getMasterCardSaleItemBasis(){
        return masterCardSaleItemBasis;
    }
 
    public void setMasterCardSaleItemBasis(unicore.model.CommissionBasisClassifier value){
        this.masterCardSaleItemBasis = value;
    }
 
    @XmlAttribute(name="masterCardSaleItemRate")
    @XmlJavaTypeAdapter(value=api.util.IntegerAdapter.class, type=Integer.class)
    @FormParam("masterCardSaleItemRate")
    @IntegerFormat
    @JsonDeserialize(using=api.util.NumberDeserializer.class)
    public Integer getMasterCardSaleItemRate(){
        return masterCardSaleItemRate;
    }
 
    public void setMasterCardSaleItemRate(Integer value){
        this.masterCardSaleItemRate = value;
    }
 
    @XmlAttribute(name="masterCardCreditProcessingBasis")
    @XmlJavaTypeAdapter(value=api.util.CommissionBasisClassifierAdapter.class)
    @FormParam("masterCardCreditProcessingBasis")
    @JsonSerialize(using=api.util.ClassifierSerializer.class, include=NON_NULL)
    public unicore.model.CommissionBasisClassifier getMasterCardCreditProcessingBasis(){
        return masterCardCreditProcessingBasis;
    }
 
    public void setMasterCardCreditProcessingBasis(unicore.model.CommissionBasisClassifier value){
        this.masterCardCreditProcessingBasis = value;
    }
 
    @XmlAttribute(name="masterCardCreditProcessingRate")
    @XmlJavaTypeAdapter(value=api.util.IntegerAdapter.class, type=Integer.class)
    @FormParam("masterCardCreditProcessingRate")
    @IntegerFormat
    @JsonDeserialize(using=api.util.NumberDeserializer.class)
    public Integer getMasterCardCreditProcessingRate(){
        return masterCardCreditProcessingRate;
    }
 
    public void setMasterCardCreditProcessingRate(Integer value){
        this.masterCardCreditProcessingRate = value;
    }
 
    @XmlAttribute(name="masterCardCreditItemBasis")
    @XmlJavaTypeAdapter(value=api.util.CommissionBasisClassifierAdapter.class)
    @FormParam("masterCardCreditItemBasis")
    @JsonSerialize(using=api.util.ClassifierSerializer.class, include=NON_NULL)
    public unicore.model.CommissionBasisClassifier getMasterCardCreditItemBasis(){
        return masterCardCreditItemBasis;
    }
 
    public void setMasterCardCreditItemBasis(unicore.model.CommissionBasisClassifier value){
        this.masterCardCreditItemBasis = value;
    }
 
    @XmlAttribute(name="masterCardCreditItemRate")
    @XmlJavaTypeAdapter(value=api.util.IntegerAdapter.class, type=Integer.class)
    @FormParam("masterCardCreditItemRate")
    @IntegerFormat
    @JsonDeserialize(using=api.util.NumberDeserializer.class)
    public Integer getMasterCardCreditItemRate(){
        return masterCardCreditItemRate;
    }
 
    public void setMasterCardCreditItemRate(Integer value){
        this.masterCardCreditItemRate = value;
    }
 
    @XmlAttribute(name="amexSaleProcessingBasis")
    @XmlJavaTypeAdapter(value=api.util.CommissionBasisClassifierAdapter.class)
    @FormParam("amexSaleProcessingBasis")
    @JsonSerialize(using=api.util.ClassifierSerializer.class, include=NON_NULL)
    public unicore.model.CommissionBasisClassifier getAmexSaleProcessingBasis(){
        return amexSaleProcessingBasis;
    }
 
    public void setAmexSaleProcessingBasis(unicore.model.CommissionBasisClassifier value){
        this.amexSaleProcessingBasis = value;
    }
 
    @XmlAttribute(name="amexSaleProcessingRate")
    @XmlJavaTypeAdapter(value=api.util.IntegerAdapter.class, type=Integer.class)
    @FormParam("amexSaleProcessingRate")
    @IntegerFormat
    @JsonDeserialize(using=api.util.NumberDeserializer.class)
    public Integer getAmexSaleProcessingRate(){
        return amexSaleProcessingRate;
    }
 
    public void setAmexSaleProcessingRate(Integer value){
        this.amexSaleProcessingRate = value;
    }
 
    @XmlAttribute(name="amexSaleItemBasis")
    @XmlJavaTypeAdapter(value=api.util.CommissionBasisClassifierAdapter.class)
    @FormParam("amexSaleItemBasis")
    @JsonSerialize(using=api.util.ClassifierSerializer.class, include=NON_NULL)
    public unicore.model.CommissionBasisClassifier getAmexSaleItemBasis(){
        return amexSaleItemBasis;
    }
 
    public void setAmexSaleItemBasis(unicore.model.CommissionBasisClassifier value){
        this.amexSaleItemBasis = value;
    }
 
    @XmlAttribute(name="amexSaleItemRate")
    @XmlJavaTypeAdapter(value=api.util.IntegerAdapter.class, type=Integer.class)
    @FormParam("amexSaleItemRate")
    @IntegerFormat
    @JsonDeserialize(using=api.util.NumberDeserializer.class)
    public Integer getAmexSaleItemRate(){
        return amexSaleItemRate;
    }
 
    public void setAmexSaleItemRate(Integer value){
        this.amexSaleItemRate = value;
    }
 
    @XmlAttribute(name="amexCreditProcessingBasis")
    @XmlJavaTypeAdapter(value=api.util.CommissionBasisClassifierAdapter.class)
    @FormParam("amexCreditProcessingBasis")
    @JsonSerialize(using=api.util.ClassifierSerializer.class, include=NON_NULL)
    public unicore.model.CommissionBasisClassifier getAmexCreditProcessingBasis(){
        return amexCreditProcessingBasis;
    }
 
    public void setAmexCreditProcessingBasis(unicore.model.CommissionBasisClassifier value){
        this.amexCreditProcessingBasis = value;
    }
 
    @XmlAttribute(name="amexCreditProcessingRate")
    @XmlJavaTypeAdapter(value=api.util.IntegerAdapter.class, type=Integer.class)
    @FormParam("amexCreditProcessingRate")
    @IntegerFormat
    @JsonDeserialize(using=api.util.NumberDeserializer.class)
    public Integer getAmexCreditProcessingRate(){
        return amexCreditProcessingRate;
    }
 
    public void setAmexCreditProcessingRate(Integer value){
        this.amexCreditProcessingRate = value;
    }
 
    @XmlAttribute(name="amexCreditItemBasis")
    @XmlJavaTypeAdapter(value=api.util.CommissionBasisClassifierAdapter.class)
    @FormParam("amexCreditItemBasis")
    @JsonSerialize(using=api.util.ClassifierSerializer.class, include=NON_NULL)
    public unicore.model.CommissionBasisClassifier getAmexCreditItemBasis(){
        return amexCreditItemBasis;
    }
 
    public void setAmexCreditItemBasis(unicore.model.CommissionBasisClassifier value){
        this.amexCreditItemBasis = value;
    }
 
    @XmlAttribute(name="amexCreditItemRate")
    @XmlJavaTypeAdapter(value=api.util.IntegerAdapter.class, type=Integer.class)
    @FormParam("amexCreditItemRate")
    @IntegerFormat
    @JsonDeserialize(using=api.util.NumberDeserializer.class)
    public Integer getAmexCreditItemRate(){
        return amexCreditItemRate;
    }
 
    public void setAmexCreditItemRate(Integer value){
        this.amexCreditItemRate = value;
    }
 
    @XmlAttribute(name="discoverSaleProcessingBasis")
    @XmlJavaTypeAdapter(value=api.util.CommissionBasisClassifierAdapter.class)
    @FormParam("discoverSaleProcessingBasis")
    @JsonSerialize(using=api.util.ClassifierSerializer.class, include=NON_NULL)
    public unicore.model.CommissionBasisClassifier getDiscoverSaleProcessingBasis(){
        return discoverSaleProcessingBasis;
    }
 
    public void setDiscoverSaleProcessingBasis(unicore.model.CommissionBasisClassifier value){
        this.discoverSaleProcessingBasis = value;
    }
 
    @XmlAttribute(name="discoverSaleProcessingRate")
    @XmlJavaTypeAdapter(value=api.util.IntegerAdapter.class, type=Integer.class)
    @FormParam("discoverSaleProcessingRate")
    @IntegerFormat
    @JsonDeserialize(using=api.util.NumberDeserializer.class)
    public Integer getDiscoverSaleProcessingRate(){
        return discoverSaleProcessingRate;
    }
 
    public void setDiscoverSaleProcessingRate(Integer value){
        this.discoverSaleProcessingRate = value;
    }
 
    @XmlAttribute(name="discoverSaleItemBasis")
    @XmlJavaTypeAdapter(value=api.util.CommissionBasisClassifierAdapter.class)
    @FormParam("discoverSaleItemBasis")
    @JsonSerialize(using=api.util.ClassifierSerializer.class, include=NON_NULL)
    public unicore.model.CommissionBasisClassifier getDiscoverSaleItemBasis(){
        return discoverSaleItemBasis;
    }
 
    public void setDiscoverSaleItemBasis(unicore.model.CommissionBasisClassifier value){
        this.discoverSaleItemBasis = value;
    }
 
    @XmlAttribute(name="discoverSaleItemRate")
    @XmlJavaTypeAdapter(value=api.util.IntegerAdapter.class, type=Integer.class)
    @FormParam("discoverSaleItemRate")
    @IntegerFormat
    @JsonDeserialize(using=api.util.NumberDeserializer.class)
    public Integer getDiscoverSaleItemRate(){
        return discoverSaleItemRate;
    }
 
    public void setDiscoverSaleItemRate(Integer value){
        this.discoverSaleItemRate = value;
    }
 
    @XmlAttribute(name="discoverCreditProcessingBasis")
    @XmlJavaTypeAdapter(value=api.util.CommissionBasisClassifierAdapter.class)
    @FormParam("discoverCreditProcessingBasis")
    @JsonSerialize(using=api.util.ClassifierSerializer.class, include=NON_NULL)
    public unicore.model.CommissionBasisClassifier getDiscoverCreditProcessingBasis(){
        return discoverCreditProcessingBasis;
    }
 
    public void setDiscoverCreditProcessingBasis(unicore.model.CommissionBasisClassifier value){
        this.discoverCreditProcessingBasis = value;
    }
 
    @XmlAttribute(name="discoverCreditProcessingRate")
    @XmlJavaTypeAdapter(value=api.util.IntegerAdapter.class, type=Integer.class)
    @FormParam("discoverCreditProcessingRate")
    @IntegerFormat
    @JsonDeserialize(using=api.util.NumberDeserializer.class)
    public Integer getDiscoverCreditProcessingRate(){
        return discoverCreditProcessingRate;
    }
 
    public void setDiscoverCreditProcessingRate(Integer value){
        this.discoverCreditProcessingRate = value;
    }
 
    @XmlAttribute(name="discoverCreditItemBasis")
    @XmlJavaTypeAdapter(value=api.util.CommissionBasisClassifierAdapter.class)
    @FormParam("discoverCreditItemBasis")
    @JsonSerialize(using=api.util.ClassifierSerializer.class, include=NON_NULL)
    public unicore.model.CommissionBasisClassifier getDiscoverCreditItemBasis(){
        return discoverCreditItemBasis;
    }
 
    public void setDiscoverCreditItemBasis(unicore.model.CommissionBasisClassifier value){
        this.discoverCreditItemBasis = value;
    }
 
    @XmlAttribute(name="discoverCreditItemRate")
    @XmlJavaTypeAdapter(value=api.util.IntegerAdapter.class, type=Integer.class)
    @FormParam("discoverCreditItemRate")
    @IntegerFormat
    @JsonDeserialize(using=api.util.NumberDeserializer.class)
    public Integer getDiscoverCreditItemRate(){
        return discoverCreditItemRate;
    }
 
    public void setDiscoverCreditItemRate(Integer value){
        this.discoverCreditItemRate = value;
    }
 
    @XmlAttribute(name="achSaleProcessingBasis")
    @XmlJavaTypeAdapter(value=api.util.CommissionBasisClassifierAdapter.class)
    @FormParam("achSaleProcessingBasis")
    @JsonSerialize(using=api.util.ClassifierSerializer.class, include=NON_NULL)
    public unicore.model.CommissionBasisClassifier getAchSaleProcessingBasis(){
        return achSaleProcessingBasis;
    }
 
    public void setAchSaleProcessingBasis(unicore.model.CommissionBasisClassifier value){
        this.achSaleProcessingBasis = value;
    }
 
    @XmlAttribute(name="achSaleProcessingRate")
    @XmlJavaTypeAdapter(value=api.util.IntegerAdapter.class, type=Integer.class)
    @FormParam("achSaleProcessingRate")
    @IntegerFormat
    @JsonDeserialize(using=api.util.NumberDeserializer.class)
    public Integer getAchSaleProcessingRate(){
        return achSaleProcessingRate;
    }
 
    public void setAchSaleProcessingRate(Integer value){
        this.achSaleProcessingRate = value;
    }
 
    @XmlAttribute(name="achSaleItemBasis")
    @XmlJavaTypeAdapter(value=api.util.CommissionBasisClassifierAdapter.class)
    @FormParam("achSaleItemBasis")
    @JsonSerialize(using=api.util.ClassifierSerializer.class, include=NON_NULL)
    public unicore.model.CommissionBasisClassifier getAchSaleItemBasis(){
        return achSaleItemBasis;
    }
 
    public void setAchSaleItemBasis(unicore.model.CommissionBasisClassifier value){
        this.achSaleItemBasis = value;
    }
 
    @XmlAttribute(name="achSaleItemRate")
    @XmlJavaTypeAdapter(value=api.util.IntegerAdapter.class, type=Integer.class)
    @FormParam("achSaleItemRate")
    @IntegerFormat
    @JsonDeserialize(using=api.util.NumberDeserializer.class)
    public Integer getAchSaleItemRate(){
        return achSaleItemRate;
    }
 
    public void setAchSaleItemRate(Integer value){
        this.achSaleItemRate = value;
    }
 
    @XmlAttribute(name="achCreditProcessingBasis")
    @XmlJavaTypeAdapter(value=api.util.CommissionBasisClassifierAdapter.class)
    @FormParam("achCreditProcessingBasis")
    @JsonSerialize(using=api.util.ClassifierSerializer.class, include=NON_NULL)
    public unicore.model.CommissionBasisClassifier getAchCreditProcessingBasis(){
        return achCreditProcessingBasis;
    }
 
    public void setAchCreditProcessingBasis(unicore.model.CommissionBasisClassifier value){
        this.achCreditProcessingBasis = value;
    }
 
    @XmlAttribute(name="achCreditProcessingRate")
    @XmlJavaTypeAdapter(value=api.util.IntegerAdapter.class, type=Integer.class)
    @FormParam("achCreditProcessingRate")
    @IntegerFormat
    @JsonDeserialize(using=api.util.NumberDeserializer.class)
    public Integer getAchCreditProcessingRate(){
        return achCreditProcessingRate;
    }
 
    public void setAchCreditProcessingRate(Integer value){
        this.achCreditProcessingRate = value;
    }
 
    @XmlAttribute(name="achCreditItemBasis")
    @XmlJavaTypeAdapter(value=api.util.CommissionBasisClassifierAdapter.class)
    @FormParam("achCreditItemBasis")
    @JsonSerialize(using=api.util.ClassifierSerializer.class, include=NON_NULL)
    public unicore.model.CommissionBasisClassifier getAchCreditItemBasis(){
        return achCreditItemBasis;
    }
 
    public void setAchCreditItemBasis(unicore.model.CommissionBasisClassifier value){
        this.achCreditItemBasis = value;
    }
 
    @XmlAttribute(name="achCreditItemRate")
    @XmlJavaTypeAdapter(value=api.util.IntegerAdapter.class, type=Integer.class)
    @FormParam("achCreditItemRate")
    @IntegerFormat
    @JsonDeserialize(using=api.util.NumberDeserializer.class)
    public Integer getAchCreditItemRate(){
        return achCreditItemRate;
    }
 
    public void setAchCreditItemRate(Integer value){
        this.achCreditItemRate = value;
    }
 
 
    public void audit(AuditHelper helper, AbstractBatchFeeCommission old) {
        helper.audit("visaSaleProcessingBasis", visaSaleProcessingBasis, old.getVisaSaleProcessingBasis());
        helper.audit("visaSaleProcessingRate", visaSaleProcessingRate, old.getVisaSaleProcessingRate());
        helper.audit("visaSaleItemBasis", visaSaleItemBasis, old.getVisaSaleItemBasis());
        helper.audit("visaSaleItemRate", visaSaleItemRate, old.getVisaSaleItemRate());
        helper.audit("visaCreditProcessingBasis", visaCreditProcessingBasis, old.getVisaCreditProcessingBasis());
        helper.audit("visaCreditProcessingRate", visaCreditProcessingRate, old.getVisaCreditProcessingRate());
        helper.audit("visaCreditItemBasis", visaCreditItemBasis, old.getVisaCreditItemBasis());
        helper.audit("visaCreditItemRate", visaCreditItemRate, old.getVisaCreditItemRate());
        helper.audit("masterCardSaleProcessingBasis", masterCardSaleProcessingBasis, old.getMasterCardSaleProcessingBasis());
        helper.audit("masterCardSaleProcessingRate", masterCardSaleProcessingRate, old.getMasterCardSaleProcessingRate());
        helper.audit("masterCardSaleItemBasis", masterCardSaleItemBasis, old.getMasterCardSaleItemBasis());
        helper.audit("masterCardSaleItemRate", masterCardSaleItemRate, old.getMasterCardSaleItemRate());
        helper.audit("masterCardCreditProcessingBasis", masterCardCreditProcessingBasis, old.getMasterCardCreditProcessingBasis());
        helper.audit("masterCardCreditProcessingRate", masterCardCreditProcessingRate, old.getMasterCardCreditProcessingRate());
        helper.audit("masterCardCreditItemBasis", masterCardCreditItemBasis, old.getMasterCardCreditItemBasis());
        helper.audit("masterCardCreditItemRate", masterCardCreditItemRate, old.getMasterCardCreditItemRate());
        helper.audit("amexSaleProcessingBasis", amexSaleProcessingBasis, old.getAmexSaleProcessingBasis());
        helper.audit("amexSaleProcessingRate", amexSaleProcessingRate, old.getAmexSaleProcessingRate());
        helper.audit("amexSaleItemBasis", amexSaleItemBasis, old.getAmexSaleItemBasis());
        helper.audit("amexSaleItemRate", amexSaleItemRate, old.getAmexSaleItemRate());
        helper.audit("amexCreditProcessingBasis", amexCreditProcessingBasis, old.getAmexCreditProcessingBasis());
        helper.audit("amexCreditProcessingRate", amexCreditProcessingRate, old.getAmexCreditProcessingRate());
        helper.audit("amexCreditItemBasis", amexCreditItemBasis, old.getAmexCreditItemBasis());
        helper.audit("amexCreditItemRate", amexCreditItemRate, old.getAmexCreditItemRate());
        helper.audit("discoverSaleProcessingBasis", discoverSaleProcessingBasis, old.getDiscoverSaleProcessingBasis());
        helper.audit("discoverSaleProcessingRate", discoverSaleProcessingRate, old.getDiscoverSaleProcessingRate());
        helper.audit("discoverSaleItemBasis", discoverSaleItemBasis, old.getDiscoverSaleItemBasis());
        helper.audit("discoverSaleItemRate", discoverSaleItemRate, old.getDiscoverSaleItemRate());
        helper.audit("discoverCreditProcessingBasis", discoverCreditProcessingBasis, old.getDiscoverCreditProcessingBasis());
        helper.audit("discoverCreditProcessingRate", discoverCreditProcessingRate, old.getDiscoverCreditProcessingRate());
        helper.audit("discoverCreditItemBasis", discoverCreditItemBasis, old.getDiscoverCreditItemBasis());
        helper.audit("discoverCreditItemRate", discoverCreditItemRate, old.getDiscoverCreditItemRate());
        helper.audit("achSaleProcessingBasis", achSaleProcessingBasis, old.getAchSaleProcessingBasis());
        helper.audit("achSaleProcessingRate", achSaleProcessingRate, old.getAchSaleProcessingRate());
        helper.audit("achSaleItemBasis", achSaleItemBasis, old.getAchSaleItemBasis());
        helper.audit("achSaleItemRate", achSaleItemRate, old.getAchSaleItemRate());
        helper.audit("achCreditProcessingBasis", achCreditProcessingBasis, old.getAchCreditProcessingBasis());
        helper.audit("achCreditProcessingRate", achCreditProcessingRate, old.getAchCreditProcessingRate());
        helper.audit("achCreditItemBasis", achCreditItemBasis, old.getAchCreditItemBasis());
        helper.audit("achCreditItemRate", achCreditItemRate, old.getAchCreditItemRate());
    }
 
}