package com.fitbank.hb.persistence.gene;

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

/**Clase que implementa la entidad de Hibernate que hace referencia a la tabla TPARAMETROSTARIFARIO*/
public class Ttariffparameter implements Serializable,TransportBean,Cloneable{
/** Nombre de la Tabla TPARAMETROSTARIFARIO */
public static final String TABLE_NAME = "TPARAMETROSTARIFARIO";
/** HashCode asociado con la Instancia*/
private int hashValue = 0;
/** Version de la Clase*/
private static final long serialVersionUID = 1L;
/**
* Clave primaria de la Entidad Ttariffparameter
*/
private TtariffparameterKey pk;
/**
* Periodo de corte. D = Diario, M = Mensual.
*/
private String periodocorte;

/**
* Número de transacciones acumuladas permitidas sin cobro de comisión.
*/
private Integer numeromovimientos;

/**
* Monto máximo acumulado permitido sin cobro de comisión.
*/
private BigDecimal montoacumulado;

/**
* Transacciones que determinan el número acumulado de movimientos.
*/
private String transaccionesdetalle;

/**
* Código de subsistema de la transacción de la comisión.
*/
private String csubsistema_comision;

/**
* Código de transacción de comisión.
*/
private String ctransaccion_comision;

/**
* versión de la transacción de comisión.
*/
private String versiontransaccion_comision;

/**
* Rubro de la transacción de la comisión.
*/
private Integer rubro;

/**
* Concepto de la transacción de la comisión.
*/
private String cconcepto;

/**Contructor por defecto*/
public Ttariffparameter(){}
/**Contructor de Ttariffparameter
@param pPk Clave Primaria del entity
@param pPeriodocorte Periodo de corte. D = Diario, M = Mensual.
@param pTransaccionesdetalle Transacciones que determinan el número acumulado de movimientos.
@param pCsubsistema_comision Código de subsistema de la transacción de la comisión.
@param pCtransaccion_comision Código de transacción de comisión.
@param pVersiontransaccion_comision versión de la transacción de comisión.
@param pRubro Rubro de la transacción de la comisión.
*/
public Ttariffparameter(TtariffparameterKey pPk,String pPeriodocorte,String pTransaccionesdetalle,String pCsubsistema_comision,String pCtransaccion_comision,String pVersiontransaccion_comision,Integer pRubro){
 pk=pPk;
 periodocorte=pPeriodocorte;
 transaccionesdetalle=pTransaccionesdetalle;
 csubsistema_comision=pCsubsistema_comision;
 ctransaccion_comision=pCtransaccion_comision;
 versiontransaccion_comision=pVersiontransaccion_comision;
 rubro=pRubro;
}
/**Entrega la Clave primaria de Ttariffparameter
@return El objeto que referencia a la Clave primaria de Ttariffparameter
*/
public TtariffparameterKey getPk(){
  return pk;
}
/**Fija un nuevo valor a la Clave primaria de Ttariffparameter
@param pPk El objeto que referencia a la nueva Clave primaria de Ttariffparameter
*/
public void setPk(TtariffparameterKey pPk){
  pk=pPk;
}
public static final String PERIODOCORTE="PERIODOCORTE";
/**Obtiene el valor de periodocorte
@return valor de periodocorte*/
public String getPeriodocorte(){
  return periodocorte;
}
/**Fija el valor de periodocorte
@param pPeriodocorte nuevo Valor de periodocorte*/
public void setPeriodocorte(String pPeriodocorte){
  periodocorte=pPeriodocorte;
}

public static final String NUMEROMOVIMIENTOS="NUMEROMOVIMIENTOS";
/**Obtiene el valor de numeromovimientos
@return valor de numeromovimientos*/
public Integer getNumeromovimientos(){
  return numeromovimientos;
}
/**Fija el valor de numeromovimientos
@param pNumeromovimientos nuevo Valor de numeromovimientos*/
public void setNumeromovimientos(Integer pNumeromovimientos){
  numeromovimientos=pNumeromovimientos;
}

public static final String MONTOACUMULADO="MONTOACUMULADO";
/**Obtiene el valor de montoacumulado
@return valor de montoacumulado*/
public BigDecimal getMontoacumulado(){
  return montoacumulado;
}
/**Fija el valor de montoacumulado
@param pMontoacumulado nuevo Valor de montoacumulado*/
public void setMontoacumulado(BigDecimal pMontoacumulado){
  montoacumulado=pMontoacumulado;
}

public static final String TRANSACCIONESDETALLE="TRANSACCIONESDETALLE";
/**Obtiene el valor de transaccionesdetalle
@return valor de transaccionesdetalle*/
public String getTransaccionesdetalle(){
  return transaccionesdetalle;
}
/**Fija el valor de transaccionesdetalle
@param pTransaccionesdetalle nuevo Valor de transaccionesdetalle*/
public void setTransaccionesdetalle(String pTransaccionesdetalle){
  transaccionesdetalle=pTransaccionesdetalle;
}

public static final String CSUBSISTEMA_COMISION="CSUBSISTEMA_COMISION";
/**Obtiene el valor de csubsistema_comision
@return valor de csubsistema_comision*/
public String getCsubsistema_comision(){
  return csubsistema_comision;
}
/**Fija el valor de csubsistema_comision
@param pCsubsistema_comision nuevo Valor de csubsistema_comision*/
public void setCsubsistema_comision(String pCsubsistema_comision){
  csubsistema_comision=pCsubsistema_comision;
}

public static final String CTRANSACCION_COMISION="CTRANSACCION_COMISION";
/**Obtiene el valor de ctransaccion_comision
@return valor de ctransaccion_comision*/
public String getCtransaccion_comision(){
  return ctransaccion_comision;
}
/**Fija el valor de ctransaccion_comision
@param pCtransaccion_comision nuevo Valor de ctransaccion_comision*/
public void setCtransaccion_comision(String pCtransaccion_comision){
  ctransaccion_comision=pCtransaccion_comision;
}

public static final String VERSIONTRANSACCION_COMISION="VERSIONTRANSACCION_COMISION";
/**Obtiene el valor de versiontransaccion_comision
@return valor de versiontransaccion_comision*/
public String getVersiontransaccion_comision(){
  return versiontransaccion_comision;
}
/**Fija el valor de versiontransaccion_comision
@param pVersiontransaccion_comision nuevo Valor de versiontransaccion_comision*/
public void setVersiontransaccion_comision(String pVersiontransaccion_comision){
  versiontransaccion_comision=pVersiontransaccion_comision;
}

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 CCONCEPTO="CCONCEPTO";
/**Obtiene el valor de cconcepto
@return valor de cconcepto*/
public String getCconcepto(){
  return cconcepto;
}
/**Fija el valor de cconcepto
@param pCconcepto nuevo Valor de cconcepto*/
public void setCconcepto(String pCconcepto){
  cconcepto=pCconcepto;
}

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