/*
 * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
 * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
 */
package com.qsoft.rs.sincoar.model;

import java.io.Serializable;
import java.math.BigInteger;
import java.util.Date;
import javax.persistence.Basic;
import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import javax.xml.bind.annotation.XmlRootElement;

/**
 *
 * @author developer2
 */
@Entity
@Table(name="COMACO.TARMCERTIFICADOARMAS")
@XmlRootElement
@NamedQueries({
    @NamedQuery(name = "Tarmcertificadoarmas.findAll", query = "SELECT t FROM Tarmcertificadoarmas t"),
    @NamedQuery(name = "Tarmcertificadoarmas.findByFechareporte", query = "SELECT t FROM Tarmcertificadoarmas t WHERE t.tarmcertificadoarmasPK.fechareporte = :fechareporte"),
    @NamedQuery(name = "Tarmcertificadoarmas.findBySessionid", query = "SELECT t FROM Tarmcertificadoarmas t WHERE t.tarmcertificadoarmasPK.sessionid = :sessionid"),
    @NamedQuery(name = "Tarmcertificadoarmas.findByOrden", query = "SELECT t FROM Tarmcertificadoarmas t WHERE t.tarmcertificadoarmasPK.orden = :orden"),
    @NamedQuery(name = "Tarmcertificadoarmas.findByUsercode", query = "SELECT t FROM Tarmcertificadoarmas t WHERE t.usercode = :usercode"),
    @NamedQuery(name = "Tarmcertificadoarmas.findByIdentification", query = "SELECT t FROM Tarmcertificadoarmas t WHERE t.identification = :identification"),
    @NamedQuery(name = "Tarmcertificadoarmas.findByName", query = "SELECT t FROM Tarmcertificadoarmas t WHERE t.name = :name"),
    @NamedQuery(name = "Tarmcertificadoarmas.findByRegisterdate", query = "SELECT t FROM Tarmcertificadoarmas t WHERE t.registerdate = :registerdate"),
    @NamedQuery(name = "Tarmcertificadoarmas.findByClase", query = "SELECT t FROM Tarmcertificadoarmas t WHERE t.clase = :clase"),
    @NamedQuery(name = "Tarmcertificadoarmas.findByTipoarmaexplosivo", query = "SELECT t FROM Tarmcertificadoarmas t WHERE t.tipoarmaexplosivo = :tipoarmaexplosivo"),
    @NamedQuery(name = "Tarmcertificadoarmas.findByMarca", query = "SELECT t FROM Tarmcertificadoarmas t WHERE t.marca = :marca"),
    @NamedQuery(name = "Tarmcertificadoarmas.findByCalibre", query = "SELECT t FROM Tarmcertificadoarmas t WHERE t.calibre = :calibre"),
    @NamedQuery(name = "Tarmcertificadoarmas.findByLote", query = "SELECT t FROM Tarmcertificadoarmas t WHERE t.lote = :lote"),
    @NamedQuery(name = "Tarmcertificadoarmas.findByPaisfabricacion", query = "SELECT t FROM Tarmcertificadoarmas t WHERE t.paisfabricacion = :paisfabricacion"),
    @NamedQuery(name = "Tarmcertificadoarmas.findByEstado", query = "SELECT t FROM Tarmcertificadoarmas t WHERE t.estado = :estado"),
    @NamedQuery(name = "Tarmcertificadoarmas.findByTicket", query = "SELECT t FROM Tarmcertificadoarmas t WHERE t.ticket = :ticket"),
    @NamedQuery(name = "Tarmcertificadoarmas.findByPermiso", query = "SELECT t FROM Tarmcertificadoarmas t WHERE t.permiso = :permiso"),
    @NamedQuery(name = "Tarmcertificadoarmas.findByFechaemison", query = "SELECT t FROM Tarmcertificadoarmas t WHERE t.fechaemison = :fechaemison"),
    @NamedQuery(name = "Tarmcertificadoarmas.findByFechaexpiracion", query = "SELECT t FROM Tarmcertificadoarmas t WHERE t.fechaexpiracion = :fechaexpiracion")})
public class Tarmcertificadoarmas implements Serializable {

    private static final long serialVersionUID = 1L;
    @EmbeddedId
    protected TarmcertificadoarmasPK tarmcertificadoarmasPK;
    @Column(name = "USERCODE")
    private String usercode;
    @Column(name = "IDENTIFICATION")
    private String identification;
    @Basic(optional = false)
    @Column(name = "NAME")
    private String name;
    @Column(name = "REGISTERDATE")
    @Temporal(TemporalType.TIMESTAMP)
    private Date registerdate;
    @Column(name = "CLASE")
    private String clase;
    @Column(name = "TIPOARMAEXPLOSIVO")
    private String tipoarmaexplosivo;
    @Column(name = "MARCA")
    private String marca;
    @Column(name = "CALIBRE")
    private String calibre;
    @Column(name = "LOTE")
    private String lote;
    @Column(name = "PAISFABRICACION")
    private String paisfabricacion;
    @Column(name = "ESTADO")
    private String estado;
    @Column(name = "TICKET")
    private BigInteger ticket;
    @Column(name = "PERMISO")
    private String permiso;
    @Column(name = "FECHAEMISON")
    @Temporal(TemporalType.TIMESTAMP)
    private Date fechaemison;
    @Column(name = "FECHAEXPIRACION")
    @Temporal(TemporalType.TIMESTAMP)
    private Date fechaexpiracion;

    public Tarmcertificadoarmas() {
    }

    public Tarmcertificadoarmas(TarmcertificadoarmasPK tarmcertificadoarmasPK) {
        this.tarmcertificadoarmasPK = tarmcertificadoarmasPK;
    }

    public Tarmcertificadoarmas(TarmcertificadoarmasPK tarmcertificadoarmasPK, String name) {
        this.tarmcertificadoarmasPK = tarmcertificadoarmasPK;
        this.name = name;
    }

    public Tarmcertificadoarmas(Date fechareporte, String sessionid, int orden) {
        this.tarmcertificadoarmasPK = new TarmcertificadoarmasPK(fechareporte, sessionid, orden);
    }

    public TarmcertificadoarmasPK getTarmcertificadoarmasPK() {
        return tarmcertificadoarmasPK;
    }

    public void setTarmcertificadoarmasPK(TarmcertificadoarmasPK tarmcertificadoarmasPK) {
        this.tarmcertificadoarmasPK = tarmcertificadoarmasPK;
    }

    public String getUsercode() {
        return usercode;
    }

    public void setUsercode(String usercode) {
        this.usercode = usercode;
    }

    public String getIdentification() {
        return identification;
    }

    public void setIdentification(String identification) {
        this.identification = identification;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public Date getRegisterdate() {
        return registerdate;
    }

    public void setRegisterdate(Date registerdate) {
        this.registerdate = registerdate;
    }

    public String getClase() {
        return clase;
    }

    public void setClase(String clase) {
        this.clase = clase;
    }

    public String getTipoarmaexplosivo() {
        return tipoarmaexplosivo;
    }

    public void setTipoarmaexplosivo(String tipoarmaexplosivo) {
        this.tipoarmaexplosivo = tipoarmaexplosivo;
    }

    public String getMarca() {
        return marca;
    }

    public void setMarca(String marca) {
        this.marca = marca;
    }

    public String getCalibre() {
        return calibre;
    }

    public void setCalibre(String calibre) {
        this.calibre = calibre;
    }

    public String getLote() {
        return lote;
    }

    public void setLote(String lote) {
        this.lote = lote;
    }

    public String getPaisfabricacion() {
        return paisfabricacion;
    }

    public void setPaisfabricacion(String paisfabricacion) {
        this.paisfabricacion = paisfabricacion;
    }

    public String getEstado() {
        return estado;
    }

    public void setEstado(String estado) {
        this.estado = estado;
    }

    public BigInteger getTicket() {
        return ticket;
    }

    public void setTicket(BigInteger ticket) {
        this.ticket = ticket;
    }

    public String getPermiso() {
        return permiso;
    }

    public void setPermiso(String permiso) {
        this.permiso = permiso;
    }

    public Date getFechaemison() {
        return fechaemison;
    }

    public void setFechaemison(Date fechaemison) {
        this.fechaemison = fechaemison;
    }

    public Date getFechaexpiracion() {
        return fechaexpiracion;
    }

    public void setFechaexpiracion(Date fechaexpiracion) {
        this.fechaexpiracion = fechaexpiracion;
    }

    @Override
    public int hashCode() {
        int hash = 0;
        hash += (tarmcertificadoarmasPK != null ? tarmcertificadoarmasPK.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 Tarmcertificadoarmas)) {
            return false;
        }
        Tarmcertificadoarmas other = (Tarmcertificadoarmas) object;
        if ((this.tarmcertificadoarmasPK == null && other.tarmcertificadoarmasPK != null) || (this.tarmcertificadoarmasPK != null && !this.tarmcertificadoarmasPK.equals(other.tarmcertificadoarmasPK))) {
            return false;
        }
        return true;
    }

    @Override
    public String toString() {
        return "com.qsoft.rs.sincoar.model.Tarmcertificadoarmas[ tarmcertificadoarmasPK=" + tarmcertificadoarmasPK + " ]";
    }
    
}
