package gcom.gerencial.arrecadacao.bean; import java.math.BigDecimal; /** * Classe bean para agrupamento dos historicos * de consumo com as quebras solicitadas * * @author Ivan S�rgio * @date 16/05/2007 */ public class ResumoArrecadacaoOutrosHelper { private Integer idTipoFinanciamento; private Integer idLancamentoItemContabil; private BigDecimal valorDebitos = new BigDecimal(0); public ResumoArrecadacaoOutrosHelper(Integer idTipoFinanciamento, Integer idLancamentoItemContabil) { this.idTipoFinanciamento = idTipoFinanciamento; this.idLancamentoItemContabil = idLancamentoItemContabil; } public Integer getIdLancamentoItemContabil() { return idLancamentoItemContabil; } public void setIdLancamentoItemContabil(Integer idLancamentoItemContabil) { this.idLancamentoItemContabil = idLancamentoItemContabil; } public Integer getIdTipoFinanciamento() { return idTipoFinanciamento; } public void setIdTipoFinanciamento(Integer idTipoFinanciamento) { this.idTipoFinanciamento = idTipoFinanciamento; } public BigDecimal getValorDebitos() { return valorDebitos; } public void setValorDebitos(BigDecimal valorDebitos) { this.valorDebitos = valorDebitos; } /** * Compara duas properiedades inteiras, comparando * seus valores para descobrirmos se sao iguais * @param pro1 Primeira propriedade * @param pro2 Segunda propriedade * @return Se iguais, retorna true */ private boolean propriedadesIguais( Integer pro1, Integer pro2 ){ if ( pro2 != null ){ if ( !pro2.equals( pro1 ) ){ return false; } } else if ( pro1 != null ){ return false; } // Se chegou ate aqui quer dizer que as propriedades sao iguais return true; } /** * Compara dois objetos levando em consideracao apenas as propriedades * que identificam o agrupamento * * @param obj Objeto a ser comparado com a instancia deste objeto */ public boolean equals(Object obj){ if (!(obj instanceof ResumoArrecadacaoOutrosHelper)){ return false; } else { ResumoArrecadacaoOutrosHelper resumoTemp = (ResumoArrecadacaoOutrosHelper) obj; // Verificamos se todas as propriedades que identificam o objeto sao iguais return propriedadesIguais(this.idTipoFinanciamento, resumoTemp.idTipoFinanciamento) && propriedadesIguais(this.idLancamentoItemContabil, resumoTemp.idLancamentoItemContabil); } } }