hs.hsadmin/hsarback/src/de/hsadmin/mods/cust/CustomersTariff.java
2012-07-27 08:41:10 +00:00

180 lines
4.4 KiB
Java

package de.hsadmin.mods.cust;
import static javax.persistence.FetchType.EAGER;
import java.io.Serializable;
import java.util.Date;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.EntityManager;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.OneToOne;
import javax.persistence.Table;
import javax.persistence.Temporal;
import de.hsadmin.core.model.AbstractEntity;
import de.hsadmin.mods.user.UnixUser;
@Entity(name = "CustomersTariffs")
@Table(name = "billdata")
public class CustomersTariff extends AbstractEntity implements Serializable {
private static final long serialVersionUID = -3628577459027111705L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "billdata_id", columnDefinition = "integer")
private long id;
@JoinColumn(name = "bp_id", columnDefinition = "integer")
@OneToOne(fetch = EAGER)
private Customer customer;
@Column(name = "tariff_domain_discount_since", columnDefinition = "date")
@Temporal(javax.persistence.TemporalType.DATE)
private Date domainDiscountSince;
@Column(name = "tariff_domain_discount_until", columnDefinition = "date")
@Temporal(javax.persistence.TemporalType.DATE)
private Date domainDiscountUntil;
@Column(name = "tariff_traffic_discount_since", columnDefinition = "date")
@Temporal(javax.persistence.TemporalType.DATE)
private Date trafficDiscountSince;
@Column(name = "tariff_traffic_discount_until", columnDefinition = "date")
@Temporal(javax.persistence.TemporalType.DATE)
private Date trafficDiscountUntil;
@Column(name = "tariff_quota_discount_since", columnDefinition = "date")
@Temporal(javax.persistence.TemporalType.DATE)
private Date quotaDiscountSince;
@Column(name = "tariff_quota_discount_until", columnDefinition = "date")
@Temporal(javax.persistence.TemporalType.DATE)
private Date quotaDiscountUntil;
@Column(name = "tariff_discount_since", columnDefinition = "date")
@Temporal(javax.persistence.TemporalType.DATE)
private Date discountSince;
@Column(name = "tariff_discount_until", columnDefinition = "date")
@Temporal(javax.persistence.TemporalType.DATE)
private Date discountUntil;
public CustomersTariff() {
}
public CustomersTariff(Customer cust) {
this.customer = cust;
}
public static String createQueryFromStringKey(String humanKey) {
return "customer.name = '" + humanKey + "'";
}
@Override
public String createStringKey() {
return getCustomer().getName();
}
@Override
public long id() {
return id;
}
public long getId() {
return id;
}
public void setId(long id) {
this.id = id;
}
public Customer getCustomer() {
return customer;
}
public void setCustomer(Customer customer) {
this.customer = customer;
}
public Date getDomainDiscountSince() {
return domainDiscountSince;
}
public void setDomainDiscountSince(Date domainDiscountSince) {
this.domainDiscountSince = domainDiscountSince;
}
public Date getDomainDiscountUntil() {
return domainDiscountUntil;
}
public void setDomainDiscountUntil(Date domainDiscountUntil) {
this.domainDiscountUntil = domainDiscountUntil;
}
public Date getTrafficDiscountSince() {
return trafficDiscountSince;
}
public void setTrafficDiscountSince(Date trafficDiscountSince) {
this.trafficDiscountSince = trafficDiscountSince;
}
public Date getTrafficDiscountUntil() {
return trafficDiscountUntil;
}
public void setTrafficDiscountUntil(Date trafficDiscountUntil) {
this.trafficDiscountUntil = trafficDiscountUntil;
}
public Date getQuotaDiscountSince() {
return quotaDiscountSince;
}
public void setQuotaDiscountSince(Date quotaDiscountSince) {
this.quotaDiscountSince = quotaDiscountSince;
}
public Date getQuotaDiscountUntil() {
return quotaDiscountUntil;
}
public void setQuotaDiscountUntil(Date quotaDiscountUntil) {
this.quotaDiscountUntil = quotaDiscountUntil;
}
public Date getDiscountSince() {
return discountSince;
}
public void setDiscountSince(Date discountSince) {
this.discountSince = discountSince;
}
public Date getDiscountUntil() {
return discountUntil;
}
public void setDiscountUntil(Date discountUntil) {
this.discountUntil = discountUntil;
}
@Override
public boolean isNew() {
return id == 0;
}
@Override
public UnixUser owningUser(EntityManager em) {
return customer.owningUser(em);
}
}