//
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-2 
// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
// Any modifications to this file will be lost upon recompilation of the source schema. 
// Generated on: 2016.09.14 at 11:44:49 AM PET 
//

package org.openfact.models.jpa.entities.ubl.common;

import javax.persistence.Access;
import javax.persistence.AccessType;
import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;

import org.hibernate.annotations.GenericGenerator;

@Entity
@Table(name = "DELIVERYTERMS")
public class DeliveryTermsEntity {

    @Id
    @Column(name = "ID")
    @GeneratedValue(generator = "uuid2")
    @GenericGenerator(name = "uuid2", strategy = "uuid2")
    @Access(AccessType.PROPERTY)
    protected String id;

    @Column(name = "ID_UBL")
    protected String ID;

    @Column(name = "SPECIAL_TERMS")
    protected String specialTerms;

    @Column(name = "LOSS_RISK_RESPONSIBILITY_CODE")
    protected String lossRiskResponsibilityCode;

    @Column(name = "LOSS_RISK")
    protected String lossRisk;

    @ManyToOne(targetEntity = LocationCommAggEntity.class, cascade = { CascadeType.ALL })
    @JoinColumn(name = "DELIVERYLOCATION_DELIVERYTERMS")
    protected LocationCommAggEntity deliveryLocation = new LocationCommAggEntity();

    @ManyToOne(targetEntity = AllowanceChargeEntity.class, cascade = { CascadeType.ALL })
    @JoinColumn(name = "ALLOWANCECHARGE_DELIVERYTERMS")
    protected AllowanceChargeEntity allowanceCharge = new AllowanceChargeEntity();

    /**
     * @return the id
     */
    public String getId() {
        return id;
    }

    /**
     * @param id
     *            the id to set
     */
    public void setId(String id) {
        this.id = id;
    }

    /**
     * @return the iD
     */
    public String getID() {
        return ID;
    }

    /**
     * @param iD
     *            the iD to set
     */
    public void setID(String iD) {
        ID = iD;
    }

    /**
     * @return the specialTerms
     */
    public String getSpecialTerms() {
        return specialTerms;
    }

    /**
     * @param specialTerms
     *            the specialTerms to set
     */
    public void setSpecialTerms(String specialTerms) {
        this.specialTerms = specialTerms;
    }

    /**
     * @return the lossRiskResponsibilityCode
     */
    public String getLossRiskResponsibilityCode() {
        return lossRiskResponsibilityCode;
    }

    /**
     * @param lossRiskResponsibilityCode
     *            the lossRiskResponsibilityCode to set
     */
    public void setLossRiskResponsibilityCode(String lossRiskResponsibilityCode) {
        this.lossRiskResponsibilityCode = lossRiskResponsibilityCode;
    }

    /**
     * @return the lossRisk
     */
    public String getLossRisk() {
        return lossRisk;
    }

    /**
     * @param lossRisk
     *            the lossRisk to set
     */
    public void setLossRisk(String lossRisk) {
        this.lossRisk = lossRisk;
    }

    /**
     * @return the deliveryLocation
     */
    public LocationCommAggEntity getDeliveryLocation() {
        return deliveryLocation;
    }

    /**
     * @param deliveryLocation
     *            the deliveryLocation to set
     */
    public void setDeliveryLocation(LocationCommAggEntity deliveryLocation) {
        this.deliveryLocation = deliveryLocation;
    }

    /**
     * @return the allowanceCharge
     */
    public AllowanceChargeEntity getAllowanceCharge() {
        return allowanceCharge;
    }

    /**
     * @param allowanceCharge
     *            the allowanceCharge to set
     */
    public void setAllowanceCharge(AllowanceChargeEntity allowanceCharge) {
        this.allowanceCharge = allowanceCharge;
    }

}
