* @return
* @throws ECARException
*/
private TelaExportacaoBean exportarMonitoramento(ConfiguracaoCfg configuracao, Map<EstruturaEtt,List<ItemEstruturaIett>> mapaItensEstruturaExportacao, Map<EstruturaEtt,List<AcompReferenciaItemAri>> mapaArisEstruturaExportacao, Date dataHoraGeracao, AcompReferenciaAref acompReferenciaAref, SegurancaECAR segurancaECAR) throws ECARException{
TelaExportacaoBean telaBean = new TelaExportacaoBean();
telaBean.setDataGeracao(dataHoraGeracao);
EstruturaDao estruturaDao = new EstruturaDao(null);
AbaDao abaDao = new AbaDao(null);
boolean possuiFuncaoConfigurada;
Set<EstruturaEtt> estruturas = mapaItensEstruturaExportacao.keySet();
for (EstruturaEtt estruturaCorrente : estruturas) {
List<ItemEstruturaIett> listaItens = mapaItensEstruturaExportacao.get(estruturaCorrente);
List<AcompReferenciaItemAri> listaAris = mapaArisEstruturaExportacao.get(estruturaCorrente);
//Inicio dos Dados Gerais
FuncaoFun funcaoDadosGerais = funDao.getFuncaoDadosGerais();
Aba abaDadosGerais = abaDao.buscarAba(ConstantesECAR.ABA_DADOS_GERAIS);
//abaDadosGerais.setNomeAba(abaDadosGerais.getFuncaoFun().getNomeFun());
//funcaoDadosGerais.setNomeFun(abaDadosGerais.getFuncaoFun().getNomeFun());
List<ObjetoEstrutura> colunas = estruturaDao.getAtributosEstruturaDadosGerais(estruturaCorrente);
Set listaFuncoes = estruturaCorrente.getEstruturaFuncaoEttfs();
Iterator itListaFuncoes = listaFuncoes.iterator();
possuiFuncaoConfigurada = false;
if(abaDadosGerais.getFuncaoFun() == null){
possuiFuncaoConfigurada = true;
} else{
while(itListaFuncoes.hasNext()){
EstruturaFuncaoEttf funcao = (EstruturaFuncaoEttf) itListaFuncoes.next();
if(abaDadosGerais.getFuncaoFun().getCodFun().equals(funcao.getFuncaoFun().getCodFun())){
possuiFuncaoConfigurada = true;
break;
}
}
}
ExportaFuncao exportaFuncaoDadosGerais = new ExportaFuncaoConfiguravelAtributoLivreDadosGerais();
CaminhoArquivoExportacaoBean caminho = exportaFuncaoDadosGerais.exportar(estruturaCorrente, listaItens, null, funcaoDadosGerais, configuracao,dataHoraGeracao,comunicacaoExportacao,colunas, segurancaECAR, acompReferenciaAref, abaDadosGerais);
if (caminho != null && possuiFuncaoConfigurada){
telaBean.adicionarCaminhoArquivo (caminho);
}
//Fim dos Dados Gerais
//Inicio das Meta indicadores
FuncaoFun funcaoMetasIndicadores = funDao.getFuncaoPorNome(FuncaoDao.NOME_FUNCAO_METAS_INDICADORES);
Aba abaMetasIndicadores = abaDao.buscarAba(ConstantesECAR.ABA_INDICADORES);
itListaFuncoes = listaFuncoes.iterator();
possuiFuncaoConfigurada = false;
if(abaMetasIndicadores.getFuncaoFun() == null){
possuiFuncaoConfigurada = true;
} else{
possuiFuncaoConfigurada = false;
while(itListaFuncoes.hasNext()){
EstruturaFuncaoEttf funcao = (EstruturaFuncaoEttf) itListaFuncoes.next();
if(abaMetasIndicadores.getFuncaoFun().getCodFun().equals(funcao.getFuncaoFun().getCodFun())){
possuiFuncaoConfigurada = true;
break;
}
}
}
CaminhoArquivoExportacaoBean caminhoMetasIndicadores = new ExportaIndicadoresRealizado().exportar(estruturaCorrente, listaItens, listaAris, funcaoMetasIndicadores, configuracao, dataHoraGeracao, comunicacaoExportacao, null, segurancaECAR, acompReferenciaAref, abaMetasIndicadores);
if (caminhoMetasIndicadores != null && possuiFuncaoConfigurada){
telaBean.adicionarCaminhoArquivo(caminhoMetasIndicadores);
}
//Fim das Meta indicadores
//Inicio Meta indicadores por Local
if (caminhoMetasIndicadores != null && possuiFuncaoConfigurada){
//FuncaoFun subFuncaoIndicadores = funDao.getFuncaoPorNome(FuncaoDao.NOME_FUNCAO_QUANTIDADES_PREVISTAS);
abaMetasIndicadores = abaDao.buscarAba(ConstantesECAR.ABA_INDICADORES);
ExportaFuncao exportaRealizadoLocal = new ExportaIndicadoresRealizadoPorLocal();
CaminhoArquivoExportacaoBean caminhoSubFuncaoRealizadoPorLocal = exportaRealizadoLocal.exportar(estruturaCorrente, listaItens, listaAris, null, configuracao, dataHoraGeracao, comunicacaoExportacao, null, segurancaECAR, acompReferenciaAref, abaMetasIndicadores);
if (caminhoSubFuncaoRealizadoPorLocal != null) {
telaBean.adicionarCaminhoArquivo (caminhoSubFuncaoRealizadoPorLocal);
}
}
//Fim Meta indicadores por Local
//Inicio Parecer
//Parecer n�o tem fun��o correspondente
Aba abaParecer = abaDao.buscarAba(ConstantesECAR.ABA_SITUACAO);
itListaFuncoes = listaFuncoes.iterator();
possuiFuncaoConfigurada = false;
if(abaParecer.getFuncaoFun() == null){
possuiFuncaoConfigurada = true;
} else{
possuiFuncaoConfigurada = false;
while(itListaFuncoes.hasNext()){
EstruturaFuncaoEttf funcao = (EstruturaFuncaoEttf) itListaFuncoes.next();
if(abaParecer.getFuncaoFun().getCodFun().equals(funcao.getFuncaoFun().getCodFun())){
possuiFuncaoConfigurada = true;
break;
}
}
}
CaminhoArquivoExportacaoBean caminhoParecer = new ExportarParecerMonitoramento().exportar(estruturaCorrente, listaItens, listaAris ,null, configuracao, dataHoraGeracao, comunicacaoExportacao, null, segurancaECAR, acompReferenciaAref, abaParecer);
if (caminhoParecer != null && possuiFuncaoConfigurada){
telaBean.adicionarCaminhoArquivo(caminhoParecer);
}
//Fim Parecer
//Inicio dos Pontos Criticos
FuncaoFun funcaoPontosCriticos = funDao.getFuncaoPontosCriticos();
Aba abaPontosCriticos = abaDao.buscarAba(ConstantesECAR.ABA_PONTOS_CRITICOS);
List<ObjetoEstrutura> colunasPontosCriticos = estruturaDao.getAtributosEstrutura(estruturaCorrente, funcaoPontosCriticos);
itListaFuncoes = listaFuncoes.iterator();
possuiFuncaoConfigurada = false;
if(abaPontosCriticos.getFuncaoFun() == null){
possuiFuncaoConfigurada = true;
} else{
possuiFuncaoConfigurada = false;
while(itListaFuncoes.hasNext()){
EstruturaFuncaoEttf funcao = (EstruturaFuncaoEttf) itListaFuncoes.next();
if(abaPontosCriticos.getFuncaoFun().getCodFun().equals(funcao.getFuncaoFun().getCodFun())){
possuiFuncaoConfigurada = true;
break;
}
}
}
ExportaFuncao exportaFuncaoPontosCriticos = new ExportaFuncaoConfiguravelAtributoLivrePontosCriticos();
CaminhoArquivoExportacaoBean caminhoPontoCritico = exportaFuncaoPontosCriticos.exportar(estruturaCorrente, listaItens, null, funcaoPontosCriticos, configuracao,dataHoraGeracao,comunicacaoExportacao,colunasPontosCriticos, segurancaECAR, acompReferenciaAref, abaPontosCriticos);
if (caminhoPontoCritico != null && possuiFuncaoConfigurada) {
telaBean.adicionarCaminhoArquivo(caminhoPontoCritico);
}
//Fim dos Pontos Criticos
//Inicio dos Apontamentos dos Pontos Criticos
if (caminhoPontoCritico != null && possuiFuncaoConfigurada) {
FuncaoFun subFuncaoApontamentos = funDao.getFuncaoPorNome(FuncaoDao.NOME_FUNCAO_APONTAMENTOS);
//A subfun��o de apontamentos n�o possui aba correspondente
ExportaFuncao exportaSubFuncaoApontamentos = new ExportaSubFuncaoApontamentos();
CaminhoArquivoExportacaoBean caminhoApontamentos = exportaSubFuncaoApontamentos.exportar(estruturaCorrente, listaItens, null, subFuncaoApontamentos, configuracao, dataHoraGeracao, comunicacaoExportacao, null, segurancaECAR, acompReferenciaAref, null);
if (caminhoApontamentos != null) {
telaBean.adicionarCaminhoArquivo (caminhoApontamentos);
}
}
//Fim dos Apontamentos dos Pontos Criticos
//Inicio dos Diarios de Bordos
FuncaoFun funcaoDiarioBordo = funDao.getFuncaoPorNome(FuncaoDao.NOME_FUNCAO_EVENTOS);
Aba abaDiarioBordo = abaDao.buscarAba(ConstantesECAR.ABA_EVENTOS);
itListaFuncoes = listaFuncoes.iterator();
possuiFuncaoConfigurada = false;
if(abaDiarioBordo.getFuncaoFun() == null){
possuiFuncaoConfigurada = true;
} else{
possuiFuncaoConfigurada = false;
while(itListaFuncoes.hasNext()){
EstruturaFuncaoEttf funcao = (EstruturaFuncaoEttf) itListaFuncoes.next();
if(abaDiarioBordo.getFuncaoFun().getCodFun().equals(funcao.getFuncaoFun().getCodFun())){
possuiFuncaoConfigurada = true;
break;
}
}
}
CaminhoArquivoExportacaoBean caminhoDiarioBordo = new ExportaFuncaoItemEstrutAcaoIetta().exportar(estruturaCorrente, listaItens, null, funcaoDiarioBordo, configuracao,dataHoraGeracao,comunicacaoExportacao,null, segurancaECAR, acompReferenciaAref, abaDiarioBordo);
if (caminhoDiarioBordo != null && possuiFuncaoConfigurada){
telaBean.adicionarCaminhoArquivo(caminhoDiarioBordo);
}
//Fim dos Diarios de Bordos
}
return telaBean;
}