long codIettir = Long.valueOf(Pagina.getParamStr(request, "codIettir"));
long codExe = Long.valueOf(Pagina.getParamStr(request, "codExe"));
AcompanhamentoItemEstrutura acompanhamento = new AcompanhamentoItemEstrutura(codAri);
IndicadorResultado indicador = new IndicadorResultado(codIettir);
Exercicio exercicio = new Exercicio(codExe);
List<EcarData> meses = null;
List<EcarData> mesesExercicio = exercicio.getMeses();
EcarData dataInicioItem = new EcarData(indicador.getItemEstrutura().getDataInicial());
EcarData dataFimItem = new EcarData(indicador.getItemEstrutura().getDataFinal());
meses = new ArrayList<EcarData>();
//pega os meses do item somente
for(EcarData data: mesesExercicio){
if(EcarData.pertenceAoIntervalo(data, dataInicioItem, dataFimItem)){
meses.add(new EcarData(data.getMes(), data.getAno()));
}
}
if(indicador.hasLabelGrupo()){
//pega o indicadores do grupo
List<IndicadorResultado> indicadoresDoGrupo = indicador.getIndicadoresDoGrupo();
for(IndicadorResultado indGrupo: indicadoresDoGrupo){
for(EcarData mes: meses){
double value = 0;
Previsto p = indGrupo.getPrevistoMensal(mes);
if( p != null ) value = p.getValorPrevisto();
dataset.addValue(value, indGrupo.getNome().concat(" (Previsto)"), mes.getDataFormatada());
Realizado r = indGrupo.getRealizadoMensal(mes);
double valor = (r == null)? 0 : r.getRealizado();
dataset.addValue(valor, indGrupo.getNome().concat(" (Realizado)"), mes.getDataFormatada());
}
}
}else{
for(EcarData mes: meses){
double value = 0;
Previsto p = indicador.getPrevistoMensal(mes);
if( p != null ) value = p.getValorPrevisto();
dataset.addValue(value, PREVISTO, mes.getDataFormatada());
Realizado r = indicador.getRealizadoMensal(mes);
double valor = (r == null)? 0 : r.getRealizado();
dataset.addValue(valor, REALIZADO, mes.getDataFormatada());
}
}
}else{
Exercicio exe = null;
try{
exe = new Exercicio(Long.valueOf(Pagina.getParamStr(request, "codExe")));
}catch(Exception e){
exe = null;
}
if(exe != null) serie = exe.getDescricao();
dataset.addValue(0, "Realizado", serie);
}
return dataset;