package gcom.gui.relatorio.cobranca; import gcom.cadastro.localidade.FiltroGerenciaRegional; import gcom.cadastro.localidade.FiltroLocalidade; import gcom.cadastro.localidade.FiltroSetorComercial; import gcom.cadastro.localidade.FiltroUnidadeNegocio; import gcom.cadastro.localidade.GerenciaRegional; import gcom.cadastro.localidade.Localidade; import gcom.cadastro.localidade.SetorComercial; import gcom.cadastro.localidade.UnidadeNegocio; import gcom.fachada.Fachada; import gcom.gui.ActionServletException; import gcom.relatorio.ExibidorProcessamentoTarefaRelatorio; import gcom.util.ConstantesSistema; import gcom.util.Util; import gcom.util.filtro.ParametroSimples; import java.util.Collection; import java.util.Date; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionForward; import org.apache.struts.action.ActionMapping; /** * [UC0891]-Gerar Relat�rio de Im�veis com Acordo * * @author R�mulo Aur�lio * @date 23/03/2009 */ public class ExibirGerarRelatorioImoveisComAcordoAction extends ExibidorProcessamentoTarefaRelatorio { /** * < <Descri��o do m�todo>> * * @param actionMapping * Descri��o do par�metro * @param actionForm * Descri��o do par�metro * @param httpServletRequest * Descri��o do par�metro * @param httpServletResponse * Descri��o do par�metro * @return Descri��o do retorno */ public ActionForward execute(ActionMapping actionMapping, ActionForm actionForm, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) { // Seta o mapeamento de retorno ActionForward retorno = actionMapping .findForward("exibirGerarRelatorioImoveisComAcordoAction"); GerarRelatorioImoveisComAcordoActionForm form = (GerarRelatorioImoveisComAcordoActionForm) actionForm; HttpSession sessao = httpServletRequest.getSession(false); if (httpServletRequest.getParameter("menu") != null && !httpServletRequest.getParameter("menu").trim().equals("")) { FiltroUnidadeNegocio filtroUnidadeNegocio = new FiltroUnidadeNegocio(); filtroUnidadeNegocio.setCampoOrderBy(FiltroUnidadeNegocio.NOME); filtroUnidadeNegocio.adicionarParametro(new ParametroSimples( FiltroUnidadeNegocio.INDICADOR_USO, ConstantesSistema.INDICADOR_USO_ATIVO.toString())); Collection<UnidadeNegocio> colecaoUnidadeNegocio = this .getFachada().pesquisar(filtroUnidadeNegocio, UnidadeNegocio.class.getName()); sessao.setAttribute("colecaoUnidadeNegocio", colecaoUnidadeNegocio); FiltroGerenciaRegional filtroGerenciaRegional = new FiltroGerenciaRegional(); filtroGerenciaRegional.setCampoOrderBy(FiltroGerenciaRegional.NOME); filtroGerenciaRegional.adicionarParametro(new ParametroSimples( FiltroGerenciaRegional.INDICADOR_USO, ConstantesSistema.INDICADOR_USO_ATIVO.toString())); Collection<GerenciaRegional> colecaoGerenciaRegional = this.getFachada() .pesquisar(filtroGerenciaRegional, GerenciaRegional.class.getName()); sessao.setAttribute("colecaoGerenciaRegional", colecaoGerenciaRegional); } pesquisarCamposEnter(httpServletRequest, form); if (httpServletRequest.getParameter("quantidade") != null && !httpServletRequest.getParameter("quantidade").equals("")) { Date dataInicial = null; Date dataFinal = null; Integer qtde; if (form.getPeriodoInicialAcordo() != null && !form.getPeriodoInicialAcordo().equalsIgnoreCase("")) { dataInicial = Util.converteStringParaDate(form .getPeriodoInicialAcordo()); dataFinal = Util.converteStringParaDate(form .getPeriodoFinalAcordo()); if (dataInicial.after(dataFinal)) { throw new ActionServletException( "atencao.data_final_situacao_cobranca_invalida"); } qtde = Fachada .getInstancia() .pesquisarDadosGerarRelatorioImoveisComAcordoCount( form.getIdUnidadeNegocio() == null || form.getIdUnidadeNegocio() .equals("-1") ? null : Integer .parseInt(form.getIdUnidadeNegocio()), form.getIdLocalidadeInicial() == null || form.getIdLocalidadeInicial() .equals("") ? null : Integer.parseInt(form .getIdLocalidadeInicial()), form.getIdLocalidadeFinal() == null || form.getIdLocalidadeFinal().equals( "") ? null : Integer .parseInt(form.getIdLocalidadeFinal()), form.getIdGerenciaRegional() == null || form.getIdGerenciaRegional().equals( "-1") ? null : Integer .parseInt(form.getIdGerenciaRegional()), dataInicial, dataFinal, form.getRotaInicial() == null || form.getRotaInicial().equals("") ? null : Integer.parseInt(form .getRotaInicial()), form.getRotaFinal() == null || form.getRotaFinal().equals("") ? null : Integer.parseInt(form.getRotaFinal()), form.getSequencialRotaInicial() == null || form.getSequencialRotaInicial() .equals("") ? null : Integer .parseInt(form .getSequencialRotaInicial()), form.getSequencialRotaFinal() == null || form.getSequencialRotaFinal() .equals("") ? null : Integer.parseInt(form .getSequencialRotaFinal()), form.getSetorComercialInicial() == null || form.getSetorComercialInicial() .equals("") ? null : Integer .parseInt(form .getSetorComercialInicial()), form.getSetorComercialFinal() == null || form.getSetorComercialFinal() .equals("") ? null : Integer.parseInt(form .getSetorComercialFinal())); if (qtde > 0){ form.setQuantidade("" + qtde); httpServletRequest.setAttribute("liberado",true); }else{ form.setQuantidade("0"); httpServletRequest.removeAttribute("liberado"); } httpServletRequest.setAttribute("quantidade",true); } } return retorno; } @SuppressWarnings("unchecked") private void pesquisarCamposEnter(HttpServletRequest httpServletRequest, GerarRelatorioImoveisComAcordoActionForm form) { String idLocalidadeOrigem = form.getIdLocalidadeInicial(); // Pesquisa a localidade inicial if (idLocalidadeOrigem != null && !idLocalidadeOrigem.trim().equals("")) { FiltroLocalidade filtroLocalidade = new FiltroLocalidade(); filtroLocalidade.adicionarParametro(new ParametroSimples( FiltroLocalidade.ID, idLocalidadeOrigem)); Collection<Localidade> colecaoLocalidade = this.getFachada() .pesquisar(filtroLocalidade, Localidade.class.getName()); if (colecaoLocalidade != null && !colecaoLocalidade.isEmpty()) { Localidade localidade = (Localidade) Util .retonarObjetoDeColecao(colecaoLocalidade); form.setIdLocalidadeInicial(localidade.getId().toString()); form.setNomeLocalidadeInicial(localidade.getDescricao()); httpServletRequest.setAttribute("nomeCampo", "codigoSetorComercialOrigem"); String codigoSetorComercialOrigem = form .getSetorComercialInicial(); // Pesquisa o setor comercial inicial if (codigoSetorComercialOrigem != null && !codigoSetorComercialOrigem.trim().equals("")) { FiltroSetorComercial filtroSetorComercial = new FiltroSetorComercial(); filtroSetorComercial .adicionarParametro(new ParametroSimples( FiltroSetorComercial.CODIGO_SETOR_COMERCIAL, new Integer( codigoSetorComercialOrigem))); Collection<SetorComercial> colecaoSetorComercial = this .getFachada().pesquisar(filtroSetorComercial, SetorComercial.class.getName()); if (colecaoSetorComercial != null && !colecaoSetorComercial.isEmpty()) { SetorComercial setorComercial = (SetorComercial) Util .retonarObjetoDeColecao(colecaoSetorComercial); form.setSetorComercialInicial("" + setorComercial.getCodigo()); form.setNomeSetorComercialInicial(setorComercial .getDescricao()); httpServletRequest.setAttribute("nomeCampo", "idLocalidadeDestino"); } else { form.setSetorComercialInicial(""); form .setNomeSetorComercialInicial("SETOR COMERCIAL INEXISTENTE"); httpServletRequest.setAttribute( "setorComercialOrigemInexistente", true); httpServletRequest.setAttribute("nomeCampo", "codigoSetorComercialOrigem"); } } else { form.setNomeSetorComercialInicial(""); } } else { form.setIdLocalidadeInicial(""); form.setNomeLocalidadeInicial("LOCALIDADE INEXISTENTE"); httpServletRequest.setAttribute("localidadeOrigemInexistente", true); httpServletRequest.setAttribute("nomeCampo", "idLocalidadeOrigem"); } } else { form.setNomeLocalidadeInicial(""); } String idLocalidadeDestino = form.getIdLocalidadeFinal(); // Pesquisa a localidade final if (idLocalidadeDestino != null && !idLocalidadeDestino.trim().equals("")) { FiltroLocalidade filtroLocalidade = new FiltroLocalidade(); filtroLocalidade.adicionarParametro(new ParametroSimples( FiltroLocalidade.ID, idLocalidadeDestino)); Collection<Localidade> colecaoLocalidade = this.getFachada() .pesquisar(filtroLocalidade, Localidade.class.getName()); if (colecaoLocalidade != null && !colecaoLocalidade.isEmpty()) { Localidade localidade = (Localidade) Util .retonarObjetoDeColecao(colecaoLocalidade); form.setIdLocalidadeFinal(localidade.getId().toString()); form.setNomeLocalidadeFinal(localidade.getDescricao()); httpServletRequest.setAttribute("nomeCampo", "codigoSetorComercialDestino"); String codigoSetorComercialDestino = form .getSetorComercialFinal(); // Pesquisa o setor comercial Final if (codigoSetorComercialDestino != null && !codigoSetorComercialDestino.trim().equals("")) { FiltroSetorComercial filtroSetorComercial = new FiltroSetorComercial(); /*filtroSetorComercial .adicionarParametro(new ParametroSimples( FiltroSetorComercial.ID_LOCALIDADE, localidade.getId()));*/ filtroSetorComercial .adicionarParametro(new ParametroSimples( FiltroSetorComercial.CODIGO_SETOR_COMERCIAL, Integer.parseInt(codigoSetorComercialDestino))); Collection<SetorComercial> colecaoSetorComercial = this .getFachada().pesquisar(filtroSetorComercial, SetorComercial.class.getName()); if (colecaoSetorComercial != null && !colecaoSetorComercial.isEmpty()) { SetorComercial setorComercial = (SetorComercial) Util .retonarObjetoDeColecao(colecaoSetorComercial); form.setSetorComercialFinal("" + setorComercial.getCodigo()); form.setNomeSetorComercialFinal(setorComercial .getDescricao()); httpServletRequest.setAttribute("nomeCampo", "referenciaInicial"); } else { form.setSetorComercialFinal(""); form .setNomeSetorComercialFinal("SETOR COMERCIAL INEXISTENTE"); httpServletRequest.setAttribute( "setorComercialDestinoInexistente", true); httpServletRequest.setAttribute("nomeCampo", "codigoSetorComercialDestino"); } } else { form.setNomeSetorComercialFinal(""); } } else { form.setIdLocalidadeFinal(""); form.setNomeLocalidadeFinal("LOCALIDADE INEXISTENTE"); httpServletRequest.setAttribute("localidadeDestinoInexistente", true); httpServletRequest.setAttribute("nomeCampo", "idLocalidadeDestino"); } } else { form.setNomeLocalidadeFinal(""); } } }