package com.fitbank.hb.persistence.uci;

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

/**Clase que implementa la entidad de Hibernate que hace referencia a la tabla TCONCILIACIONSERVICIOS*/
public class Tserviceconciliation implements Serializable,TransportBean,Cloneable{
/**
* HashCode asociado con la Instancia
*/
private volatile int hashValue = 0;
/**
* Version de la Clase
*/
private static final long serialVersionUID = 1L;
/**
* Clave primaria de la Entidad Tserviceconciliation
*/
private TserviceconciliationKey pk;
/**
* 
*/
private String id_agencia;

/**
* 
*/
private String agencia;

/**
* 
*/
private String id_cajero;

/**
* 
*/
private String cajero;

/**
* 
*/
private String id_transaccion;

/**
* 
*/
private String transaccion;

/**
* 
*/
private String motivo;

/**
* 
*/
private String cuenta;

/**
* 
*/
private String moneda;

/**
* 
*/
private BigDecimal efectivo;

/**
* 
*/
private BigDecimal cheques;

/**
* 
*/
private String referencia;

/**
* 
*/
private String hora;

/**
* 
*/
private String diferido;

/**Contructor por defecto*/
public Tserviceconciliation(){}
/**Contructor de Tserviceconciliation
@param pPk Clave Primaria del entity
@param pId_agencia null
@param pAgencia null
@param pId_cajero null
@param pCajero null
@param pId_transaccion null
@param pTransaccion null
@param pMotivo null
@param pCuenta null
@param pMoneda null
@param pEfectivo null
@param pCheques null
@param pReferencia null
@param pHora null
@param pDiferido null
*/
public Tserviceconciliation(TserviceconciliationKey pPk,String pId_agencia,String pAgencia,String pId_cajero,String pCajero,String pId_transaccion,String pTransaccion,String pMotivo,String pCuenta,String pMoneda,BigDecimal pEfectivo,BigDecimal pCheques,String pReferencia,String pHora,String pDiferido){
 pk=pPk;
 id_agencia=pId_agencia;
 agencia=pAgencia;
 id_cajero=pId_cajero;
 cajero=pCajero;
 id_transaccion=pId_transaccion;
 transaccion=pTransaccion;
 motivo=pMotivo;
 cuenta=pCuenta;
 moneda=pMoneda;
 efectivo=pEfectivo;
 cheques=pCheques;
 referencia=pReferencia;
 hora=pHora;
 diferido=pDiferido;
}
/**Entrega la Clave primaria de Tserviceconciliation
@return El objeto que referencia a la Clave primaria de Tserviceconciliation
*/
public TserviceconciliationKey getPk(){
  return pk;
}
/**Fija un nuevo valor a la Clave primaria de Tserviceconciliation
@param pPk El objeto que referencia a la nueva Clave primaria de Tserviceconciliation
*/
public void setPk(TserviceconciliationKey pPk){
  pk=pPk;
}
/**Obtiene el valor de id_agencia
@return valor de id_agencia*/
public String getId_agencia(){
  return id_agencia;
}
/**Fija el valor de id_agencia
@param pId_agencia nuevo Valor de id_agencia*/
public void setId_agencia(String pId_agencia){
  id_agencia=pId_agencia;
}

/**Obtiene el valor de agencia
@return valor de agencia*/
public String getAgencia(){
  return agencia;
}
/**Fija el valor de agencia
@param pAgencia nuevo Valor de agencia*/
public void setAgencia(String pAgencia){
  agencia=pAgencia;
}

/**Obtiene el valor de id_cajero
@return valor de id_cajero*/
public String getId_cajero(){
  return id_cajero;
}
/**Fija el valor de id_cajero
@param pId_cajero nuevo Valor de id_cajero*/
public void setId_cajero(String pId_cajero){
  id_cajero=pId_cajero;
}

/**Obtiene el valor de cajero
@return valor de cajero*/
public String getCajero(){
  return cajero;
}
/**Fija el valor de cajero
@param pCajero nuevo Valor de cajero*/
public void setCajero(String pCajero){
  cajero=pCajero;
}

/**Obtiene el valor de id_transaccion
@return valor de id_transaccion*/
public String getId_transaccion(){
  return id_transaccion;
}
/**Fija el valor de id_transaccion
@param pId_transaccion nuevo Valor de id_transaccion*/
public void setId_transaccion(String pId_transaccion){
  id_transaccion=pId_transaccion;
}

/**Obtiene el valor de transaccion
@return valor de transaccion*/
public String getTransaccion(){
  return transaccion;
}
/**Fija el valor de transaccion
@param pTransaccion nuevo Valor de transaccion*/
public void setTransaccion(String pTransaccion){
  transaccion=pTransaccion;
}

/**Obtiene el valor de motivo
@return valor de motivo*/
public String getMotivo(){
  return motivo;
}
/**Fija el valor de motivo
@param pMotivo nuevo Valor de motivo*/
public void setMotivo(String pMotivo){
  motivo=pMotivo;
}

/**Obtiene el valor de cuenta
@return valor de cuenta*/
public String getCuenta(){
  return cuenta;
}
/**Fija el valor de cuenta
@param pCuenta nuevo Valor de cuenta*/
public void setCuenta(String pCuenta){
  cuenta=pCuenta;
}

/**Obtiene el valor de moneda
@return valor de moneda*/
public String getMoneda(){
  return moneda;
}
/**Fija el valor de moneda
@param pMoneda nuevo Valor de moneda*/
public void setMoneda(String pMoneda){
  moneda=pMoneda;
}

/**Obtiene el valor de efectivo
@return valor de efectivo*/
public BigDecimal getEfectivo(){
  return efectivo;
}
/**Fija el valor de efectivo
@param pEfectivo nuevo Valor de efectivo*/
public void setEfectivo(BigDecimal pEfectivo){
  efectivo=pEfectivo;
}

/**Obtiene el valor de cheques
@return valor de cheques*/
public BigDecimal getCheques(){
  return cheques;
}
/**Fija el valor de cheques
@param pCheques nuevo Valor de cheques*/
public void setCheques(BigDecimal pCheques){
  cheques=pCheques;
}

/**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;
}

/**Obtiene el valor de hora
@return valor de hora*/
public String getHora(){
  return hora;
}
/**Fija el valor de hora
@param pHora nuevo Valor de hora*/
public void setHora(String pHora){
  hora=pHora;
}

/**Obtiene el valor de diferido
@return valor de diferido*/
public String getDiferido(){
  return diferido;
}
/**Fija el valor de diferido
@param pDiferido nuevo Valor de diferido*/
public void setDiferido(String pDiferido){
  diferido=pDiferido;
}

/**Implementación de la comparación de la entidad Tserviceconciliation
@param rhs Elemento de Comparación
@return el resultado de la comparación
*/
public boolean equals(Object rhs){
    if (rhs == null)return false;
    if (! (rhs instanceof Tserviceconciliation))return false;
    Tserviceconciliation that = (Tserviceconciliation) 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 Tserviceconciliation
@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 blancoTserviceconciliation
*/
public Object createInstance() throws Exception{
 Tserviceconciliation instance=new Tserviceconciliation();	
 instance.setPk(new TserviceconciliationKey());
 return instance;
}
public Object cloneMe() throws Exception{
  Tserviceconciliation p=(Tserviceconciliation)this.clone();
  p.setPk((TserviceconciliationKey)this.pk.cloneMe());
  return p;
}
}
