package com.rjconsultores.ventaboletos.entidad;

// Generated 26/10/2013 14:51:58 by Hibernate Tools 3.4.0.CR1

import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.SequenceGenerator;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

/**
 * AbastoHisto generated by hbm2java
 */
@Entity
@Table(name = "ABASTO_HISTO")
public class AbastoHisto implements java.io.Serializable {

	private Long abastohistoId;
	private TipoMovimentacion tipoMovimentacion;
	private Aidf aidf;
	private String numseriepreimpresa;
	private String numfoliopreimpreso;
	private String numsubseriepreimpreso;
	private Date fechorhisto;
	private PuntoVenta puntoventa;
	private Boolean activo;
	private Date fecmodif;
	private Integer usuarioId;
	private Estacion estacion;

	public AbastoHisto() {
	}
	
	public AbastoHisto(AbastoCentral bilhete, TipoMovimentacion _tipoMovimentacion, Date _fechorhisto, Boolean _activo, Date _fecmodif, Integer _usuarioId) {
		tipoMovimentacion = _tipoMovimentacion;
		aidf = bilhete.getAidf();
		numseriepreimpresa = bilhete.getNumseriepreimpresa();
		numfoliopreimpreso = bilhete.getNumfoliopreimpreso();
		numsubseriepreimpreso = bilhete.getNumsubseriepreimpreso();
		estacion = bilhete.getEstacion();
		fechorhisto = _fechorhisto;
		puntoventa = bilhete.getPuntoventa();
		activo = _activo;
		fecmodif = _fecmodif;
		usuarioId = _usuarioId;		
	}

	public AbastoHisto(TipoMovimentacion _tipoMovimentacion, Aidf _aidf, String _numseriepreimpresa, String _numfoliopreimpreso, 
			String _numsubseriepreimpreso, Date _fechorhisto, PuntoVenta _puntoventa, Boolean _activo, Date _fecmodif, Integer _usuarioId, Estacion _estacion) {
		tipoMovimentacion = _tipoMovimentacion;
		aidf = _aidf;
		numseriepreimpresa = _numseriepreimpresa;
		numfoliopreimpreso = _numfoliopreimpreso;
		numsubseriepreimpreso = _numsubseriepreimpreso;
		fechorhisto = _fechorhisto;
		puntoventa = _puntoventa;
		activo = _activo;
		fecmodif = _fecmodif;
		usuarioId = _usuarioId;
		estacion = _estacion;
	}

	@SequenceGenerator(name = "ABASTO_HISTO_SEQ", sequenceName = "ABASTO_HISTO_SEQ", allocationSize = 1)
	@Id
	@GeneratedValue(strategy = GenerationType.AUTO, generator = "ABASTO_HISTO_SEQ")
	@Column(name = "ABASTOHISTO_ID", unique = true, nullable = false, precision = 15, scale = 0)
	public Long getAbastohistoId() {
		return this.abastohistoId;
	}

	public void setAbastohistoId(Long abastohistoId) {
		this.abastohistoId = abastohistoId;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "TIPOMOVIMENTACION_ID")
	public TipoMovimentacion getTipoMovimentacion() {
		return this.tipoMovimentacion;
	}

	public void setTipoMovimentacion(TipoMovimentacion tipoMovimentacion) {
		this.tipoMovimentacion = tipoMovimentacion;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "AIDF_ID")
	public Aidf getAidf() {
		return this.aidf;
	}

	public void setAidf(Aidf aidf) {
		this.aidf = aidf;
	}

	@Column(name = "NUMSERIEPREIMPRESA", length = 10)
	public String getNumseriepreimpresa() {
		return this.numseriepreimpresa;
	}

	public void setNumseriepreimpresa(String numseriepreimpresa) {
		this.numseriepreimpresa = numseriepreimpresa;
	}

	@Column(name = "NUMFOLIOPREIMPRESO", length = 12)
	public String getNumfoliopreimpreso() {
		return this.numfoliopreimpreso;
	}

	public void setNumfoliopreimpreso(String numfoliopreimpreso) {
		this.numfoliopreimpreso = numfoliopreimpreso;
	}

	@Column(name = "NUMSUBSERIEPREIMPRESO", length = 10)
	public String getNumsubseriepreimpreso() {
		return this.numsubseriepreimpreso;
	}

	public void setNumsubseriepreimpreso(String numsubseriepreimpreso) {
		this.numsubseriepreimpreso = numsubseriepreimpreso;
	}

	@Temporal(TemporalType.DATE)
	@Column(name = "FECHORHISTO", length = 7)
	public Date getFechorhisto() {
		return this.fechorhisto;
	}

	public void setFechorhisto(Date fechorhisto) {
		this.fechorhisto = fechorhisto;
	}

	@JoinColumn(name = "PUNTOVENTA_ID")
	@ManyToOne
	public PuntoVenta getPuntoventa() {
		return this.puntoventa;
	}

	public void setPuntoventa(PuntoVenta puntoventa) {
		this.puntoventa = puntoventa;
	}

	@Column(name = "ACTIVO", precision = 1, scale = 0)
	public Boolean getActivo() {
		return this.activo;
	}

	public void setActivo(Boolean activo) {
		this.activo = activo;
	}

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name = "FECMODIF", length = 7)
	public Date getFecmodif() {
		return this.fecmodif;
	}

	public void setFecmodif(Date fecmodif) {
		this.fecmodif = fecmodif;
	}

	@Column(name = "USUARIO_ID", precision = 7, scale = 0)
	public Integer getUsuarioId() {
		return this.usuarioId;
	}

	public void setUsuarioId(Integer usuarioId) {
		this.usuarioId = usuarioId;
	}

	@ManyToOne
	@JoinColumn(name = "ESTACION_ID")
	public Estacion getEstacion() {
		return estacion;
	}

	public void setEstacion(Estacion estacion) {
		this.estacion = estacion;
	}

}
