package com.fitbank.hb.persistence.safe;

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

/**Clase que implementa la entidad de Hibernate que hace referencia a la tabla TREGISTROUSUARIOSHOMEBANKING*/
public class Thomebankinguserregistry extends AbstractExpire  implements Serializable,TransportBean,Cloneable{
/** Nombre de la Tabla TREGISTROUSUARIOSHOMEBANKING */
public static final String TABLE_NAME = "TREGISTROUSUARIOSHOMEBANKING";
/** HashCode asociado con la Instancia*/
private int hashValue = 0;
/** Version de la Clase*/
private static final long serialVersionUID = 1L;
/**
* Clave primaria de la Entidad Thomebankinguserregistry
*/
private ThomebankinguserregistryKey pk;
/**
* Fecha desde la que esta vigente la autorizacion
*/
private Timestamp fdesde;

/**
* Codigo del estatus del registro de usuarios de homebanking
*/
private String cestatusregistrohomebank;

/**
* Apellido Paterno del usuario que se registra
*/
private String apellidopaterno;

/**
* Primer nombre del usuario que se registra
*/
private String primernombre;

/**
* Codigo del tipo de identificacion de una persona
*/
private String ctipoidentificacion;

/**
* Numero de Identificacion del usuario que se registra
*/
private String identificacion;

/**
* Fecha de Nacimiento del usuario que se registra
*/
private Date fnacimiento;

/**
* Fecha en la que se confirma el registro de usuario de homebanking
*/
private Date fconfirmacion;

/**
* Informacion que el cliente solicita acerca de los productos del banco
*/
private String informacionsolicitada;

/**
* Codigo del tipo de usuario
*/
private String ctipousuario;

/**
* Nombre de la empresa a la cual pertenece el usuario que se registra
*/
private String nombreempresa;

/**
* Codigo del tipo de identificacion de la empresa
*/
private String ctipoidentificacion_empresa;

/**
* Numero de Identificacion de la empresa 
*/
private String identificacionempresa;

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

/**
* Codigo del usuario asignado al servicio de homebanking
*/
private String cusuario_ibanking;

/**
* Codigo del usuario en el sistema externo
*/
private String codigousuario;

/**Contructor por defecto*/
public Thomebankinguserregistry(){}
/**Contructor de Thomebankinguserregistry
@param pPk Clave Primaria del entity
@param pFdesde Fecha desde la que esta vigente la autorizacion
@param pApellidopaterno Apellido Paterno del usuario que se registra
@param pPrimernombre Primer nombre del usuario que se registra
@param pCtipoidentificacion Codigo del tipo de identificacion de una persona
@param pIdentificacion Numero de Identificacion del usuario que se registra
*/
public Thomebankinguserregistry(ThomebankinguserregistryKey pPk,Timestamp pFdesde,String pApellidopaterno,String pPrimernombre,String pCtipoidentificacion,String pIdentificacion){
 pk=pPk;
 fdesde=pFdesde;
 apellidopaterno=pApellidopaterno;
 primernombre=pPrimernombre;
 ctipoidentificacion=pCtipoidentificacion;
 identificacion=pIdentificacion;
}
/**Entrega la Clave primaria de Thomebankinguserregistry
@return El objeto que referencia a la Clave primaria de Thomebankinguserregistry
*/
public ThomebankinguserregistryKey getPk(){
  return pk;
}
/**Fija un nuevo valor a la Clave primaria de Thomebankinguserregistry
@param pPk El objeto que referencia a la nueva Clave primaria de Thomebankinguserregistry
*/
public void setPk(ThomebankinguserregistryKey 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 CESTATUSREGISTROHOMEBANK="CESTATUSREGISTROHOMEBANK";
/**Obtiene el valor de cestatusregistrohomebank
@return valor de cestatusregistrohomebank*/
public String getCestatusregistrohomebank(){
  return cestatusregistrohomebank;
}
/**Fija el valor de cestatusregistrohomebank
@param pCestatusregistrohomebank nuevo Valor de cestatusregistrohomebank*/
public void setCestatusregistrohomebank(String pCestatusregistrohomebank){
  cestatusregistrohomebank=pCestatusregistrohomebank;
}

public static final String APELLIDOPATERNO="APELLIDOPATERNO";
/**Obtiene el valor de apellidopaterno
@return valor de apellidopaterno*/
public String getApellidopaterno(){
  return apellidopaterno;
}
/**Fija el valor de apellidopaterno
@param pApellidopaterno nuevo Valor de apellidopaterno*/
public void setApellidopaterno(String pApellidopaterno){
  apellidopaterno=pApellidopaterno;
}

public static final String PRIMERNOMBRE="PRIMERNOMBRE";
/**Obtiene el valor de primernombre
@return valor de primernombre*/
public String getPrimernombre(){
  return primernombre;
}
/**Fija el valor de primernombre
@param pPrimernombre nuevo Valor de primernombre*/
public void setPrimernombre(String pPrimernombre){
  primernombre=pPrimernombre;
}

public static final String CTIPOIDENTIFICACION="CTIPOIDENTIFICACION";
/**Obtiene el valor de ctipoidentificacion
@return valor de ctipoidentificacion*/
public String getCtipoidentificacion(){
  return ctipoidentificacion;
}
/**Fija el valor de ctipoidentificacion
@param pCtipoidentificacion nuevo Valor de ctipoidentificacion*/
public void setCtipoidentificacion(String pCtipoidentificacion){
  ctipoidentificacion=pCtipoidentificacion;
}

public static final String IDENTIFICACION="IDENTIFICACION";
/**Obtiene el valor de identificacion
@return valor de identificacion*/
public String getIdentificacion(){
  return identificacion;
}
/**Fija el valor de identificacion
@param pIdentificacion nuevo Valor de identificacion*/
public void setIdentificacion(String pIdentificacion){
  identificacion=pIdentificacion;
}

public static final String FNACIMIENTO="FNACIMIENTO";
/**Obtiene el valor de fnacimiento
@return valor de fnacimiento*/
public Date getFnacimiento(){
  return fnacimiento;
}
/**Fija el valor de fnacimiento
@param pFnacimiento nuevo Valor de fnacimiento*/
public void setFnacimiento(Date pFnacimiento){
  fnacimiento=pFnacimiento;
}

public static final String FCONFIRMACION="FCONFIRMACION";
/**Obtiene el valor de fconfirmacion
@return valor de fconfirmacion*/
public Date getFconfirmacion(){
  return fconfirmacion;
}
/**Fija el valor de fconfirmacion
@param pFconfirmacion nuevo Valor de fconfirmacion*/
public void setFconfirmacion(Date pFconfirmacion){
  fconfirmacion=pFconfirmacion;
}

public static final String INFORMACIONSOLICITADA="INFORMACIONSOLICITADA";
/**Obtiene el valor de informacionsolicitada
@return valor de informacionsolicitada*/
public String getInformacionsolicitada(){
  return informacionsolicitada;
}
/**Fija el valor de informacionsolicitada
@param pInformacionsolicitada nuevo Valor de informacionsolicitada*/
public void setInformacionsolicitada(String pInformacionsolicitada){
  informacionsolicitada=pInformacionsolicitada;
}

public static final String CTIPOUSUARIO="CTIPOUSUARIO";
/**Obtiene el valor de ctipousuario
@return valor de ctipousuario*/
public String getCtipousuario(){
  return ctipousuario;
}
/**Fija el valor de ctipousuario
@param pCtipousuario nuevo Valor de ctipousuario*/
public void setCtipousuario(String pCtipousuario){
  ctipousuario=pCtipousuario;
}

public static final String NOMBREEMPRESA="NOMBREEMPRESA";
/**Obtiene el valor de nombreempresa
@return valor de nombreempresa*/
public String getNombreempresa(){
  return nombreempresa;
}
/**Fija el valor de nombreempresa
@param pNombreempresa nuevo Valor de nombreempresa*/
public void setNombreempresa(String pNombreempresa){
  nombreempresa=pNombreempresa;
}

public static final String CTIPOIDENTIFICACION_EMPRESA="CTIPOIDENTIFICACION_EMPRESA";
/**Obtiene el valor de ctipoidentificacion_empresa
@return valor de ctipoidentificacion_empresa*/
public String getCtipoidentificacion_empresa(){
  return ctipoidentificacion_empresa;
}
/**Fija el valor de ctipoidentificacion_empresa
@param pCtipoidentificacion_empresa nuevo Valor de ctipoidentificacion_empresa*/
public void setCtipoidentificacion_empresa(String pCtipoidentificacion_empresa){
  ctipoidentificacion_empresa=pCtipoidentificacion_empresa;
}

public static final String IDENTIFICACIONEMPRESA="IDENTIFICACIONEMPRESA";
/**Obtiene el valor de identificacionempresa
@return valor de identificacionempresa*/
public String getIdentificacionempresa(){
  return identificacionempresa;
}
/**Fija el valor de identificacionempresa
@param pIdentificacionempresa nuevo Valor de identificacionempresa*/
public void setIdentificacionempresa(String pIdentificacionempresa){
  identificacionempresa=pIdentificacionempresa;
}

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 CUSUARIO_IBANKING="CUSUARIO_IBANKING";
/**Obtiene el valor de cusuario_ibanking
@return valor de cusuario_ibanking*/
public String getCusuario_ibanking(){
  return cusuario_ibanking;
}
/**Fija el valor de cusuario_ibanking
@param pCusuario_ibanking nuevo Valor de cusuario_ibanking*/
public void setCusuario_ibanking(String pCusuario_ibanking){
  cusuario_ibanking=pCusuario_ibanking;
}

public static final String CODIGOUSUARIO="CODIGOUSUARIO";
/**Obtiene el valor de codigousuario
@return valor de codigousuario*/
public String getCodigousuario(){
  return codigousuario;
}
/**Fija el valor de codigousuario
@param pCodigousuario nuevo Valor de codigousuario*/
public void setCodigousuario(String pCodigousuario){
  codigousuario=pCodigousuario;
}

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