package com.fitbank.hb.persistence.cash;

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

/**Clase que implementa la entidad de Hibernate que hace referencia a la tabla VHISTORIALTRANSACCIONES*/
public class VfileTransactions implements Serializable,TransportBean,Cloneable{
/** Nombre de la Tabla VHISTORIALTRANSACCIONES */
public static final String TABLE_NAME = "VHISTORIALTRANSACCIONES";
/** HashCode asociado con la Instancia*/
private int hashValue = 0;
/** Version de la Clase*/
private static final long serialVersionUID = 1L;
/**
* Clave primaria de la Entidad VfileTransactions
*/
private VfileTransactionsKey pk;
/**
*  
*/
private String categoria;

/**
*  
*/
private String cgrupobalance;

/**
*  
*/
private String cgrupoproducto;

/**
*  
*/
private String cmoneda_cuenta;

/**
*  
*/
private String cmoneda_oficial;

/**
*  
*/
private Integer coficina_origen;

/**
*  
*/
private String cproducto;

/**
*  
*/
private Integer csucursal_origen;

/**
*  
*/
private String ctiposaldocategoria;

/**
*  
*/
private String debitocredito;

/**
*  
*/
private String descripcionadicional;

/**
*  
*/
private Date fcontabledesde;

/**
*  
*/
private Timestamp frealdesde;

/**
*  
*/
private String modotransaccion;

/**
*  
*/
private String numerodocumento;

/**
*  
*/
private String numeromensaje;

/**
*  
*/
private String numeropapeleta;

/**
*  
*/
private String reverso;

/**
*  
*/
private Integer rubro;

/**
*  
*/
private Long stransaccion;

/**
*  
*/
private BigDecimal valormonedacuenta;

/**
*  
*/
private BigDecimal valormonedaoficial;

/**Contructor por defecto*/
public VfileTransactions(){}
/**Contructor de VfileTransactions
@param pPk Clave Primaria del entity
@param pDebitocredito  
@param pFcontabledesde  
@param pNumeromensaje  
@param pReverso  
*/
public VfileTransactions(VfileTransactionsKey pPk,String pDebitocredito,Date pFcontabledesde,String pNumeromensaje,String pReverso){
 pk=pPk;
 debitocredito=pDebitocredito;
 fcontabledesde=pFcontabledesde;
 numeromensaje=pNumeromensaje;
 reverso=pReverso;
}
/**Entrega la Clave primaria de VfileTransactions
@return El objeto que referencia a la Clave primaria de VfileTransactions
*/
public VfileTransactionsKey getPk(){
  return pk;
}
/**Fija un nuevo valor a la Clave primaria de VfileTransactions
@param pPk El objeto que referencia a la nueva Clave primaria de VfileTransactions
*/
public void setPk(VfileTransactionsKey pPk){
  pk=pPk;
}
public static final String CATEGORIA="CATEGORIA";
/**Obtiene el valor de categoria
@return valor de categoria*/
public String getCategoria(){
  return categoria;
}
/**Fija el valor de categoria
@param pCategoria nuevo Valor de categoria*/
public void setCategoria(String pCategoria){
  categoria=pCategoria;
}

public static final String CGRUPOBALANCE="CGRUPOBALANCE";
/**Obtiene el valor de cgrupobalance
@return valor de cgrupobalance*/
public String getCgrupobalance(){
  return cgrupobalance;
}
/**Fija el valor de cgrupobalance
@param pCgrupobalance nuevo Valor de cgrupobalance*/
public void setCgrupobalance(String pCgrupobalance){
  cgrupobalance=pCgrupobalance;
}

public static final String CGRUPOPRODUCTO="CGRUPOPRODUCTO";
/**Obtiene el valor de cgrupoproducto
@return valor de cgrupoproducto*/
public String getCgrupoproducto(){
  return cgrupoproducto;
}
/**Fija el valor de cgrupoproducto
@param pCgrupoproducto nuevo Valor de cgrupoproducto*/
public void setCgrupoproducto(String pCgrupoproducto){
  cgrupoproducto=pCgrupoproducto;
}

public static final String CMONEDA_CUENTA="CMONEDA_CUENTA";
/**Obtiene el valor de cmoneda_cuenta
@return valor de cmoneda_cuenta*/
public String getCmoneda_cuenta(){
  return cmoneda_cuenta;
}
/**Fija el valor de cmoneda_cuenta
@param pCmoneda_cuenta nuevo Valor de cmoneda_cuenta*/
public void setCmoneda_cuenta(String pCmoneda_cuenta){
  cmoneda_cuenta=pCmoneda_cuenta;
}

public static final String CMONEDA_OFICIAL="CMONEDA_OFICIAL";
/**Obtiene el valor de cmoneda_oficial
@return valor de cmoneda_oficial*/
public String getCmoneda_oficial(){
  return cmoneda_oficial;
}
/**Fija el valor de cmoneda_oficial
@param pCmoneda_oficial nuevo Valor de cmoneda_oficial*/
public void setCmoneda_oficial(String pCmoneda_oficial){
  cmoneda_oficial=pCmoneda_oficial;
}

public static final String COFICINA_ORIGEN="COFICINA_ORIGEN";
/**Obtiene el valor de coficina_origen
@return valor de coficina_origen*/
public Integer getCoficina_origen(){
  return coficina_origen;
}
/**Fija el valor de coficina_origen
@param pCoficina_origen nuevo Valor de coficina_origen*/
public void setCoficina_origen(Integer pCoficina_origen){
  coficina_origen=pCoficina_origen;
}

public static final String CPRODUCTO="CPRODUCTO";
/**Obtiene el valor de cproducto
@return valor de cproducto*/
public String getCproducto(){
  return cproducto;
}
/**Fija el valor de cproducto
@param pCproducto nuevo Valor de cproducto*/
public void setCproducto(String pCproducto){
  cproducto=pCproducto;
}

public static final String CSUCURSAL_ORIGEN="CSUCURSAL_ORIGEN";
/**Obtiene el valor de csucursal_origen
@return valor de csucursal_origen*/
public Integer getCsucursal_origen(){
  return csucursal_origen;
}
/**Fija el valor de csucursal_origen
@param pCsucursal_origen nuevo Valor de csucursal_origen*/
public void setCsucursal_origen(Integer pCsucursal_origen){
  csucursal_origen=pCsucursal_origen;
}

public static final String CTIPOSALDOCATEGORIA="CTIPOSALDOCATEGORIA";
/**Obtiene el valor de ctiposaldocategoria
@return valor de ctiposaldocategoria*/
public String getCtiposaldocategoria(){
  return ctiposaldocategoria;
}
/**Fija el valor de ctiposaldocategoria
@param pCtiposaldocategoria nuevo Valor de ctiposaldocategoria*/
public void setCtiposaldocategoria(String pCtiposaldocategoria){
  ctiposaldocategoria=pCtiposaldocategoria;
}

public static final String DEBITOCREDITO="DEBITOCREDITO";
/**Obtiene el valor de debitocredito
@return valor de debitocredito*/
public String getDebitocredito(){
  return debitocredito;
}
/**Fija el valor de debitocredito
@param pDebitocredito nuevo Valor de debitocredito*/
public void setDebitocredito(String pDebitocredito){
  debitocredito=pDebitocredito;
}

public static final String DESCRIPCIONADICIONAL="DESCRIPCIONADICIONAL";
/**Obtiene el valor de descripcionadicional
@return valor de descripcionadicional*/
public String getDescripcionadicional(){
  return descripcionadicional;
}
/**Fija el valor de descripcionadicional
@param pDescripcionadicional nuevo Valor de descripcionadicional*/
public void setDescripcionadicional(String pDescripcionadicional){
  descripcionadicional=pDescripcionadicional;
}

public static final String FCONTABLEDESDE="FCONTABLEDESDE";
/**Obtiene el valor de fcontabledesde
@return valor de fcontabledesde*/
public Date getFcontabledesde(){
  return fcontabledesde;
}
/**Fija el valor de fcontabledesde
@param pFcontabledesde nuevo Valor de fcontabledesde*/
public void setFcontabledesde(Date pFcontabledesde){
  fcontabledesde=pFcontabledesde;
}

public static final String FREALDESDE="FREALDESDE";
/**Obtiene el valor de frealdesde
@return valor de frealdesde*/
public Timestamp getFrealdesde(){
  return frealdesde;
}
/**Fija el valor de frealdesde
@param pFrealdesde nuevo Valor de frealdesde*/
public void setFrealdesde(Timestamp pFrealdesde){
  frealdesde=pFrealdesde;
}

public static final String MODOTRANSACCION="MODOTRANSACCION";
/**Obtiene el valor de modotransaccion
@return valor de modotransaccion*/
public String getModotransaccion(){
  return modotransaccion;
}
/**Fija el valor de modotransaccion
@param pModotransaccion nuevo Valor de modotransaccion*/
public void setModotransaccion(String pModotransaccion){
  modotransaccion=pModotransaccion;
}

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 NUMEROMENSAJE="NUMEROMENSAJE";
/**Obtiene el valor de numeromensaje
@return valor de numeromensaje*/
public String getNumeromensaje(){
  return numeromensaje;
}
/**Fija el valor de numeromensaje
@param pNumeromensaje nuevo Valor de numeromensaje*/
public void setNumeromensaje(String pNumeromensaje){
  numeromensaje=pNumeromensaje;
}

public static final String NUMEROPAPELETA="NUMEROPAPELETA";
/**Obtiene el valor de numeropapeleta
@return valor de numeropapeleta*/
public String getNumeropapeleta(){
  return numeropapeleta;
}
/**Fija el valor de numeropapeleta
@param pNumeropapeleta nuevo Valor de numeropapeleta*/
public void setNumeropapeleta(String pNumeropapeleta){
  numeropapeleta=pNumeropapeleta;
}

public static final String REVERSO="REVERSO";
/**Obtiene el valor de reverso
@return valor de reverso*/
public String getReverso(){
  return reverso;
}
/**Fija el valor de reverso
@param pReverso nuevo Valor de reverso*/
public void setReverso(String pReverso){
  reverso=pReverso;
}

public static final String RUBRO="RUBRO";
/**Obtiene el valor de rubro
@return valor de rubro*/
public Integer getRubro(){
  return rubro;
}
/**Fija el valor de rubro
@param pRubro nuevo Valor de rubro*/
public void setRubro(Integer pRubro){
  rubro=pRubro;
}

public static final String STRANSACCION="STRANSACCION";
/**Obtiene el valor de stransaccion
@return valor de stransaccion*/
public Long getStransaccion(){
  return stransaccion;
}
/**Fija el valor de stransaccion
@param pStransaccion nuevo Valor de stransaccion*/
public void setStransaccion(Long pStransaccion){
  stransaccion=pStransaccion;
}

public static final String VALORMONEDACUENTA="VALORMONEDACUENTA";
/**Obtiene el valor de valormonedacuenta
@return valor de valormonedacuenta*/
public BigDecimal getValormonedacuenta(){
  return valormonedacuenta;
}
/**Fija el valor de valormonedacuenta
@param pValormonedacuenta nuevo Valor de valormonedacuenta*/
public void setValormonedacuenta(BigDecimal pValormonedacuenta){
  valormonedacuenta=pValormonedacuenta;
}

public static final String VALORMONEDAOFICIAL="VALORMONEDAOFICIAL";
/**Obtiene el valor de valormonedaoficial
@return valor de valormonedaoficial*/
public BigDecimal getValormonedaoficial(){
  return valormonedaoficial;
}
/**Fija el valor de valormonedaoficial
@param pValormonedaoficial nuevo Valor de valormonedaoficial*/
public void setValormonedaoficial(BigDecimal pValormonedaoficial){
  valormonedaoficial=pValormonedaoficial;
}

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