package com.fitbank.hb.persistence.gene;

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;

/**Clase que implementa la entidad de Hibernate que hace referencia a la tabla TBITACORADEPARTAMENTAL*/
public class Tdepartamentallogbook extends AbstractExpire  implements Serializable,TransportBean,Cloneable{
/** Nombre de la Tabla TBITACORADEPARTAMENTAL */
public static final String TABLE_NAME = "TBITACORADEPARTAMENTAL";
/** HashCode asociado con la Instancia*/
private int hashValue = 0;
/** Version de la Clase*/
private static final long serialVersionUID = 1L;
/**
* Clave primaria de la Entidad Tdepartamentallogbook
*/
private TdepartamentallogbookKey pk;
/**
* Manejo de optimistic locking.
*/
private Integer versioncontrol;

/**
* Fecha desde la cual esta vigente el registro del eventoen la bitacora departamental
*/
private Timestamp fdesde;

/**
* Codigo del usuario que ingresa el evento
*/
private String cusuario_ingreso;

/**
* Codigo del evento para bitacora departamental
*/
private Integer ceventobitacora;

/**
* Codigo del tipo de reclamo
*/
private Integer ctiporeclamo;

/**
* Codigo de sucursal del evento
*/
private Integer csucursal;

/**
* Codigo de oficina del evento
*/
private Integer coficina;

/**
* Codigo de persona del evento
*/
private Integer cpersona;

/**
* Detalle del evento sucedido en el departamento
*/
private String detalle;

/**
* Observaciones del evento de la bitacora
*/
private String observacion;

/**
* Solucion realizada para control del riesgo
*/
private String solucion;

/**
* Forma en la que se presenta el reclamo, P = Personal, E = Escrita, T = Telefonica, M = Via Mail, B = Buzon.
*/
private String formareclamo;

/**
* Codigo de sucursal en la que se presenta el reclamo
*/
private Integer csucursal_reclamo;

/**
* Codigo de oficina en la que se presenta el reclamo
*/
private Integer coficina_reclamo;

/**
* Codigo de persona que presenta el reclamo
*/
private Integer cpersona_reclamo;

/**
* Indica si afecta a la continuidad del negocio o no
*/
private String afectacontinuidad;

/**
* Valor registrado como impacto economico del evento
*/
private BigDecimal importeimpactoeconomico;

/**
* Indica si es posible recuperar la perdida economica o no
*/
private String impactoeconomicorecuperable;

/**
* Fecha en la que se presento el evento operativo de riesgo
*/
private Timestamp fevento;

/**
* Fecha y hora de solucion del evento operativo de riesgo
*/
private Timestamp fsolucion;

/**
* Codigo de la persona responsable de controlar el evento
*/
private Integer cpersona_responsable;

/**
* En el caso de eventos externos indica si la personas que reporta el evento es PRO=Proveedor, INT=Intermediario, EXT=Externo
*/
private String eventoexterno;

/**
* Nombre del responsable en el caso de que sea el evento externo
*/
private String nombrepersonaexterna;

/**
* Estado del evento puede ser IDN=Identificado, INV=En Investigacion, PRO=En proceso de solucion, CER=CERRADO
*/
private String estadoevento;

/**Contructor por defecto*/
public Tdepartamentallogbook(){}
/**Contructor de Tdepartamentallogbook
@param pPk Clave Primaria del entity
@param pFdesde Fecha desde la cual esta vigente el registro del eventoen la bitacora departamental
@param pCusuario_ingreso Codigo del usuario que ingresa el evento
@param pCeventobitacora Codigo del evento para bitacora departamental
@param pCtiporeclamo Codigo del tipo de reclamo
*/
public Tdepartamentallogbook(TdepartamentallogbookKey pPk,Timestamp pFdesde,String pCusuario_ingreso,Integer pCeventobitacora,Integer pCtiporeclamo){
 pk=pPk;
 fdesde=pFdesde;
 cusuario_ingreso=pCusuario_ingreso;
 ceventobitacora=pCeventobitacora;
 ctiporeclamo=pCtiporeclamo;
}
/**Entrega la Clave primaria de Tdepartamentallogbook
@return El objeto que referencia a la Clave primaria de Tdepartamentallogbook
*/
public TdepartamentallogbookKey getPk(){
  return pk;
}
/**Fija un nuevo valor a la Clave primaria de Tdepartamentallogbook
@param pPk El objeto que referencia a la nueva Clave primaria de Tdepartamentallogbook
*/
public void setPk(TdepartamentallogbookKey pPk){
  pk=pPk;
}
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 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 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 CEVENTOBITACORA="CEVENTOBITACORA";
/**Obtiene el valor de ceventobitacora
@return valor de ceventobitacora*/
public Integer getCeventobitacora(){
  return ceventobitacora;
}
/**Fija el valor de ceventobitacora
@param pCeventobitacora nuevo Valor de ceventobitacora*/
public void setCeventobitacora(Integer pCeventobitacora){
  ceventobitacora=pCeventobitacora;
}

public static final String CTIPORECLAMO="CTIPORECLAMO";
/**Obtiene el valor de ctiporeclamo
@return valor de ctiporeclamo*/
public Integer getCtiporeclamo(){
  return ctiporeclamo;
}
/**Fija el valor de ctiporeclamo
@param pCtiporeclamo nuevo Valor de ctiporeclamo*/
public void setCtiporeclamo(Integer pCtiporeclamo){
  ctiporeclamo=pCtiporeclamo;
}

public static final String CSUCURSAL="CSUCURSAL";
/**Obtiene el valor de csucursal
@return valor de csucursal*/
public Integer getCsucursal(){
  return csucursal;
}
/**Fija el valor de csucursal
@param pCsucursal nuevo Valor de csucursal*/
public void setCsucursal(Integer pCsucursal){
  csucursal=pCsucursal;
}

public static final String COFICINA="COFICINA";
/**Obtiene el valor de coficina
@return valor de coficina*/
public Integer getCoficina(){
  return coficina;
}
/**Fija el valor de coficina
@param pCoficina nuevo Valor de coficina*/
public void setCoficina(Integer pCoficina){
  coficina=pCoficina;
}

public static final String CPERSONA="CPERSONA";
/**Obtiene el valor de cpersona
@return valor de cpersona*/
public Integer getCpersona(){
  return cpersona;
}
/**Fija el valor de cpersona
@param pCpersona nuevo Valor de cpersona*/
public void setCpersona(Integer pCpersona){
  cpersona=pCpersona;
}

public static final String DETALLE="DETALLE";
/**Obtiene el valor de detalle
@return valor de detalle*/
public String getDetalle(){
  return detalle;
}
/**Fija el valor de detalle
@param pDetalle nuevo Valor de detalle*/
public void setDetalle(String pDetalle){
  detalle=pDetalle;
}

public static final String OBSERVACION="OBSERVACION";
/**Obtiene el valor de observacion
@return valor de observacion*/
public String getObservacion(){
  return observacion;
}
/**Fija el valor de observacion
@param pObservacion nuevo Valor de observacion*/
public void setObservacion(String pObservacion){
  observacion=pObservacion;
}

public static final String SOLUCION="SOLUCION";
/**Obtiene el valor de solucion
@return valor de solucion*/
public String getSolucion(){
  return solucion;
}
/**Fija el valor de solucion
@param pSolucion nuevo Valor de solucion*/
public void setSolucion(String pSolucion){
  solucion=pSolucion;
}

public static final String FORMARECLAMO="FORMARECLAMO";
/**Obtiene el valor de formareclamo
@return valor de formareclamo*/
public String getFormareclamo(){
  return formareclamo;
}
/**Fija el valor de formareclamo
@param pFormareclamo nuevo Valor de formareclamo*/
public void setFormareclamo(String pFormareclamo){
  formareclamo=pFormareclamo;
}

public static final String CSUCURSAL_RECLAMO="CSUCURSAL_RECLAMO";
/**Obtiene el valor de csucursal_reclamo
@return valor de csucursal_reclamo*/
public Integer getCsucursal_reclamo(){
  return csucursal_reclamo;
}
/**Fija el valor de csucursal_reclamo
@param pCsucursal_reclamo nuevo Valor de csucursal_reclamo*/
public void setCsucursal_reclamo(Integer pCsucursal_reclamo){
  csucursal_reclamo=pCsucursal_reclamo;
}

public static final String COFICINA_RECLAMO="COFICINA_RECLAMO";
/**Obtiene el valor de coficina_reclamo
@return valor de coficina_reclamo*/
public Integer getCoficina_reclamo(){
  return coficina_reclamo;
}
/**Fija el valor de coficina_reclamo
@param pCoficina_reclamo nuevo Valor de coficina_reclamo*/
public void setCoficina_reclamo(Integer pCoficina_reclamo){
  coficina_reclamo=pCoficina_reclamo;
}

public static final String CPERSONA_RECLAMO="CPERSONA_RECLAMO";
/**Obtiene el valor de cpersona_reclamo
@return valor de cpersona_reclamo*/
public Integer getCpersona_reclamo(){
  return cpersona_reclamo;
}
/**Fija el valor de cpersona_reclamo
@param pCpersona_reclamo nuevo Valor de cpersona_reclamo*/
public void setCpersona_reclamo(Integer pCpersona_reclamo){
  cpersona_reclamo=pCpersona_reclamo;
}

public static final String AFECTACONTINUIDAD="AFECTACONTINUIDAD";
/**Obtiene el valor de afectacontinuidad
@return valor de afectacontinuidad*/
public String getAfectacontinuidad(){
  return afectacontinuidad;
}
/**Fija el valor de afectacontinuidad
@param pAfectacontinuidad nuevo Valor de afectacontinuidad*/
public void setAfectacontinuidad(String pAfectacontinuidad){
  afectacontinuidad=pAfectacontinuidad;
}

public static final String IMPORTEIMPACTOECONOMICO="IMPORTEIMPACTOECONOMICO";
/**Obtiene el valor de importeimpactoeconomico
@return valor de importeimpactoeconomico*/
public BigDecimal getImporteimpactoeconomico(){
  return importeimpactoeconomico;
}
/**Fija el valor de importeimpactoeconomico
@param pImporteimpactoeconomico nuevo Valor de importeimpactoeconomico*/
public void setImporteimpactoeconomico(BigDecimal pImporteimpactoeconomico){
  importeimpactoeconomico=pImporteimpactoeconomico;
}

public static final String IMPACTOECONOMICORECUPERABLE="IMPACTOECONOMICORECUPERABLE";
/**Obtiene el valor de impactoeconomicorecuperable
@return valor de impactoeconomicorecuperable*/
public String getImpactoeconomicorecuperable(){
  return impactoeconomicorecuperable;
}
/**Fija el valor de impactoeconomicorecuperable
@param pImpactoeconomicorecuperable nuevo Valor de impactoeconomicorecuperable*/
public void setImpactoeconomicorecuperable(String pImpactoeconomicorecuperable){
  impactoeconomicorecuperable=pImpactoeconomicorecuperable;
}

public static final String FEVENTO="FEVENTO";
/**Obtiene el valor de fevento
@return valor de fevento*/
public Timestamp getFevento(){
  return fevento;
}
/**Fija el valor de fevento
@param pFevento nuevo Valor de fevento*/
public void setFevento(Timestamp pFevento){
  fevento=pFevento;
}

public static final String FSOLUCION="FSOLUCION";
/**Obtiene el valor de fsolucion
@return valor de fsolucion*/
public Timestamp getFsolucion(){
  return fsolucion;
}
/**Fija el valor de fsolucion
@param pFsolucion nuevo Valor de fsolucion*/
public void setFsolucion(Timestamp pFsolucion){
  fsolucion=pFsolucion;
}

public static final String CPERSONA_RESPONSABLE="CPERSONA_RESPONSABLE";
/**Obtiene el valor de cpersona_responsable
@return valor de cpersona_responsable*/
public Integer getCpersona_responsable(){
  return cpersona_responsable;
}
/**Fija el valor de cpersona_responsable
@param pCpersona_responsable nuevo Valor de cpersona_responsable*/
public void setCpersona_responsable(Integer pCpersona_responsable){
  cpersona_responsable=pCpersona_responsable;
}

public static final String EVENTOEXTERNO="EVENTOEXTERNO";
/**Obtiene el valor de eventoexterno
@return valor de eventoexterno*/
public String getEventoexterno(){
  return eventoexterno;
}
/**Fija el valor de eventoexterno
@param pEventoexterno nuevo Valor de eventoexterno*/
public void setEventoexterno(String pEventoexterno){
  eventoexterno=pEventoexterno;
}

public static final String NOMBREPERSONAEXTERNA="NOMBREPERSONAEXTERNA";
/**Obtiene el valor de nombrepersonaexterna
@return valor de nombrepersonaexterna*/
public String getNombrepersonaexterna(){
  return nombrepersonaexterna;
}
/**Fija el valor de nombrepersonaexterna
@param pNombrepersonaexterna nuevo Valor de nombrepersonaexterna*/
public void setNombrepersonaexterna(String pNombrepersonaexterna){
  nombrepersonaexterna=pNombrepersonaexterna;
}

public static final String ESTADOEVENTO="ESTADOEVENTO";
/**Obtiene el valor de estadoevento
@return valor de estadoevento*/
public String getEstadoevento(){
  return estadoevento;
}
/**Fija el valor de estadoevento
@param pEstadoevento nuevo Valor de estadoevento*/
public void setEstadoevento(String pEstadoevento){
  estadoevento=pEstadoevento;
}

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