package com.fitbank.hb.persistence.person;

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 TCALIFICACIONCREDITOPERSONA*/
public class Tpersonratingcredit extends AbstractExpire  implements Serializable,TransportBean,Cloneable{
/** Nombre de la Tabla TCALIFICACIONCREDITOPERSONA */
public static final String TABLE_NAME = "TCALIFICACIONCREDITOPERSONA";
/** HashCode asociado con la Instancia*/
private int hashValue = 0;
/** Version de la Clase*/
private static final long serialVersionUID = 1L;
/**
* Clave primaria de la Entidad Tpersonratingcredit
*/
private TpersonratingcreditKey pk;
/**
* Manejo de optimistic locking.
*/
private Integer versioncontrol;

/**
* Fecha desde la que esta vigente el registro de la calificacion de credito
*/
private Timestamp fdesde;

/**
* Monto para el cual se realiza la calificacion de credito
*/
private BigDecimal monto;

/**
* Plazo para el cual se realiza la calificacion de credito
*/
private Integer plazo;

/**
* Tasa para la cual se realiza la calificacion de credito
*/
private BigDecimal tasa;

/**
* Codigo de frecuencia para la cual se realiza la calificacion de credito
*/
private Integer cfrecuencia;

/**
* Numero de cuotas para los cuales se realiza la calificacion
*/
private Integer numerocuotas;

/**
* Puntos de la calificacion empirica del solicitante
*/
private Integer puntuacionempirica;

/**
* Porcentaje de ajuste de la puntuacion empirica del solicitante
*/
private BigDecimal porcentajeajuste;

/**
* Puntos de la calificacion empirica del conyuge del solicitante
*/
private Integer puntuacionempiricaconyuge;

/**
* Porcentaje de ajuste de la puntuacion empirica del conyuge del solicitante
*/
private BigDecimal porcentajeajusteconyuge;

/**
* Porcentaje de la capacidad de pago
*/
private BigDecimal porcentajecapacidadpago;

/**
* Peso de la calificacion empirica dado por la escala de la capacidad de pago
*/
private BigDecimal pesocalificacionempirica;

/**
* Suma del porcentaje de la capacidad de pago mas el peso de premio o castigo de la calificacion empirica
*/
private BigDecimal capacidadpagoajustada;

/**
* Limite de la capacidad de pago de acuerdo al producto de la solicitud
*/
private BigDecimal limitecapacidadpago;

/**
* Marca si el credito es E=excelente, B= bueno, R=regular o C=critico
*/
private String categoriacredito;

/**
* Valor sugerido para tarjeta de credito a sugerir
*/
private BigDecimal valorsugeridotarjetacredito;

/**
* Califica al credito como excelente o no si no se ha vencido en los pagos del informe de credito
*/
private String creditoexcelente;

/**
* Puntuacion empirica total
*/
private Integer totalpuntuacionempirica;

/**
* Marca si el solicitante tiene conyuge o no
*/
private String tieneconyuge;

/**
* Marca si el solicitante registra calificacion de credito o no
*/
private String tienecalificacion;

/**
* Marca si el conyuge del solicitante registra calificacion de credito o no
*/
private String tienecalificacionconyuge;

/**
* Marca si la persona califica o no para el seguro de incapacidad individual
*/
private String calificaseguroincapacidad;

/**
* Marca si la persona califica o no para el seguro de vida individual
*/
private String calificasegurovida;

/**
* Marca si la calificacion fue aprobada o no
*/
private String aprobado;

/**
* Comentarios sobre la calificacion de cedito
*/
private String comentarios;

/**
* Marca si la calificacion aplica para tarjeta de credito o no
*/
private String aplicatarjetacredito;

/**
* Marca si la persona es principal o no
*/
private String personaprincipal;

/**
* Codigo del usuario que ingresa la calificacion de credito de la persona
*/
private String cusuario;

/**
* Codigo del destino de fondos de credito
*/
private String cdestinofondos;

/**
* Monto comercial del bien a adquirir
*/
private BigDecimal montocomercial;

/**
* Monto del bien a adquirir
*/
private BigDecimal montobien;

/**
* Anios de uso del bien a adquirir
*/
private Integer aniosuso;

/**Contructor por defecto*/
public Tpersonratingcredit(){}
/**Contructor de Tpersonratingcredit
@param pPk Clave Primaria del entity
@param pFdesde Fecha desde la que esta vigente el registro de la calificacion de credito
*/
public Tpersonratingcredit(TpersonratingcreditKey pPk,Timestamp pFdesde){
 pk=pPk;
 fdesde=pFdesde;
}
/**Entrega la Clave primaria de Tpersonratingcredit
@return El objeto que referencia a la Clave primaria de Tpersonratingcredit
*/
public TpersonratingcreditKey getPk(){
  return pk;
}
/**Fija un nuevo valor a la Clave primaria de Tpersonratingcredit
@param pPk El objeto que referencia a la nueva Clave primaria de Tpersonratingcredit
*/
public void setPk(TpersonratingcreditKey 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 MONTO="MONTO";
/**Obtiene el valor de monto
@return valor de monto*/
public BigDecimal getMonto(){
  return monto;
}
/**Fija el valor de monto
@param pMonto nuevo Valor de monto*/
public void setMonto(BigDecimal pMonto){
  monto=pMonto;
}

public static final String PLAZO="PLAZO";
/**Obtiene el valor de plazo
@return valor de plazo*/
public Integer getPlazo(){
  return plazo;
}
/**Fija el valor de plazo
@param pPlazo nuevo Valor de plazo*/
public void setPlazo(Integer pPlazo){
  plazo=pPlazo;
}

public static final String TASA="TASA";
/**Obtiene el valor de tasa
@return valor de tasa*/
public BigDecimal getTasa(){
  return tasa;
}
/**Fija el valor de tasa
@param pTasa nuevo Valor de tasa*/
public void setTasa(BigDecimal pTasa){
  tasa=pTasa;
}

public static final String CFRECUENCIA="CFRECUENCIA";
/**Obtiene el valor de cfrecuencia
@return valor de cfrecuencia*/
public Integer getCfrecuencia(){
  return cfrecuencia;
}
/**Fija el valor de cfrecuencia
@param pCfrecuencia nuevo Valor de cfrecuencia*/
public void setCfrecuencia(Integer pCfrecuencia){
  cfrecuencia=pCfrecuencia;
}

public static final String NUMEROCUOTAS="NUMEROCUOTAS";
/**Obtiene el valor de numerocuotas
@return valor de numerocuotas*/
public Integer getNumerocuotas(){
  return numerocuotas;
}
/**Fija el valor de numerocuotas
@param pNumerocuotas nuevo Valor de numerocuotas*/
public void setNumerocuotas(Integer pNumerocuotas){
  numerocuotas=pNumerocuotas;
}

public static final String PUNTUACIONEMPIRICA="PUNTUACIONEMPIRICA";
/**Obtiene el valor de puntuacionempirica
@return valor de puntuacionempirica*/
public Integer getPuntuacionempirica(){
  return puntuacionempirica;
}
/**Fija el valor de puntuacionempirica
@param pPuntuacionempirica nuevo Valor de puntuacionempirica*/
public void setPuntuacionempirica(Integer pPuntuacionempirica){
  puntuacionempirica=pPuntuacionempirica;
}

public static final String PORCENTAJEAJUSTE="PORCENTAJEAJUSTE";
/**Obtiene el valor de porcentajeajuste
@return valor de porcentajeajuste*/
public BigDecimal getPorcentajeajuste(){
  return porcentajeajuste;
}
/**Fija el valor de porcentajeajuste
@param pPorcentajeajuste nuevo Valor de porcentajeajuste*/
public void setPorcentajeajuste(BigDecimal pPorcentajeajuste){
  porcentajeajuste=pPorcentajeajuste;
}

public static final String PUNTUACIONEMPIRICACONYUGE="PUNTUACIONEMPIRICACONYUGE";
/**Obtiene el valor de puntuacionempiricaconyuge
@return valor de puntuacionempiricaconyuge*/
public Integer getPuntuacionempiricaconyuge(){
  return puntuacionempiricaconyuge;
}
/**Fija el valor de puntuacionempiricaconyuge
@param pPuntuacionempiricaconyuge nuevo Valor de puntuacionempiricaconyuge*/
public void setPuntuacionempiricaconyuge(Integer pPuntuacionempiricaconyuge){
  puntuacionempiricaconyuge=pPuntuacionempiricaconyuge;
}

public static final String PORCENTAJEAJUSTECONYUGE="PORCENTAJEAJUSTECONYUGE";
/**Obtiene el valor de porcentajeajusteconyuge
@return valor de porcentajeajusteconyuge*/
public BigDecimal getPorcentajeajusteconyuge(){
  return porcentajeajusteconyuge;
}
/**Fija el valor de porcentajeajusteconyuge
@param pPorcentajeajusteconyuge nuevo Valor de porcentajeajusteconyuge*/
public void setPorcentajeajusteconyuge(BigDecimal pPorcentajeajusteconyuge){
  porcentajeajusteconyuge=pPorcentajeajusteconyuge;
}

public static final String PORCENTAJECAPACIDADPAGO="PORCENTAJECAPACIDADPAGO";
/**Obtiene el valor de porcentajecapacidadpago
@return valor de porcentajecapacidadpago*/
public BigDecimal getPorcentajecapacidadpago(){
  return porcentajecapacidadpago;
}
/**Fija el valor de porcentajecapacidadpago
@param pPorcentajecapacidadpago nuevo Valor de porcentajecapacidadpago*/
public void setPorcentajecapacidadpago(BigDecimal pPorcentajecapacidadpago){
  porcentajecapacidadpago=pPorcentajecapacidadpago;
}

public static final String PESOCALIFICACIONEMPIRICA="PESOCALIFICACIONEMPIRICA";
/**Obtiene el valor de pesocalificacionempirica
@return valor de pesocalificacionempirica*/
public BigDecimal getPesocalificacionempirica(){
  return pesocalificacionempirica;
}
/**Fija el valor de pesocalificacionempirica
@param pPesocalificacionempirica nuevo Valor de pesocalificacionempirica*/
public void setPesocalificacionempirica(BigDecimal pPesocalificacionempirica){
  pesocalificacionempirica=pPesocalificacionempirica;
}

public static final String CAPACIDADPAGOAJUSTADA="CAPACIDADPAGOAJUSTADA";
/**Obtiene el valor de capacidadpagoajustada
@return valor de capacidadpagoajustada*/
public BigDecimal getCapacidadpagoajustada(){
  return capacidadpagoajustada;
}
/**Fija el valor de capacidadpagoajustada
@param pCapacidadpagoajustada nuevo Valor de capacidadpagoajustada*/
public void setCapacidadpagoajustada(BigDecimal pCapacidadpagoajustada){
  capacidadpagoajustada=pCapacidadpagoajustada;
}

public static final String LIMITECAPACIDADPAGO="LIMITECAPACIDADPAGO";
/**Obtiene el valor de limitecapacidadpago
@return valor de limitecapacidadpago*/
public BigDecimal getLimitecapacidadpago(){
  return limitecapacidadpago;
}
/**Fija el valor de limitecapacidadpago
@param pLimitecapacidadpago nuevo Valor de limitecapacidadpago*/
public void setLimitecapacidadpago(BigDecimal pLimitecapacidadpago){
  limitecapacidadpago=pLimitecapacidadpago;
}

public static final String CATEGORIACREDITO="CATEGORIACREDITO";
/**Obtiene el valor de categoriacredito
@return valor de categoriacredito*/
public String getCategoriacredito(){
  return categoriacredito;
}
/**Fija el valor de categoriacredito
@param pCategoriacredito nuevo Valor de categoriacredito*/
public void setCategoriacredito(String pCategoriacredito){
  categoriacredito=pCategoriacredito;
}

public static final String VALORSUGERIDOTARJETACREDITO="VALORSUGERIDOTARJETACREDITO";
/**Obtiene el valor de valorsugeridotarjetacredito
@return valor de valorsugeridotarjetacredito*/
public BigDecimal getValorsugeridotarjetacredito(){
  return valorsugeridotarjetacredito;
}
/**Fija el valor de valorsugeridotarjetacredito
@param pValorsugeridotarjetacredito nuevo Valor de valorsugeridotarjetacredito*/
public void setValorsugeridotarjetacredito(BigDecimal pValorsugeridotarjetacredito){
  valorsugeridotarjetacredito=pValorsugeridotarjetacredito;
}

public static final String CREDITOEXCELENTE="CREDITOEXCELENTE";
/**Obtiene el valor de creditoexcelente
@return valor de creditoexcelente*/
public String getCreditoexcelente(){
  return creditoexcelente;
}
/**Fija el valor de creditoexcelente
@param pCreditoexcelente nuevo Valor de creditoexcelente*/
public void setCreditoexcelente(String pCreditoexcelente){
  creditoexcelente=pCreditoexcelente;
}

public static final String TOTALPUNTUACIONEMPIRICA="TOTALPUNTUACIONEMPIRICA";
/**Obtiene el valor de totalpuntuacionempirica
@return valor de totalpuntuacionempirica*/
public Integer getTotalpuntuacionempirica(){
  return totalpuntuacionempirica;
}
/**Fija el valor de totalpuntuacionempirica
@param pTotalpuntuacionempirica nuevo Valor de totalpuntuacionempirica*/
public void setTotalpuntuacionempirica(Integer pTotalpuntuacionempirica){
  totalpuntuacionempirica=pTotalpuntuacionempirica;
}

public static final String TIENECONYUGE="TIENECONYUGE";
/**Obtiene el valor de tieneconyuge
@return valor de tieneconyuge*/
public String getTieneconyuge(){
  return tieneconyuge;
}
/**Fija el valor de tieneconyuge
@param pTieneconyuge nuevo Valor de tieneconyuge*/
public void setTieneconyuge(String pTieneconyuge){
  tieneconyuge=pTieneconyuge;
}

public static final String TIENECALIFICACION="TIENECALIFICACION";
/**Obtiene el valor de tienecalificacion
@return valor de tienecalificacion*/
public String getTienecalificacion(){
  return tienecalificacion;
}
/**Fija el valor de tienecalificacion
@param pTienecalificacion nuevo Valor de tienecalificacion*/
public void setTienecalificacion(String pTienecalificacion){
  tienecalificacion=pTienecalificacion;
}

public static final String TIENECALIFICACIONCONYUGE="TIENECALIFICACIONCONYUGE";
/**Obtiene el valor de tienecalificacionconyuge
@return valor de tienecalificacionconyuge*/
public String getTienecalificacionconyuge(){
  return tienecalificacionconyuge;
}
/**Fija el valor de tienecalificacionconyuge
@param pTienecalificacionconyuge nuevo Valor de tienecalificacionconyuge*/
public void setTienecalificacionconyuge(String pTienecalificacionconyuge){
  tienecalificacionconyuge=pTienecalificacionconyuge;
}

public static final String CALIFICASEGUROINCAPACIDAD="CALIFICASEGUROINCAPACIDAD";
/**Obtiene el valor de calificaseguroincapacidad
@return valor de calificaseguroincapacidad*/
public String getCalificaseguroincapacidad(){
  return calificaseguroincapacidad;
}
/**Fija el valor de calificaseguroincapacidad
@param pCalificaseguroincapacidad nuevo Valor de calificaseguroincapacidad*/
public void setCalificaseguroincapacidad(String pCalificaseguroincapacidad){
  calificaseguroincapacidad=pCalificaseguroincapacidad;
}

public static final String CALIFICASEGUROVIDA="CALIFICASEGUROVIDA";
/**Obtiene el valor de calificasegurovida
@return valor de calificasegurovida*/
public String getCalificasegurovida(){
  return calificasegurovida;
}
/**Fija el valor de calificasegurovida
@param pCalificasegurovida nuevo Valor de calificasegurovida*/
public void setCalificasegurovida(String pCalificasegurovida){
  calificasegurovida=pCalificasegurovida;
}

public static final String APROBADO="APROBADO";
/**Obtiene el valor de aprobado
@return valor de aprobado*/
public String getAprobado(){
  return aprobado;
}
/**Fija el valor de aprobado
@param pAprobado nuevo Valor de aprobado*/
public void setAprobado(String pAprobado){
  aprobado=pAprobado;
}

public static final String COMENTARIOS="COMENTARIOS";
/**Obtiene el valor de comentarios
@return valor de comentarios*/
public String getComentarios(){
  return comentarios;
}
/**Fija el valor de comentarios
@param pComentarios nuevo Valor de comentarios*/
public void setComentarios(String pComentarios){
  comentarios=pComentarios;
}

public static final String APLICATARJETACREDITO="APLICATARJETACREDITO";
/**Obtiene el valor de aplicatarjetacredito
@return valor de aplicatarjetacredito*/
public String getAplicatarjetacredito(){
  return aplicatarjetacredito;
}
/**Fija el valor de aplicatarjetacredito
@param pAplicatarjetacredito nuevo Valor de aplicatarjetacredito*/
public void setAplicatarjetacredito(String pAplicatarjetacredito){
  aplicatarjetacredito=pAplicatarjetacredito;
}

public static final String PERSONAPRINCIPAL="PERSONAPRINCIPAL";
/**Obtiene el valor de personaprincipal
@return valor de personaprincipal*/
public String getPersonaprincipal(){
  return personaprincipal;
}
/**Fija el valor de personaprincipal
@param pPersonaprincipal nuevo Valor de personaprincipal*/
public void setPersonaprincipal(String pPersonaprincipal){
  personaprincipal=pPersonaprincipal;
}

public static final String CUSUARIO="CUSUARIO";
/**Obtiene el valor de cusuario
@return valor de cusuario*/
public String getCusuario(){
  return cusuario;
}
/**Fija el valor de cusuario
@param pCusuario nuevo Valor de cusuario*/
public void setCusuario(String pCusuario){
  cusuario=pCusuario;
}

public static final String CDESTINOFONDOS="CDESTINOFONDOS";
/**Obtiene el valor de cdestinofondos
@return valor de cdestinofondos*/
public String getCdestinofondos(){
  return cdestinofondos;
}
/**Fija el valor de cdestinofondos
@param pCdestinofondos nuevo Valor de cdestinofondos*/
public void setCdestinofondos(String pCdestinofondos){
  cdestinofondos=pCdestinofondos;
}

public static final String MONTOCOMERCIAL="MONTOCOMERCIAL";
/**Obtiene el valor de montocomercial
@return valor de montocomercial*/
public BigDecimal getMontocomercial(){
  return montocomercial;
}
/**Fija el valor de montocomercial
@param pMontocomercial nuevo Valor de montocomercial*/
public void setMontocomercial(BigDecimal pMontocomercial){
  montocomercial=pMontocomercial;
}

public static final String MONTOBIEN="MONTOBIEN";
/**Obtiene el valor de montobien
@return valor de montobien*/
public BigDecimal getMontobien(){
  return montobien;
}
/**Fija el valor de montobien
@param pMontobien nuevo Valor de montobien*/
public void setMontobien(BigDecimal pMontobien){
  montobien=pMontobien;
}

public static final String ANIOSUSO="ANIOSUSO";
/**Obtiene el valor de aniosuso
@return valor de aniosuso*/
public Integer getAniosuso(){
  return aniosuso;
}
/**Fija el valor de aniosuso
@param pAniosuso nuevo Valor de aniosuso*/
public void setAniosuso(Integer pAniosuso){
  aniosuso=pAniosuso;
}

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