for (Iterator itPeriodos = periodosConsiderados.iterator(); itPeriodos.hasNext();) {
AcompReferenciaAref acompReferencia = (AcompReferenciaAref) itPeriodos.next();
Iterator itItens = itensAcompanhamentos.iterator();
PosicaoBean posicaoBean = new PosicaoBean();
posicaoBean.setARef(acompReferencia);
List coresPosicoes = new ArrayList();
while(itItens.hasNext()) {
/*
* Este m�todo s� � usado para gera��o do gr�fico, ent�o n�o precisa da ordena��o dos itens.
* No m�todo que ordena os itens, � tratado se tipoAcompanhamento == null, o m�todo retorna
* a pr�pria lista de itens. Quando existe um tipoAcompanhamento, o m�todo retorna uma lista
* de AtributoEstruturaListagemItens.
*/
AtributoEstruturaListagemItens aeIett = (AtributoEstruturaListagemItens) itItens.next();
//ItemEstruturaIett item = (ItemEstruturaIett) itItens.next();
ItemEstruturaIett item = aeIett.getItem();
Map map = acompReferenciaItemDao.criarMapPeriodoAri(periodosConsiderados, item);
if(!map.containsKey(acompReferencia)){
//N�o foi solicitado acompanhamento
//coresPosicoes.add(Cor.NAO_ACOMPANHADO);
}
else {
AcompReferenciaItemAri ari = (AcompReferenciaItemAri) map.get(acompReferencia);
//entra se o ARI t� liberado ou se n�o exige liberar acompanhamento
if(ari.getStatusRelatorioSrl().equals(statusLiberado) || acompReferencia.getTipoAcompanhamentoTa().getIndLiberarAcompTa().equals(Pagina.NAO) ) {
List relatorios = acompReferenciaItemDao.getAcompRelatorioArelOrderByFuncaoAcomp(ari, tpfaOrdenadosEstrutura);
for (Iterator itRelatorios = relatorios.iterator(); itRelatorios.hasNext();) {
AcompRelatorioArel relatorio = (AcompRelatorioArel) itRelatorios.next();
if(relatorio.getTipoFuncAcompTpfa().getCodTpfa().toString().equals(tipoFuncAcompTpfa)) {
if(relatorio.getCor() != null && "S".equals(relatorio.getIndLiberadoArel())){
coresPosicoes.add(relatorio.getCor().getCodCor().toString());
}
else {
TipoAcompFuncAcompTafc tafc = new TipoAcompFuncAcompTafc();
TipoAcompFuncAcompDao tafcDao = new TipoAcompFuncAcompDao(request);
tafc = tafcDao.buscar(acompReferencia.getTipoAcompanhamentoTa().getCodTa(), relatorio.getTipoFuncAcompTpfa().getCodTpfa());
//Verifica se � obrigat�rio
if(tafc.getIndRegistroPosicaoTafc() != null && tafc.getIndRegistroPosicaoTafc().equals("O")){
coresPosicoes.add(Cor.BRANCO);
}
}
}
}
}
// Se Exige Liberar Acompanhamento
else {
List relatorios = acompReferenciaItemDao.getAcompRelatorioArelOrderByFuncaoAcomp(ari, tpfaOrdenadosEstrutura);
if(ari.getAcompRelatorioArels() != null && ari.getAcompRelatorioArels().size() > 0) {
for (Iterator itRelatorios = relatorios.iterator(); itRelatorios
.hasNext();) {
AcompRelatorioArel relatorio = (AcompRelatorioArel) itRelatorios.next();
if(relatorio.getTipoFuncAcompTpfa().getCodTpfa().toString().equals(tipoFuncAcompTpfa)) {
TipoAcompFuncAcompTafc tafc = new TipoAcompFuncAcompTafc();
TipoAcompFuncAcompDao tafcDao = new TipoAcompFuncAcompDao(request);
tafc = tafcDao.buscar(acompReferencia.getTipoAcompanhamentoTa().getCodTa(), relatorio.getTipoFuncAcompTpfa().getCodTpfa());
//Conta como n�o liberados apenas os pareceres obrigat�rios e n�o informados
if(tafc.getIndRegistroPosicaoTafc() != null && tafc.getIndRegistroPosicaoTafc().equals("O") &&
(relatorio.getIndLiberadoArel()==null ||
relatorio.getIndLiberadoArel().equals(Pagina.NAO)) ){
//N�o foi liberado acompanhamento
coresPosicoes.add(Cor.NAO_LIBERADO);
}
}
}
}
else {
//N�o foi solicitado acompanhamento
coresPosicoes.add(Cor.NAO_ACOMPANHADO);
}
}// fim else exije liberar
} //fim else solicitado acompanhamento
}// fim while
posicaoBean.setCor(coresPosicoes);
listAvaliacoes.add(posicaoBean);
}
return listAvaliacoes;