LetterOfCreditShippingInfo.java
package com.tradecloud.domain.letterofcredit;
import com.tradecloud.common.base.PersistenceBase;
import com.tradecloud.domain.common.Incoterm;
import com.tradecloud.domain.party.ServiceProvider;
import com.tradecloud.domain.place.NamedPlace;
import com.tradecloud.domain.place.PlaceOfDischarge;
import com.tradecloud.domain.place.PlaceOfLoading;
import org.hibernate.annotations.ForeignKey;
import javax.persistence.*;
import javax.validation.constraints.NotNull;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlRootElement;
import java.io.Serializable;
import java.util.Date;
/**
* https://connect.devstream.net/display/Dev/Create+Letter+of+Credit.
*/
@Entity
@Table(name = "letterofcreditshippinginfo")
@Access(AccessType.FIELD)
@XmlAccessorType(XmlAccessType.FIELD)
@XmlRootElement(name = "ShippingInfo")
public class LetterOfCreditShippingInfo extends PersistenceBase implements Serializable {
@ManyToOne
@ForeignKey(name = "fk_freightforwarder")
private ServiceProvider freightForwarder;
@NotNull(message = "Incoterm is required")
@ManyToOne(optional = false)
@ForeignKey(name = "fk_incoterm")
private Incoterm incoterm;
@NotNull(message = "Named Place is required")
@ManyToOne(optional = false)
@ForeignKey(name = "fk_namedplace")
private NamedPlace namedPlace;
@NotNull(message = "Place of Loading is required")
@ManyToOne(optional = false)
@ForeignKey(name = "fk_placeofloading")
private PlaceOfLoading placeOfLoading;
@NotNull
@ManyToOne(optional = false)
@ForeignKey(name = "fk_placeofdischarge")
private PlaceOfDischarge placeOfDischarge;
@NotNull
@Temporal(TemporalType.TIMESTAMP)
@XmlAttribute
private Date earliestShipmentDate;
@NotNull
@Temporal(TemporalType.TIMESTAMP)
@XmlAttribute
private Date latestShipmentDate;
private boolean allowPartShipment;
private boolean allowTransShipment;
public ServiceProvider getFreightForwarder() {
return freightForwarder;
}
public void setFreightForwarder(ServiceProvider freightForwarder) {
this.freightForwarder = freightForwarder;
}
public NamedPlace getNamedPlace() {
return namedPlace;
}
public void setNamedPlace(NamedPlace namedPlace) {
this.namedPlace = namedPlace;
}
public PlaceOfLoading getPlaceOfLoading() {
return placeOfLoading;
}
public void setPlaceOfLoading(PlaceOfLoading placeOfLoading) {
this.placeOfLoading = placeOfLoading;
}
public PlaceOfDischarge getPlaceOfDischarge() {
return placeOfDischarge;
}
public void setPlaceOfDischarge(PlaceOfDischarge placeOfDischarge) {
this.placeOfDischarge = placeOfDischarge;
}
public Incoterm getIncoterm() {
return incoterm;
}
public void setIncoterm(Incoterm incoterm) {
this.incoterm = incoterm;
}
public Date getEarliestShipmentDate() {
return earliestShipmentDate;
}
public void setEarliestShipmentDate(Date earliestShipmentDate) {
this.earliestShipmentDate = earliestShipmentDate;
}
public Date getLatestShipmentDate() {
return latestShipmentDate;
}
public void setLatestShipmentDate(Date latestShipmentDate) {
this.latestShipmentDate = latestShipmentDate;
}
public boolean getAllowPartShipment() {
return allowPartShipment;
}
public void setAllowPartShipment(boolean allowPartShipment) {
this.allowPartShipment = allowPartShipment;
}
public boolean getAllowTransShipment() {
return allowTransShipment;
}
public void setAllowTransShipment(boolean allowTransShipment) {
this.allowTransShipment = allowTransShipment;
}
}