package com.fitbank.hb.persistence.soli;

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

/**Clase que implementa la entidad de Hibernate que hace referencia a la tabla TSOLICITUDDOCUMENTOS*/
public class Tdocumentsolicitude extends AbstractExpire  implements Serializable,TransportBean,Cloneable{
/** Nombre de la Tabla TSOLICITUDDOCUMENTOS */
public static final String TABLE_NAME = "TSOLICITUDDOCUMENTOS";
/** HashCode asociado con la Instancia*/
private int hashValue = 0;
/** Version de la Clase*/
private static final long serialVersionUID = 1L;
/**
* Clave primaria de la Entidad Tdocumentsolicitude
*/
private TdocumentsolicitudeKey pk;
/**
* Fecha desde la que estan vigentes los datos de impresion del documento de respaldo de la operacion
*/
private Timestamp fdesde;

/**
* Codigo del tipo de documento del producto
*/
private String ctipodocumentoproducto;

/**
* Codigo de moneda del documento
*/
private String cmoneda;

/**
* Valor del documento
*/
private BigDecimal valordocumento;

/**
* Fecha de emision del documento de respaldo de la operacion
*/
private Date femision;

/**
* Codigo de la imagen del documento
*/
private Long cimagen;

/**
* Numero de copias que se espera del documento
*/
private Integer copiasdocumento;

/**
* Observaciones sobre el documento de respaldo de la operacion
*/
private String observaciones;

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

/**
* Numero de originales que se espera del documento
*/
private Integer originalesdocumento;

/**
* Codigo del usuario que emite el documento del documento de respaldo de la operacion
*/
private String cusuario_emision;

/**
* Codigo del usuario que recibe el documento en custodia
*/
private String cusuario_ingresocustodio;

/**
* Fecha en que se recibe el documento para custodia
*/
private Date fingresocustodio;

/**
* Codigo del usuario que libera el documento en custodia
*/
private String cusuario_liberacustodio;

/**
* Fecha en que se libera el documento de custodia
*/
private Date fliberacustodio;

/**
* Codigo de sucursal que guarda el documento en custodio
*/
private Integer coficina_custodio;

/**
* Codigo de sucursal que guarda el documento en custodio
*/
private Integer csucursal_custodio;

/**
* Codigo del usuario que realizo la anulacion del documento
*/
private String cusuario_anulacion;

/**
* Fecha en la que se realizo la anulacion del documento
*/
private Date fanulacion;

/**
* Codigo del usuario que realizo la anulacion del documento
*/
private String cusuario_endoso;

/**
* Fecha en la que se realizo el endoso del documento
*/
private Date fendoso;

/**
* Codigo de oficina en la que se realiza el endoso del documento
*/
private Integer coficina_endoso;

/**
* Codigo de la sucursal en la que se realiza el endoso del documento
*/
private Integer csucursal_endoso;

/**
* Codigo del usuario que recibe el documento en custodia centralizada.
*/
private String cusuario_custodiacentral;

/**
* Fecha en que se recibe el documento para custodia centralizada
*/
private Date fingresocustodiacentral;

/**
* Codigo del usuario que libera el documento en custodia centralizada
*/
private String cusuario_liberacustodiacentral;

/**
* Fecha en que se libera el documento de custodia centralizada
*/
private Date fliberacustodiacentral;

/**
* Numero del acta en la que se entregan a custodia centralizada
*/
private Integer numeroacta;

/**
* Estatus en el que se encuentra el pagare segun el acta, ENV para controlar cuando se envia a custodio centralizado, REC cuando se ha recibido, PEN cuando se tiene inconvenientes con el documento.
*/
private String estatusacta;

/**
* Codigo del departamento al que se ha enviado el documento
*/
private Integer cdepartamento;

/**
* Comentarios del motivo de la entrega del documento.
*/
private String comentarios;

/**
* Codigo de sucursal para la entrega del documento
*/
private Integer csucursal_entrega;

/**
* Codigo de oficina para la entrega del documento
*/
private Integer coficina_entrega;

/**
* Detalle de la transferencia realizada a otro departamento
*/
private String detalletransferencia;

/**Contructor por defecto*/
public Tdocumentsolicitude(){}
/**Contructor de Tdocumentsolicitude
@param pPk Clave Primaria del entity
@param pFdesde Fecha desde la que estan vigentes los datos de impresion del documento de respaldo de la operacion
@param pCtipodocumentoproducto Codigo del tipo de documento del producto
*/
public Tdocumentsolicitude(TdocumentsolicitudeKey pPk,Timestamp pFdesde,String pCtipodocumentoproducto){
 pk=pPk;
 fdesde=pFdesde;
 ctipodocumentoproducto=pCtipodocumentoproducto;
}
/**Entrega la Clave primaria de Tdocumentsolicitude
@return El objeto que referencia a la Clave primaria de Tdocumentsolicitude
*/
public TdocumentsolicitudeKey getPk(){
  return pk;
}
/**Fija un nuevo valor a la Clave primaria de Tdocumentsolicitude
@param pPk El objeto que referencia a la nueva Clave primaria de Tdocumentsolicitude
*/
public void setPk(TdocumentsolicitudeKey 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 CTIPODOCUMENTOPRODUCTO="CTIPODOCUMENTOPRODUCTO";
/**Obtiene el valor de ctipodocumentoproducto
@return valor de ctipodocumentoproducto*/
public String getCtipodocumentoproducto(){
  return ctipodocumentoproducto;
}
/**Fija el valor de ctipodocumentoproducto
@param pCtipodocumentoproducto nuevo Valor de ctipodocumentoproducto*/
public void setCtipodocumentoproducto(String pCtipodocumentoproducto){
  ctipodocumentoproducto=pCtipodocumentoproducto;
}

public static final String CMONEDA="CMONEDA";
/**Obtiene el valor de cmoneda
@return valor de cmoneda*/
public String getCmoneda(){
  return cmoneda;
}
/**Fija el valor de cmoneda
@param pCmoneda nuevo Valor de cmoneda*/
public void setCmoneda(String pCmoneda){
  cmoneda=pCmoneda;
}

public static final String VALORDOCUMENTO="VALORDOCUMENTO";
/**Obtiene el valor de valordocumento
@return valor de valordocumento*/
public BigDecimal getValordocumento(){
  return valordocumento;
}
/**Fija el valor de valordocumento
@param pValordocumento nuevo Valor de valordocumento*/
public void setValordocumento(BigDecimal pValordocumento){
  valordocumento=pValordocumento;
}

public static final String FEMISION="FEMISION";
/**Obtiene el valor de femision
@return valor de femision*/
public Date getFemision(){
  return femision;
}
/**Fija el valor de femision
@param pFemision nuevo Valor de femision*/
public void setFemision(Date pFemision){
  femision=pFemision;
}

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 COPIASDOCUMENTO="COPIASDOCUMENTO";
/**Obtiene el valor de copiasdocumento
@return valor de copiasdocumento*/
public Integer getCopiasdocumento(){
  return copiasdocumento;
}
/**Fija el valor de copiasdocumento
@param pCopiasdocumento nuevo Valor de copiasdocumento*/
public void setCopiasdocumento(Integer pCopiasdocumento){
  copiasdocumento=pCopiasdocumento;
}

public static final String OBSERVACIONES="OBSERVACIONES";
/**Obtiene el valor de observaciones
@return valor de observaciones*/
public String getObservaciones(){
  return observaciones;
}
/**Fija el valor de observaciones
@param pObservaciones nuevo Valor de observaciones*/
public void setObservaciones(String pObservaciones){
  observaciones=pObservaciones;
}

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 ORIGINALESDOCUMENTO="ORIGINALESDOCUMENTO";
/**Obtiene el valor de originalesdocumento
@return valor de originalesdocumento*/
public Integer getOriginalesdocumento(){
  return originalesdocumento;
}
/**Fija el valor de originalesdocumento
@param pOriginalesdocumento nuevo Valor de originalesdocumento*/
public void setOriginalesdocumento(Integer pOriginalesdocumento){
  originalesdocumento=pOriginalesdocumento;
}

public static final String CUSUARIO_EMISION="CUSUARIO_EMISION";
/**Obtiene el valor de cusuario_emision
@return valor de cusuario_emision*/
public String getCusuario_emision(){
  return cusuario_emision;
}
/**Fija el valor de cusuario_emision
@param pCusuario_emision nuevo Valor de cusuario_emision*/
public void setCusuario_emision(String pCusuario_emision){
  cusuario_emision=pCusuario_emision;
}

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 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_LIBERACUSTODIO="CUSUARIO_LIBERACUSTODIO";
/**Obtiene el valor de cusuario_liberacustodio
@return valor de cusuario_liberacustodio*/
public String getCusuario_liberacustodio(){
  return cusuario_liberacustodio;
}
/**Fija el valor de cusuario_liberacustodio
@param pCusuario_liberacustodio nuevo Valor de cusuario_liberacustodio*/
public void setCusuario_liberacustodio(String pCusuario_liberacustodio){
  cusuario_liberacustodio=pCusuario_liberacustodio;
}

public static final String FLIBERACUSTODIO="FLIBERACUSTODIO";
/**Obtiene el valor de fliberacustodio
@return valor de fliberacustodio*/
public Date getFliberacustodio(){
  return fliberacustodio;
}
/**Fija el valor de fliberacustodio
@param pFliberacustodio nuevo Valor de fliberacustodio*/
public void setFliberacustodio(Date pFliberacustodio){
  fliberacustodio=pFliberacustodio;
}

public static final String COFICINA_CUSTODIO="COFICINA_CUSTODIO";
/**Obtiene el valor de coficina_custodio
@return valor de coficina_custodio*/
public Integer getCoficina_custodio(){
  return coficina_custodio;
}
/**Fija el valor de coficina_custodio
@param pCoficina_custodio nuevo Valor de coficina_custodio*/
public void setCoficina_custodio(Integer pCoficina_custodio){
  coficina_custodio=pCoficina_custodio;
}

public static final String CSUCURSAL_CUSTODIO="CSUCURSAL_CUSTODIO";
/**Obtiene el valor de csucursal_custodio
@return valor de csucursal_custodio*/
public Integer getCsucursal_custodio(){
  return csucursal_custodio;
}
/**Fija el valor de csucursal_custodio
@param pCsucursal_custodio nuevo Valor de csucursal_custodio*/
public void setCsucursal_custodio(Integer pCsucursal_custodio){
  csucursal_custodio=pCsucursal_custodio;
}

public static final String CUSUARIO_ANULACION="CUSUARIO_ANULACION";
/**Obtiene el valor de cusuario_anulacion
@return valor de cusuario_anulacion*/
public String getCusuario_anulacion(){
  return cusuario_anulacion;
}
/**Fija el valor de cusuario_anulacion
@param pCusuario_anulacion nuevo Valor de cusuario_anulacion*/
public void setCusuario_anulacion(String pCusuario_anulacion){
  cusuario_anulacion=pCusuario_anulacion;
}

public static final String FANULACION="FANULACION";
/**Obtiene el valor de fanulacion
@return valor de fanulacion*/
public Date getFanulacion(){
  return fanulacion;
}
/**Fija el valor de fanulacion
@param pFanulacion nuevo Valor de fanulacion*/
public void setFanulacion(Date pFanulacion){
  fanulacion=pFanulacion;
}

public static final String CUSUARIO_ENDOSO="CUSUARIO_ENDOSO";
/**Obtiene el valor de cusuario_endoso
@return valor de cusuario_endoso*/
public String getCusuario_endoso(){
  return cusuario_endoso;
}
/**Fija el valor de cusuario_endoso
@param pCusuario_endoso nuevo Valor de cusuario_endoso*/
public void setCusuario_endoso(String pCusuario_endoso){
  cusuario_endoso=pCusuario_endoso;
}

public static final String FENDOSO="FENDOSO";
/**Obtiene el valor de fendoso
@return valor de fendoso*/
public Date getFendoso(){
  return fendoso;
}
/**Fija el valor de fendoso
@param pFendoso nuevo Valor de fendoso*/
public void setFendoso(Date pFendoso){
  fendoso=pFendoso;
}

public static final String COFICINA_ENDOSO="COFICINA_ENDOSO";
/**Obtiene el valor de coficina_endoso
@return valor de coficina_endoso*/
public Integer getCoficina_endoso(){
  return coficina_endoso;
}
/**Fija el valor de coficina_endoso
@param pCoficina_endoso nuevo Valor de coficina_endoso*/
public void setCoficina_endoso(Integer pCoficina_endoso){
  coficina_endoso=pCoficina_endoso;
}

public static final String CSUCURSAL_ENDOSO="CSUCURSAL_ENDOSO";
/**Obtiene el valor de csucursal_endoso
@return valor de csucursal_endoso*/
public Integer getCsucursal_endoso(){
  return csucursal_endoso;
}
/**Fija el valor de csucursal_endoso
@param pCsucursal_endoso nuevo Valor de csucursal_endoso*/
public void setCsucursal_endoso(Integer pCsucursal_endoso){
  csucursal_endoso=pCsucursal_endoso;
}

public static final String CUSUARIO_CUSTODIACENTRAL="CUSUARIO_CUSTODIACENTRAL";
/**Obtiene el valor de cusuario_custodiacentral
@return valor de cusuario_custodiacentral*/
public String getCusuario_custodiacentral(){
  return cusuario_custodiacentral;
}
/**Fija el valor de cusuario_custodiacentral
@param pCusuario_custodiacentral nuevo Valor de cusuario_custodiacentral*/
public void setCusuario_custodiacentral(String pCusuario_custodiacentral){
  cusuario_custodiacentral=pCusuario_custodiacentral;
}

public static final String FINGRESOCUSTODIACENTRAL="FINGRESOCUSTODIACENTRAL";
/**Obtiene el valor de fingresocustodiacentral
@return valor de fingresocustodiacentral*/
public Date getFingresocustodiacentral(){
  return fingresocustodiacentral;
}
/**Fija el valor de fingresocustodiacentral
@param pFingresocustodiacentral nuevo Valor de fingresocustodiacentral*/
public void setFingresocustodiacentral(Date pFingresocustodiacentral){
  fingresocustodiacentral=pFingresocustodiacentral;
}

public static final String CUSUARIO_LIBERACUSTODIACENTRAL="CUSUARIO_LIBERACUSTODIACENTRAL";
/**Obtiene el valor de cusuario_liberacustodiacentral
@return valor de cusuario_liberacustodiacentral*/
public String getCusuario_liberacustodiacentral(){
  return cusuario_liberacustodiacentral;
}
/**Fija el valor de cusuario_liberacustodiacentral
@param pCusuario_liberacustodiacentral nuevo Valor de cusuario_liberacustodiacentral*/
public void setCusuario_liberacustodiacentral(String pCusuario_liberacustodiacentral){
  cusuario_liberacustodiacentral=pCusuario_liberacustodiacentral;
}

public static final String FLIBERACUSTODIACENTRAL="FLIBERACUSTODIACENTRAL";
/**Obtiene el valor de fliberacustodiacentral
@return valor de fliberacustodiacentral*/
public Date getFliberacustodiacentral(){
  return fliberacustodiacentral;
}
/**Fija el valor de fliberacustodiacentral
@param pFliberacustodiacentral nuevo Valor de fliberacustodiacentral*/
public void setFliberacustodiacentral(Date pFliberacustodiacentral){
  fliberacustodiacentral=pFliberacustodiacentral;
}

public static final String NUMEROACTA="NUMEROACTA";
/**Obtiene el valor de numeroacta
@return valor de numeroacta*/
public Integer getNumeroacta(){
  return numeroacta;
}
/**Fija el valor de numeroacta
@param pNumeroacta nuevo Valor de numeroacta*/
public void setNumeroacta(Integer pNumeroacta){
  numeroacta=pNumeroacta;
}

public static final String ESTATUSACTA="ESTATUSACTA";
/**Obtiene el valor de estatusacta
@return valor de estatusacta*/
public String getEstatusacta(){
  return estatusacta;
}
/**Fija el valor de estatusacta
@param pEstatusacta nuevo Valor de estatusacta*/
public void setEstatusacta(String pEstatusacta){
  estatusacta=pEstatusacta;
}

public static final String CDEPARTAMENTO="CDEPARTAMENTO";
/**Obtiene el valor de cdepartamento
@return valor de cdepartamento*/
public Integer getCdepartamento(){
  return cdepartamento;
}
/**Fija el valor de cdepartamento
@param pCdepartamento nuevo Valor de cdepartamento*/
public void setCdepartamento(Integer pCdepartamento){
  cdepartamento=pCdepartamento;
}

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 CSUCURSAL_ENTREGA="CSUCURSAL_ENTREGA";
/**Obtiene el valor de csucursal_entrega
@return valor de csucursal_entrega*/
public Integer getCsucursal_entrega(){
  return csucursal_entrega;
}
/**Fija el valor de csucursal_entrega
@param pCsucursal_entrega nuevo Valor de csucursal_entrega*/
public void setCsucursal_entrega(Integer pCsucursal_entrega){
  csucursal_entrega=pCsucursal_entrega;
}

public static final String COFICINA_ENTREGA="COFICINA_ENTREGA";
/**Obtiene el valor de coficina_entrega
@return valor de coficina_entrega*/
public Integer getCoficina_entrega(){
  return coficina_entrega;
}
/**Fija el valor de coficina_entrega
@param pCoficina_entrega nuevo Valor de coficina_entrega*/
public void setCoficina_entrega(Integer pCoficina_entrega){
  coficina_entrega=pCoficina_entrega;
}

public static final String DETALLETRANSFERENCIA="DETALLETRANSFERENCIA";
/**Obtiene el valor de detalletransferencia
@return valor de detalletransferencia*/
public String getDetalletransferencia(){
  return detalletransferencia;
}
/**Fija el valor de detalletransferencia
@param pDetalletransferencia nuevo Valor de detalletransferencia*/
public void setDetalletransferencia(String pDetalletransferencia){
  detalletransferencia=pDetalletransferencia;
}

/**Implementacion de la comparacion de la entidad Tdocumentsolicitude
@param rhs Elemento de Comparacion
@return el resultado de la comparacion
*/
public boolean equals(Object rhs){
    if (rhs == null){return false;}
    if (! (rhs instanceof Tdocumentsolicitude)){return false;}
    Tdocumentsolicitude that = (Tdocumentsolicitude) 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 Tdocumentsolicitude
@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 blancoTdocumentsolicitude
*/
public Object createInstance() throws Exception{
 Tdocumentsolicitude instance=new Tdocumentsolicitude();	
 instance.setPk(new TdocumentsolicitudeKey());
 return instance;
}
public Object cloneMe() throws Exception{
  Tdocumentsolicitude p=(Tdocumentsolicitude)this.clone();
  p.setPk((TdocumentsolicitudeKey)this.pk.cloneMe());
  return p;
}
public Object getId() {
  return this.pk;
}
}
