package com.fitbank.hb.persistence.gara;

import java.sql.Timestamp;
import java.io.Serializable;
import java.math.BigDecimal;
import com.fitbank.common.TransportBean;
import java.lang.reflect.Field;
import com.fitbank.common.hb.AbstractExpire;
import java.sql.Date;

/**Clase que implementa la entidad de Hibernate que hace referencia a la tabla TGARANTIADOCUMENTOSENTREGADOS*/
public class Tdocumentdeliveryguarantee extends AbstractExpire  implements Serializable,TransportBean,Cloneable{
/** Nombre de la Tabla TGARANTIADOCUMENTOSENTREGADOS */
public static final String TABLE_NAME = "TGARANTIADOCUMENTOSENTREGADOS";
/** HashCode asociado con la Instancia*/
private int hashValue = 0;
/** Version de la Clase*/
private static final long serialVersionUID = 1L;
/**
* Clave primaria de la Entidad Tdocumentdeliveryguarantee
*/
private TdocumentdeliveryguaranteeKey pk;
/**
* Fecha desde la que esta vigente la informacion de referencias bancarias del documento entregado de una garantia
*/
private Timestamp fdesde;

/**
* Codigo del tipo de documento requerido para respaldo de una garantia
*/
private Integer ctipodocumentogarantia;

/**
* Referencia del documento entregado para respaldo de la garantia
*/
private String referencia;

/**
* Fecha en la que se debe renovar el documento entregado para respaldo de una garantia
*/
private Date fpararenovar;

/**
* Fecha de entrega del documento de respaldo de una garantia
*/
private Date fentrega;

/**
* Fecha de caducidad del documento entregado como respaldo de una garantia
*/
private Date fcaducidad;

/**
* Fecha de inscripcion del documento en el registro mercantil, de la propiedad, respectivamente
*/
private Date finscripcion;

/**
* Codigo de imagen del documento entregado como respaldo de una garantia
*/
private Long cimagen;

/**
* Ubicacion del documento entregado para respaldo de una garantia
*/
private String ubicacion;

/**
* Codigo de persona de la notaria que registra el documento de la garantia
*/
private Integer cpersona_notaria;

/**
* Numero de tomo de registro del documento de respaldo de la garantia
*/
private Long numerotomo;

/**
* Numero de hoja de registro del documento de respaldo de la garantia
*/
private Long numerohoja;

/**
* Numero de registro del documento entregado de la garantia
*/
private Long numeroregistro;

/**
* Numero repetitorio de registro del documento de la garantia
*/
private Long numerorepetitorio;

/**
* Codigo de persona del emisor del documento de la garantia
*/
private Integer cpersona_emisor;

/**
* Numero del documento de la garantia fiduciaria
*/
private String numerodocumento;

/**
* Codigo de persona del documento
*/
private Integer cpersona_documento;

/**
* Codigo de moneda del documento de la garantia
*/
private String cmoneda_documento;

/**
* Monto nominal del documento de la garantia
*/
private BigDecimal montodocumento;

/**
* Codigo del usuario a quien el cliente entrega el documento
*/
private String cusuario_entrega;

/**
* Comentarios sobre el documento
*/
private String comentarios;

/**
* Marca si el documento entregado es original o no
*/
private String documentooriginal;

/**
* Numero de hoja final de registro del documento de respaldo de la garantia
*/
private Long numerohojafinal;

/**
* Codigo de ubicacion del documento ode la garantia entregada
*/
private String ccodigoubicacion;

/**
* Detalle del numero de notaria para el registro del documento
*/
private String notaria;

/**
* Codigo de usuario que ingresa 
*/
private String cusuario_ingreso;

/**
* Codigo de usuario que modifica
*/
private String cusuario_modificacion;

/**
* Fecha de ingreso del documento a custodia
*/
private Date fingresocustodio;

/**
* Codigo del usuario que registra el ingreso del documento a custodia
*/
private String cusuario_ingresocustodio;

/**
* Fecha en la que se realiza la devolucion del documento de la garantia
*/
private Date fdevolucion;

/**
* Codigo del usuario que realiza la devolucion del documento de la garantia
*/
private String cusuario_devolucion;

/**
* Manejo de optimistic loking
*/
private Integer versioncontrol;

/**
* Fecha en la que se envia el documento a custodia
*/
private Date fenviocustodio;

/**Contructor por defecto*/
public Tdocumentdeliveryguarantee(){}
/**Contructor de Tdocumentdeliveryguarantee
@param pPk Clave Primaria del entity
@param pFdesde Fecha desde la que esta vigente la informacion de referencias bancarias del documento entregado de una garantia
@param pCtipodocumentogarantia Codigo del tipo de documento requerido para respaldo de una garantia
*/
public Tdocumentdeliveryguarantee(TdocumentdeliveryguaranteeKey pPk,Timestamp pFdesde,Integer pCtipodocumentogarantia){
 pk=pPk;
 fdesde=pFdesde;
 ctipodocumentogarantia=pCtipodocumentogarantia;
}
/**Entrega la Clave primaria de Tdocumentdeliveryguarantee
@return El objeto que referencia a la Clave primaria de Tdocumentdeliveryguarantee
*/
public TdocumentdeliveryguaranteeKey getPk(){
  return pk;
}
/**Fija un nuevo valor a la Clave primaria de Tdocumentdeliveryguarantee
@param pPk El objeto que referencia a la nueva Clave primaria de Tdocumentdeliveryguarantee
*/
public void setPk(TdocumentdeliveryguaranteeKey pPk){
  pk=pPk;
}
public static final String FDESDE="FDESDE";
/**Obtiene el valor de fdesde
@return valor de fdesde*/
public Timestamp getFdesde(){
  return fdesde;
}
/**Fija el valor de fdesde
@param pFdesde nuevo Valor de fdesde*/
public void setFdesde(Timestamp pFdesde){
  fdesde=pFdesde;
}

public static final String CTIPODOCUMENTOGARANTIA="CTIPODOCUMENTOGARANTIA";
/**Obtiene el valor de ctipodocumentogarantia
@return valor de ctipodocumentogarantia*/
public Integer getCtipodocumentogarantia(){
  return ctipodocumentogarantia;
}
/**Fija el valor de ctipodocumentogarantia
@param pCtipodocumentogarantia nuevo Valor de ctipodocumentogarantia*/
public void setCtipodocumentogarantia(Integer pCtipodocumentogarantia){
  ctipodocumentogarantia=pCtipodocumentogarantia;
}

public static final String REFERENCIA="REFERENCIA";
/**Obtiene el valor de referencia
@return valor de referencia*/
public String getReferencia(){
  return referencia;
}
/**Fija el valor de referencia
@param pReferencia nuevo Valor de referencia*/
public void setReferencia(String pReferencia){
  referencia=pReferencia;
}

public static final String FPARARENOVAR="FPARARENOVAR";
/**Obtiene el valor de fpararenovar
@return valor de fpararenovar*/
public Date getFpararenovar(){
  return fpararenovar;
}
/**Fija el valor de fpararenovar
@param pFpararenovar nuevo Valor de fpararenovar*/
public void setFpararenovar(Date pFpararenovar){
  fpararenovar=pFpararenovar;
}

public static final String FENTREGA="FENTREGA";
/**Obtiene el valor de fentrega
@return valor de fentrega*/
public Date getFentrega(){
  return fentrega;
}
/**Fija el valor de fentrega
@param pFentrega nuevo Valor de fentrega*/
public void setFentrega(Date pFentrega){
  fentrega=pFentrega;
}

public static final String FCADUCIDAD="FCADUCIDAD";
/**Obtiene el valor de fcaducidad
@return valor de fcaducidad*/
public Date getFcaducidad(){
  return fcaducidad;
}
/**Fija el valor de fcaducidad
@param pFcaducidad nuevo Valor de fcaducidad*/
public void setFcaducidad(Date pFcaducidad){
  fcaducidad=pFcaducidad;
}

public static final String FINSCRIPCION="FINSCRIPCION";
/**Obtiene el valor de finscripcion
@return valor de finscripcion*/
public Date getFinscripcion(){
  return finscripcion;
}
/**Fija el valor de finscripcion
@param pFinscripcion nuevo Valor de finscripcion*/
public void setFinscripcion(Date pFinscripcion){
  finscripcion=pFinscripcion;
}

public static final String CIMAGEN="CIMAGEN";
/**Obtiene el valor de cimagen
@return valor de cimagen*/
public Long getCimagen(){
  return cimagen;
}
/**Fija el valor de cimagen
@param pCimagen nuevo Valor de cimagen*/
public void setCimagen(Long pCimagen){
  cimagen=pCimagen;
}

public static final String UBICACION="UBICACION";
/**Obtiene el valor de ubicacion
@return valor de ubicacion*/
public String getUbicacion(){
  return ubicacion;
}
/**Fija el valor de ubicacion
@param pUbicacion nuevo Valor de ubicacion*/
public void setUbicacion(String pUbicacion){
  ubicacion=pUbicacion;
}

public static final String CPERSONA_NOTARIA="CPERSONA_NOTARIA";
/**Obtiene el valor de cpersona_notaria
@return valor de cpersona_notaria*/
public Integer getCpersona_notaria(){
  return cpersona_notaria;
}
/**Fija el valor de cpersona_notaria
@param pCpersona_notaria nuevo Valor de cpersona_notaria*/
public void setCpersona_notaria(Integer pCpersona_notaria){
  cpersona_notaria=pCpersona_notaria;
}

public static final String NUMEROTOMO="NUMEROTOMO";
/**Obtiene el valor de numerotomo
@return valor de numerotomo*/
public Long getNumerotomo(){
  return numerotomo;
}
/**Fija el valor de numerotomo
@param pNumerotomo nuevo Valor de numerotomo*/
public void setNumerotomo(Long pNumerotomo){
  numerotomo=pNumerotomo;
}

public static final String NUMEROHOJA="NUMEROHOJA";
/**Obtiene el valor de numerohoja
@return valor de numerohoja*/
public Long getNumerohoja(){
  return numerohoja;
}
/**Fija el valor de numerohoja
@param pNumerohoja nuevo Valor de numerohoja*/
public void setNumerohoja(Long pNumerohoja){
  numerohoja=pNumerohoja;
}

public static final String NUMEROREGISTRO="NUMEROREGISTRO";
/**Obtiene el valor de numeroregistro
@return valor de numeroregistro*/
public Long getNumeroregistro(){
  return numeroregistro;
}
/**Fija el valor de numeroregistro
@param pNumeroregistro nuevo Valor de numeroregistro*/
public void setNumeroregistro(Long pNumeroregistro){
  numeroregistro=pNumeroregistro;
}

public static final String NUMEROREPETITORIO="NUMEROREPETITORIO";
/**Obtiene el valor de numerorepetitorio
@return valor de numerorepetitorio*/
public Long getNumerorepetitorio(){
  return numerorepetitorio;
}
/**Fija el valor de numerorepetitorio
@param pNumerorepetitorio nuevo Valor de numerorepetitorio*/
public void setNumerorepetitorio(Long pNumerorepetitorio){
  numerorepetitorio=pNumerorepetitorio;
}

public static final String CPERSONA_EMISOR="CPERSONA_EMISOR";
/**Obtiene el valor de cpersona_emisor
@return valor de cpersona_emisor*/
public Integer getCpersona_emisor(){
  return cpersona_emisor;
}
/**Fija el valor de cpersona_emisor
@param pCpersona_emisor nuevo Valor de cpersona_emisor*/
public void setCpersona_emisor(Integer pCpersona_emisor){
  cpersona_emisor=pCpersona_emisor;
}

public static final String NUMERODOCUMENTO="NUMERODOCUMENTO";
/**Obtiene el valor de numerodocumento
@return valor de numerodocumento*/
public String getNumerodocumento(){
  return numerodocumento;
}
/**Fija el valor de numerodocumento
@param pNumerodocumento nuevo Valor de numerodocumento*/
public void setNumerodocumento(String pNumerodocumento){
  numerodocumento=pNumerodocumento;
}

public static final String CPERSONA_DOCUMENTO="CPERSONA_DOCUMENTO";
/**Obtiene el valor de cpersona_documento
@return valor de cpersona_documento*/
public Integer getCpersona_documento(){
  return cpersona_documento;
}
/**Fija el valor de cpersona_documento
@param pCpersona_documento nuevo Valor de cpersona_documento*/
public void setCpersona_documento(Integer pCpersona_documento){
  cpersona_documento=pCpersona_documento;
}

public static final String CMONEDA_DOCUMENTO="CMONEDA_DOCUMENTO";
/**Obtiene el valor de cmoneda_documento
@return valor de cmoneda_documento*/
public String getCmoneda_documento(){
  return cmoneda_documento;
}
/**Fija el valor de cmoneda_documento
@param pCmoneda_documento nuevo Valor de cmoneda_documento*/
public void setCmoneda_documento(String pCmoneda_documento){
  cmoneda_documento=pCmoneda_documento;
}

public static final String MONTODOCUMENTO="MONTODOCUMENTO";
/**Obtiene el valor de montodocumento
@return valor de montodocumento*/
public BigDecimal getMontodocumento(){
  return montodocumento;
}
/**Fija el valor de montodocumento
@param pMontodocumento nuevo Valor de montodocumento*/
public void setMontodocumento(BigDecimal pMontodocumento){
  montodocumento=pMontodocumento;
}

public static final String CUSUARIO_ENTREGA="CUSUARIO_ENTREGA";
/**Obtiene el valor de cusuario_entrega
@return valor de cusuario_entrega*/
public String getCusuario_entrega(){
  return cusuario_entrega;
}
/**Fija el valor de cusuario_entrega
@param pCusuario_entrega nuevo Valor de cusuario_entrega*/
public void setCusuario_entrega(String pCusuario_entrega){
  cusuario_entrega=pCusuario_entrega;
}

public static final String COMENTARIOS="COMENTARIOS";
/**Obtiene el valor de comentarios
@return valor de comentarios*/
public String getComentarios(){
  return comentarios;
}
/**Fija el valor de comentarios
@param pComentarios nuevo Valor de comentarios*/
public void setComentarios(String pComentarios){
  comentarios=pComentarios;
}

public static final String DOCUMENTOORIGINAL="DOCUMENTOORIGINAL";
/**Obtiene el valor de documentooriginal
@return valor de documentooriginal*/
public String getDocumentooriginal(){
  return documentooriginal;
}
/**Fija el valor de documentooriginal
@param pDocumentooriginal nuevo Valor de documentooriginal*/
public void setDocumentooriginal(String pDocumentooriginal){
  documentooriginal=pDocumentooriginal;
}

public static final String NUMEROHOJAFINAL="NUMEROHOJAFINAL";
/**Obtiene el valor de numerohojafinal
@return valor de numerohojafinal*/
public Long getNumerohojafinal(){
  return numerohojafinal;
}
/**Fija el valor de numerohojafinal
@param pNumerohojafinal nuevo Valor de numerohojafinal*/
public void setNumerohojafinal(Long pNumerohojafinal){
  numerohojafinal=pNumerohojafinal;
}

public static final String CCODIGOUBICACION="CCODIGOUBICACION";
/**Obtiene el valor de ccodigoubicacion
@return valor de ccodigoubicacion*/
public String getCcodigoubicacion(){
  return ccodigoubicacion;
}
/**Fija el valor de ccodigoubicacion
@param pCcodigoubicacion nuevo Valor de ccodigoubicacion*/
public void setCcodigoubicacion(String pCcodigoubicacion){
  ccodigoubicacion=pCcodigoubicacion;
}

public static final String NOTARIA="NOTARIA";
/**Obtiene el valor de notaria
@return valor de notaria*/
public String getNotaria(){
  return notaria;
}
/**Fija el valor de notaria
@param pNotaria nuevo Valor de notaria*/
public void setNotaria(String pNotaria){
  notaria=pNotaria;
}

public static final String CUSUARIO_INGRESO="CUSUARIO_INGRESO";
/**Obtiene el valor de cusuario_ingreso
@return valor de cusuario_ingreso*/
public String getCusuario_ingreso(){
  return cusuario_ingreso;
}
/**Fija el valor de cusuario_ingreso
@param pCusuario_ingreso nuevo Valor de cusuario_ingreso*/
public void setCusuario_ingreso(String pCusuario_ingreso){
  cusuario_ingreso=pCusuario_ingreso;
}

public static final String CUSUARIO_MODIFICACION="CUSUARIO_MODIFICACION";
/**Obtiene el valor de cusuario_modificacion
@return valor de cusuario_modificacion*/
public String getCusuario_modificacion(){
  return cusuario_modificacion;
}
/**Fija el valor de cusuario_modificacion
@param pCusuario_modificacion nuevo Valor de cusuario_modificacion*/
public void setCusuario_modificacion(String pCusuario_modificacion){
  cusuario_modificacion=pCusuario_modificacion;
}

public static final String FINGRESOCUSTODIO="FINGRESOCUSTODIO";
/**Obtiene el valor de fingresocustodio
@return valor de fingresocustodio*/
public Date getFingresocustodio(){
  return fingresocustodio;
}
/**Fija el valor de fingresocustodio
@param pFingresocustodio nuevo Valor de fingresocustodio*/
public void setFingresocustodio(Date pFingresocustodio){
  fingresocustodio=pFingresocustodio;
}

public static final String CUSUARIO_INGRESOCUSTODIO="CUSUARIO_INGRESOCUSTODIO";
/**Obtiene el valor de cusuario_ingresocustodio
@return valor de cusuario_ingresocustodio*/
public String getCusuario_ingresocustodio(){
  return cusuario_ingresocustodio;
}
/**Fija el valor de cusuario_ingresocustodio
@param pCusuario_ingresocustodio nuevo Valor de cusuario_ingresocustodio*/
public void setCusuario_ingresocustodio(String pCusuario_ingresocustodio){
  cusuario_ingresocustodio=pCusuario_ingresocustodio;
}

public static final String FDEVOLUCION="FDEVOLUCION";
/**Obtiene el valor de fdevolucion
@return valor de fdevolucion*/
public Date getFdevolucion(){
  return fdevolucion;
}
/**Fija el valor de fdevolucion
@param pFdevolucion nuevo Valor de fdevolucion*/
public void setFdevolucion(Date pFdevolucion){
  fdevolucion=pFdevolucion;
}

public static final String CUSUARIO_DEVOLUCION="CUSUARIO_DEVOLUCION";
/**Obtiene el valor de cusuario_devolucion
@return valor de cusuario_devolucion*/
public String getCusuario_devolucion(){
  return cusuario_devolucion;
}
/**Fija el valor de cusuario_devolucion
@param pCusuario_devolucion nuevo Valor de cusuario_devolucion*/
public void setCusuario_devolucion(String pCusuario_devolucion){
  cusuario_devolucion=pCusuario_devolucion;
}

public static final String VERSIONCONTROL="VERSIONCONTROL";
/**Obtiene el valor de versioncontrol
@return valor de versioncontrol*/
public Integer getVersioncontrol(){
  return versioncontrol;
}
/**Fija el valor de versioncontrol
@param pVersioncontrol nuevo Valor de versioncontrol*/
public void setVersioncontrol(Integer pVersioncontrol){
  versioncontrol=pVersioncontrol;
}

public static final String FENVIOCUSTODIO="FENVIOCUSTODIO";
/**Obtiene el valor de fenviocustodio
@return valor de fenviocustodio*/
public Date getFenviocustodio(){
  return fenviocustodio;
}
/**Fija el valor de fenviocustodio
@param pFenviocustodio nuevo Valor de fenviocustodio*/
public void setFenviocustodio(Date pFenviocustodio){
  fenviocustodio=pFenviocustodio;
}

/**Implementacion de la comparacion de la entidad Tdocumentdeliveryguarantee
@param rhs Elemento de Comparacion
@return el resultado de la comparacion
*/
public boolean equals(Object rhs){
    if (rhs == null){return false;}
    if (! (rhs instanceof Tdocumentdeliveryguarantee)){return false;}
    Tdocumentdeliveryguarantee that = (Tdocumentdeliveryguarantee) rhs;
    if (this.getPk() == null || that.getPk() == null){
        return false;}
    return (this.getPk().equals(that.getPk()));
}
/**Implementaciï¿½n del metodo hashCode de la la entidad Tdocumentdeliveryguarantee
@return el hashCode la instancia
*/
public int hashCode()    {
    if (this.hashValue == 0){
        int result = 17;
        if (this.getPk() == null){
            result = super.hashCode();
        }else{
            result = this.getPk().hashCode();
        }
        this.hashValue = result;
    }
    return this.hashValue;
}
/**Implementaci�n toString
*/
public String toString() {
	Field[]fs=this.getClass().getDeclaredFields();
	String data="";
	for(Field f:fs){
	 try{	
	 String name=f.getName();
	 if(name.compareTo("hashValue")==0||name.compareTo("serialVersionUID")==0){continue;}
		data+=name+"="+f.get(this)+";";
	 }catch(Exception e){
		 continue;
	 }
		}
		if(data.compareTo("")==0){
		data=super.toString();
		}
	return data;
	}
/**Implementaci�n de la creaci�n de un bean en blancoTdocumentdeliveryguarantee
*/
public Object createInstance() throws Exception{
 Tdocumentdeliveryguarantee instance=new Tdocumentdeliveryguarantee();	
 instance.setPk(new TdocumentdeliveryguaranteeKey());
 return instance;
}
public Object cloneMe() throws Exception{
  Tdocumentdeliveryguarantee p=(Tdocumentdeliveryguarantee)this.clone();
  p.setPk((TdocumentdeliveryguaranteeKey)this.pk.cloneMe());
  return p;
}
public Object getId() {
  return this.pk;
}
}
