PrintedCard.java 5.1 KB
/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package fi.insomnia.bortal.model;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

/**
 * 
 * @author jkj
 */
@Entity
@Table(name = "printed_cards")
@NamedQueries( {
	@NamedQuery(name = "PrintedCard.findAll", query = "SELECT p FROM PrintedCard p"),
	@NamedQuery(name = "PrintedCard.findByPrintedCardsId", query = "SELECT p FROM PrintedCard p WHERE p.printedCardsId = :printedCardsId"),
	@NamedQuery(name = "PrintedCard.findByEventRolesTypesId", query = "SELECT p FROM PrintedCard p WHERE p.eventRolesTypesId = :eventRolesTypesId"),
	@NamedQuery(name = "PrintedCard.findByPrintTime", query = "SELECT p FROM PrintedCard p WHERE p.printTime = :printTime"),
	@NamedQuery(name = "PrintedCard.findByBarcode", query = "SELECT p FROM PrintedCard p WHERE p.barcode = :barcode"),
	@NamedQuery(name = "PrintedCard.findByCardEnabled", query = "SELECT p FROM PrintedCard p WHERE p.cardEnabled = :cardEnabled"),
	@NamedQuery(name = "PrintedCard.findByRfidUid", query = "SELECT p FROM PrintedCard p WHERE p.rfidUid = :rfidUid") })
public class PrintedCard implements Serializable {
    private static final long serialVersionUID = 1L;
    @Id
    @Column(name = "printed_cards_id", nullable = false)
    private Integer printedCardsId;
    @Column(name = "event_roles_types_id", nullable = false)
    private int eventRolesTypesId;
    @Column(name = "print_time", nullable = false)
    @Temporal(TemporalType.TIMESTAMP)
    private Date printTime;
    @Column(name = "barcode", length = 2147483647)
    private String barcode;
    @Column(name = "card_enabled", nullable = false)
    private boolean cardEnabled;
    @Column(name = "rfid_uid", length = 2147483647)
    private String rfidUid;
    @OneToMany(cascade = CascadeType.ALL, mappedBy = "printedCardsId")
    private List<ReaderEvent> readerEventList;
    @JoinColumn(name = "current_location", referencedColumnName = "locations_id")
    @ManyToOne
    private Location currentLocation;
    @JoinColumn(name = "users_id", referencedColumnName = "users_id", nullable = false)
    @ManyToOne(optional = false)
    private User usersId;

    public PrintedCard() {
    }

    public PrintedCard(Integer printedCardsId) {
	this.printedCardsId = printedCardsId;
    }

    public PrintedCard(Integer printedCardsId, int eventRolesTypesId,
	    Date printTime, boolean cardEnabled) {
	this.printedCardsId = printedCardsId;
	this.eventRolesTypesId = eventRolesTypesId;
	this.printTime = printTime;
	this.cardEnabled = cardEnabled;
    }

    public Integer getPrintedCardsId() {
	return printedCardsId;
    }

    public void setPrintedCardsId(Integer printedCardsId) {
	this.printedCardsId = printedCardsId;
    }

    public int getEventRolesTypesId() {
	return eventRolesTypesId;
    }

    public void setEventRolesTypesId(int eventRolesTypesId) {
	this.eventRolesTypesId = eventRolesTypesId;
    }

    public Date getPrintTime() {
	return printTime;
    }

    public void setPrintTime(Date printTime) {
	this.printTime = printTime;
    }

    public String getBarcode() {
	return barcode;
    }

    public void setBarcode(String barcode) {
	this.barcode = barcode;
    }

    public boolean getCardEnabled() {
	return cardEnabled;
    }

    public void setCardEnabled(boolean cardEnabled) {
	this.cardEnabled = cardEnabled;
    }

    public String getRfidUid() {
	return rfidUid;
    }

    public void setRfidUid(String rfidUid) {
	this.rfidUid = rfidUid;
    }

    public List<ReaderEvent> getReaderEventList() {
	return readerEventList;
    }

    public void setReaderEventList(List<ReaderEvent> readerEventList) {
	this.readerEventList = readerEventList;
    }

    public Location getCurrentLocation() {
	return currentLocation;
    }

    public void setCurrentLocation(Location currentLocation) {
	this.currentLocation = currentLocation;
    }

    public User getUsersId() {
	return usersId;
    }

    public void setUsersId(User usersId) {
	this.usersId = usersId;
    }

    @Override
    public int hashCode() {
	int hash = 0;
	hash += (printedCardsId != null ? printedCardsId.hashCode() : 0);
	return hash;
    }

    @Override
    public boolean equals(Object object) {
	// TODO: Warning - this method won't work in the case the id fields are
	// not set
	if (!(object instanceof PrintedCard)) {
	    return false;
	}
	PrintedCard other = (PrintedCard) object;
	if ((this.printedCardsId == null && other.printedCardsId != null)
		|| (this.printedCardsId != null && !this.printedCardsId
			.equals(other.printedCardsId))) {
	    return false;
	}
	return true;
    }

    @Override
    public String toString() {
	return "fi.insomnia.bortal.model.PrintedCard[printedCardsId="
		+ printedCardsId + "]";
    }

}