/** * O método cria os parametros necessários a geração do relatorio. * * @since 06/10/2009 * @author Marlon Patrick */ private Map<String, Object> criarParametros() { FiltrarRelatorioAnormalidadeLeituraPeriodoHelper filtro = (FiltrarRelatorioAnormalidadeLeituraPeriodoHelper) getParametro("filtroRelatorio"); FiltroLeituraAnormalidade filtroConsumoAnormalidade = new FiltroLeituraAnormalidade(); filtroConsumoAnormalidade.adicionarParametro( new ParametroSimples(FiltroLeituraAnormalidade.ID, filtro.getAnormalidadeLeitura())); filtroConsumoAnormalidade.adicionarParametro( new ParametroSimples( FiltroLeituraAnormalidade.INDICADOR_USO, ConstantesSistema.INDICADOR_USO_ATIVO)); Collection<LeituraAnormalidade> colecaoAnormalidadeleitura = Fachada.getInstancia() .pesquisar(filtroConsumoAnormalidade, LeituraAnormalidade.class.getName()); LeituraAnormalidade anormalidade = colecaoAnormalidadeleitura.iterator().next(); Map<String, Object> parametros = new HashMap<String, Object>(); parametros.put( "imagem", Fachada.getInstancia().pesquisarParametrosDoSistema().getImagemRelatorio()); parametros.put( "filtroPeriodoLeitura", Util.formatarAnoMesParaMesAno(filtro.getAnoMesReferenciaInicial()) + " - " + Util.formatarAnoMesParaMesAno(filtro.getAnoMesReferenciaFinal())); parametros.put( "filtroAnormalidade", anormalidade.getId() + " - " + anormalidade.getDescricao()); return parametros; }
/** * [UC0146ManterConta] - Manter Conta * * <p>Metodo verifica se existe contas já pagas nas contas que serão canceladas. Em caso * afirmativo, apresenta todos os meses de referencia das contas para informar ao usuário. * * @author bruno * @date 06/05/2009 * @param String[]: Vetor com todos os id's das contas * @param request: Onde se serão informados os parametros para geração da página * @param actionMapping: Necessário para geração da página * @return Object[3] * <p>Object[0]: ActionFoward com a tela a ser mostrada Object[1]: Se o usuário confimou ou * não a inserção do novo ra Object[2]: Se será redirecionado ao usuário perguntando se as * contas terão os cnta_id removidos dos pagamentos. */ private Object[] validarContasCanceladasPagasRA( String[] idsContas, HttpServletRequest request, ActionMapping actionMapping) { Object[] retorno = new Object[3]; // Verificamos se ja foi confimado... retorno[1] = (request.getParameter("confirmado") != null ? request.getParameter("confirmado").equals("ok") : null); retorno[2] = new Boolean(Boolean.FALSE); if (retorno[1] == null) { Fachada fachada = Fachada.getInstancia(); Collection<String> colContasPagas = new ArrayList(); for (int i = 0; i < idsContas.length; i++) { String dadosConta = idsContas[i]; String id = dadosConta.split("-")[0]; FiltroPagamento filtro = new FiltroPagamento(); filtro.adicionarParametro( new ParametroSimples(FiltroPagamento.CONTA_ID, Integer.valueOf(id))); Collection<Pagamento> colPagamento = fachada.pesquisar(filtro, Pagamento.class.getName()); Pagamento pagamento = (Pagamento) Util.retonarObjetoDeColecao(colPagamento); if (pagamento != null) { if (colContasPagas.size() == 0) { colContasPagas.add( Util.formatarAnoMesParaMesAno(pagamento.getAnoMesReferenciaPagamento())); } else { colContasPagas.add( ", " + Util.formatarAnoMesParaMesAno(pagamento.getAnoMesReferenciaPagamento())); } } } if (colContasPagas.size() > 0) { String[] arrayIdsContas = new String[colContasPagas.size()]; System.arraycopy(colContasPagas.toArray(), 0, arrayIdsContas, 0, arrayIdsContas.length); request.setAttribute("caminhoActionConclusao", "/gsan/cancelarContaAction.do"); request.setAttribute("cancelamento", "TRUE"); request.setAttribute("nomeBotao1", "Sim"); request.setAttribute("nomeBotao2", "Não"); retorno[0] = montarPaginaConfirmacao( "atencao.contas_cancelamento_pagas", request, actionMapping, arrayIdsContas); retorno[2] = new Boolean(Boolean.TRUE); } return retorno; } retorno[0] = actionMapping.findForward("telaSucesso"); return retorno; }
/** * < <Descrição do método>> * * @param bairros Description of the Parameter * @param bairroParametros Description of the Parameter * @return Descrição do retorno * @exception RelatorioVazioException Descrição da exceção */ public Object executar() throws TarefaException { // ------------------------------------ Integer idFuncionalidadeIniciada = this.getIdFuncionalidadeIniciada(); // ------------------------------------ Integer idGerenciaRegional = (Integer) getParametro("idGerenciaRegional"); Integer idUnidadeNegocio = (Integer) getParametro("idUnidadeNegocio"); Integer idLocalidadeInicial = (Integer) getParametro("idLocalidadeInicial"); Integer idLocalidadeFinal = (Integer) getParametro("idLocalidadeFinal"); Integer idSetorComercialInicial = (Integer) getParametro("idSetorComercialInicial"); Integer idSetorComercialFinal = (Integer) getParametro("idSetorComercialFinal"); Integer idImovel = (Integer) getParametro("idImovelPerfil"); Integer selecionar = (Integer) getParametro("selecionar"); Integer referencia = (Integer) getParametro("referencia"); Integer idImovelPerfil = (Integer) getParametro("idImovelPerfil"); int tipoFormatoRelatorio = (Integer) getParametro("tipoFormatoRelatorio"); // valor de retorno byte[] retorno = null; // coleção de beans do relatório List relatorioBeans = new ArrayList(); Fachada fachada = Fachada.getInstancia(); RelatorioAnaliseImovelCorporativoGrandeBean relatorioBean = null; Collection colecaoRelatorioAnaliseImovelCorporativoGrandeHelper = fachada.pesquisarDadosRelatorioAnaliseImovelCorporativoGrande( idGerenciaRegional, idUnidadeNegocio, idLocalidadeInicial, idLocalidadeFinal, idSetorComercialInicial, idSetorComercialFinal, referencia, idImovel, selecionar); // se a coleção de parâmetros da analise não for vazia if (colecaoRelatorioAnaliseImovelCorporativoGrandeHelper != null && !colecaoRelatorioAnaliseImovelCorporativoGrandeHelper.isEmpty()) { // coloca a coleção de parâmetros da analise no iterator Iterator colecaoRelatorioAnaliseImovelCorporativoGrandeHelperIterator = colecaoRelatorioAnaliseImovelCorporativoGrandeHelper.iterator(); // laço para criar a coleção de parâmetros da analise while (colecaoRelatorioAnaliseImovelCorporativoGrandeHelperIterator.hasNext()) { GerarRelatorioAnaliseImovelCorporativoGrandeHelper helper = (GerarRelatorioAnaliseImovelCorporativoGrandeHelper) colecaoRelatorioAnaliseImovelCorporativoGrandeHelperIterator.next(); // Faz as validações dos campos necessáriose e formata a String // para a forma como irá aparecer no relatório // Gerência Regional String gerenciaRegional = ""; if (helper.getIdGerenciaRegional() != null) { gerenciaRegional = helper.getIdGerenciaRegional() + " - " + helper.getNomeGerenciaRegional(); } // Unidade de Negócio String unidadeNegocio = ""; if (helper.getIdUnidadeNegocio() != null) { unidadeNegocio = helper.getIdUnidadeNegocio() + " - " + helper.getNomeUnidadeNegocio(); } // Localidade String localidade = ""; if (helper.getIdLocalidade() != null) { localidade = helper.getIdLocalidade() + " - " + helper.getNomeLocalidade(); } // Setor Comercial String setorComercial = ""; String idSetorComercial = ""; if (helper.getIdSetorComercial() != null) { setorComercial = helper.getCodigoSetorComercial().toString(); idSetorComercial = helper.getIdSetorComercial().toString(); } // Imóvel, Endereço e Categoria String matriculaImovel = ""; String endereco = ""; String inscricao = ""; if (helper.getIdImovel() != null) { matriculaImovel = helper.getIdImovel().toString(); Imovel imovel = new Imovel(); imovel.setId(helper.getIdImovel()); endereco = fachada.pesquisarEndereco(helper.getIdImovel()); inscricao = fachada.pesquisarInscricaoImovel(helper.getIdImovel()); } // Capacidade do Hidrômetro String capacidadeHidrometro = ""; if (helper.getCapacidadeHidrometro() != null) { capacidadeHidrometro = helper.getCapacidadeHidrometro(); } String consumoMedio = ""; if (helper.getConsumoMedio() != null) { consumoMedio = helper.getConsumoMedio().toString(); } String consumoFaturado = ""; if (helper.getConsumoFaturado() != null) { consumoFaturado = helper.getConsumoFaturado().toString(); } String tipoLigacao = ""; if (helper.getIdTipoLigacao() != null) { if (helper.getIdTipoLigacao().equals(1)) { tipoLigacao = "ÁGUA"; } else { tipoLigacao = "ESGOTO"; } } relatorioBean = new RelatorioAnaliseImovelCorporativoGrandeBean( // Unidade de Negócio unidadeNegocio, // Gerência Regional gerenciaRegional, // Localidade localidade, // Id do Setor Comercial idSetorComercial, // Setor Comercial setorComercial, // Inscrição inscricao, // Imóvel matriculaImovel, // Endereço endereco, // Capacidade do Hidrômetro capacidadeHidrometro, // Consumo Médio consumoMedio, // Consumo Faturado consumoFaturado, // Tipo de ligação tipoLigacao); // adiciona o bean a coleção relatorioBeans.add(relatorioBean); } } // __________________________________________________________________ // Parâmetros do relatório Map parametros = new HashMap(); // adiciona os parâmetros do relatório // adiciona o laudo da análise SistemaParametro sistemaParametro = fachada.pesquisarParametrosDoSistema(); parametros.put("imagem", sistemaParametro.getImagemRelatorio()); parametros.put("mesAno", Util.formatarAnoMesParaMesAno(referencia)); if (idUnidadeNegocio != null) { FiltroUnidadeNegocio filtroUnidadeNegocio = new FiltroUnidadeNegocio(); filtroUnidadeNegocio.adicionarParametro( new ParametroSimples(FiltroUnidadeNegocio.ID, idUnidadeNegocio)); Collection colecaoUnidadeNegocio = fachada.pesquisar(filtroUnidadeNegocio, UnidadeNegocio.class.getName()); UnidadeNegocio unidadeNegocio = (UnidadeNegocio) Util.retonarObjetoDeColecao(colecaoUnidadeNegocio); parametros.put( "unidadeNegocio", unidadeNegocio.getNomeAbreviado() + "-" + unidadeNegocio.getNome()); } else { parametros.put("unidadeNegocio", ""); } if (idLocalidadeInicial != null) { FiltroLocalidade filtroLocalidadeInicial = new FiltroLocalidade(); filtroLocalidadeInicial.adicionarParametro( new ParametroSimples(FiltroLocalidade.ID, idLocalidadeInicial)); Collection colecaoLocalidadeInicial = fachada.pesquisar(filtroLocalidadeInicial, Localidade.class.getName()); Localidade localidadeInicial = (Localidade) Util.retonarObjetoDeColecao(colecaoLocalidadeInicial); parametros.put( "localidadeInicial", localidadeInicial.getId() + "-" + localidadeInicial.getDescricao()); } else { parametros.put("localidadeInicial", ""); } if (idLocalidadeInicial != null) { FiltroLocalidade filtroLocalidadeFinal = new FiltroLocalidade(); filtroLocalidadeFinal.adicionarParametro( new ParametroSimples(FiltroLocalidade.ID, idLocalidadeInicial)); Collection colecaoLocalidadeFinal = fachada.pesquisar(filtroLocalidadeFinal, Localidade.class.getName()); Localidade localidadeFinal = (Localidade) Util.retonarObjetoDeColecao(colecaoLocalidadeFinal); parametros.put( "localidadeFinal", localidadeFinal.getId() + "-" + localidadeFinal.getDescricao()); } else { parametros.put("localidadeFinal", ""); } if (idGerenciaRegional != null) { FiltroGerenciaRegional filtroGerenciaRegional = new FiltroGerenciaRegional(); filtroGerenciaRegional.adicionarParametro( new ParametroSimples(FiltroGerenciaRegional.ID, idGerenciaRegional)); Collection colecaoGerenciaRegional = fachada.pesquisar(filtroGerenciaRegional, GerenciaRegional.class.getName()); GerenciaRegional gerenciaRegional = (GerenciaRegional) Util.retonarObjetoDeColecao(colecaoGerenciaRegional); parametros.put( "gerenciaRegional", gerenciaRegional.getNomeAbreviado() + "-" + gerenciaRegional.getNome()); } else { parametros.put("gerenciaRegional", ""); } if (idSetorComercialInicial != null) { FiltroSetorComercial filtroSetorComercialInicial = new FiltroSetorComercial(); filtroSetorComercialInicial.adicionarParametro( new ParametroSimples(FiltroSetorComercial.ID, idSetorComercialInicial)); Collection colecaoSetorComercialInicial = fachada.pesquisar(filtroSetorComercialInicial, SetorComercial.class.getName()); SetorComercial setorComercialInicial = (SetorComercial) Util.retonarObjetoDeColecao(colecaoSetorComercialInicial); parametros.put( "setorComercialInicial", setorComercialInicial.getId() + "-" + setorComercialInicial.getDescricao()); } else { parametros.put("setorComercialInicial", ""); } if (idSetorComercialInicial != null) { FiltroSetorComercial filtroSetorComercialFinal = new FiltroSetorComercial(); filtroSetorComercialFinal.adicionarParametro( new ParametroSimples(FiltroSetorComercial.ID, idSetorComercialInicial)); Collection colecaoSetorComercialFinal = fachada.pesquisar(filtroSetorComercialFinal, SetorComercial.class.getName()); SetorComercial setorComercialFinal = (SetorComercial) Util.retonarObjetoDeColecao(colecaoSetorComercialFinal); parametros.put( "setorComercialFinal", setorComercialFinal.getId() + "-" + setorComercialFinal.getDescricao()); } else { parametros.put("setorComercialFinal", ""); } if (idImovelPerfil != null) { FiltroImovelPerfil filtroImovelPerfil = new FiltroImovelPerfil(); filtroImovelPerfil.adicionarParametro( new ParametroSimples(FiltroImovelPerfil.ID, idImovelPerfil)); Collection colecaoImovelPerfil = fachada.pesquisar(filtroImovelPerfil, ImovelPerfil.class.getName()); ImovelPerfil imovelPerfil = (ImovelPerfil) Util.retonarObjetoDeColecao(colecaoImovelPerfil); parametros.put( "imovelPerfil", "ANÁLISE DO IMÓVEIS " + imovelPerfil.getDescricao().toUpperCase() + "S"); } else { parametros.put("imovelPerfil", ""); } parametros.put("tipoFormatoRelatorio", "R0887"); // cria uma instância do dataSource do relatório RelatorioDataSource ds = new RelatorioDataSource(relatorioBeans); retorno = gerarRelatorio( ConstantesRelatorios.RELATORIO_ANALISE_IMOVEL_CORPORATIVO_GRANDE, parametros, ds, tipoFormatoRelatorio); // ------------------------------------ // Grava o relatório no sistema try { persistirRelatorioConcluido( retorno, Relatorio.ANALISE_IMOVEL_CORPORATIVO_GRANDE, idFuncionalidadeIniciada); } catch (ControladorException e) { e.printStackTrace(); throw new TarefaException("Erro ao gravar relatório no sistema", e); } // ------------------------------------ // retorna o relatório gerado return retorno; }