Erro - Relatório de Aproveitamento (fixes bug #6206)

Tempo: 2 horas

git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Web/trunk/ventaboletos@43420 d1611594-4594-4d17-8e1d-87c2c4800839
master
julio 2015-04-27 17:37:17 +00:00
parent 342bd42d0b
commit 18cf8ebd1b
1 changed files with 13 additions and 5 deletions

View File

@ -95,14 +95,22 @@ public class RelatorioAproveitamento extends Relatorio {
totalNominal = tarifa.multiply(totalOcupados); totalNominal = tarifa.multiply(totalOcupados);
BigDecimal arrecadadoKm = BigDecimal.ONE; BigDecimal arrecadadoKm = BigDecimal.ONE;
arrecadadoKm = totalArrecadado.divide(kmCorrida, 4, RoundingMode.HALF_EVEN);
BigDecimal nominalKmFinal = BigDecimal.ONE; BigDecimal nominalKmFinal = BigDecimal.ONE;
try {
arrecadadoKm = totalArrecadado.divide(kmCorrida, 4, RoundingMode.HALF_EVEN);
nominalKmFinal = totalNominal.divide(kmCorrida, 4, RoundingMode.HALF_EVEN); nominalKmFinal = totalNominal.divide(kmCorrida, 4, RoundingMode.HALF_EVEN);
ocupacao = ocupacao.divide(totalOcupados.multiply(kmCorrida), 4, RoundingMode.HALF_EVEN); ocupacao = ocupacao.divide(totalOcupados.multiply(kmCorrida), 4, RoundingMode.HALF_EVEN);
ocupacaoSemArrecadacao = ocupacaoSemArrecadacao.divide(totalOcupados.multiply(kmCorrida), 4, RoundingMode.HALF_EVEN); ocupacaoSemArrecadacao = ocupacaoSemArrecadacao.divide(totalOcupados.multiply(kmCorrida), 4, RoundingMode.HALF_EVEN);
ocupacaoArrecadacao = ocupacaoArrecadacao.divide(totalOcupados.multiply(kmCorrida), 4, RoundingMode.HALF_EVEN); ocupacaoArrecadacao = ocupacaoArrecadacao.divide(totalOcupados.multiply(kmCorrida), 4, RoundingMode.HALF_EVEN);
} catch (ArithmeticException e) {
arrecadadoKm = BigDecimal.ZERO;
nominalKmFinal = BigDecimal.ZERO;
ocupacao = BigDecimal.ZERO;
ocupacaoSemArrecadacao = BigDecimal.ZERO;
ocupacaoArrecadacao = BigDecimal.ZERO;
}
Locale locale = new Locale("pt", "BR"); Locale locale = new Locale("pt", "BR");
parametros.put("P_TOTAL_ARRECADADO", CurrencyUtil.getCurrencyBigDecimalFromStr(totalArrecadado, locale)); parametros.put("P_TOTAL_ARRECADADO", CurrencyUtil.getCurrencyBigDecimalFromStr(totalArrecadado, locale));
parametros.put("P_TOTAL_NOMINAL", CurrencyUtil.getCurrencyBigDecimalFromStr(totalNominal, locale)); parametros.put("P_TOTAL_NOMINAL", CurrencyUtil.getCurrencyBigDecimalFromStr(totalNominal, locale));