package gcom.gui.cobranca.parcelamento; import gcom.cadastro.imovel.FiltroImovelPerfil; import gcom.cadastro.imovel.ImovelPerfil; 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.cadastro.unidade.FiltroUnidadeOrganizacional; import gcom.cadastro.unidade.UnidadeOrganizacional; import gcom.cobranca.parcelamento.FiltroParcelamentoMotivoDesfazer; import gcom.cobranca.parcelamento.FiltroParcelamentoSituacao; import gcom.cobranca.parcelamento.ParcelamentoMotivoDesfazer; import gcom.cobranca.parcelamento.ParcelamentoSituacao; import gcom.fachada.Fachada; import gcom.gui.ActionServletException; import gcom.gui.GcomAction; import gcom.seguranca.acesso.usuario.FiltroUsuario; import gcom.seguranca.acesso.usuario.Usuario; import gcom.util.ConstantesSistema; import gcom.util.filtro.ParametroSimples; import java.util.Collection; 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; /** * [UC0594] Gerar Rela��o de Parcelamento * * @author Ana Maria * * @date 30/05/2007 */ public class ExibirGerarRelatorioRelacaoParcelamentoAction extends GcomAction { public ActionForward execute(ActionMapping actionMapping, ActionForm actionForm, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) { // Seta o mapeamento de retorno ActionForward retorno = actionMapping .findForward("exibirGerarRelatorioRelacaoParcelamento"); Fachada fachada = Fachada.getInstancia(); GerarRelatorioRelacaoParcelamentoActionForm form = (GerarRelatorioRelacaoParcelamentoActionForm) actionForm; HttpSession sessao = httpServletRequest.getSession(false); if (form.getIdUnidadeOrganizacional() != null && !form.getIdUnidadeOrganizacional().equals("")) { this.pesquisarUnidadeOrganizacional(httpServletRequest, form); }else{ form.setDescricaoUnidadeOrganizacional(""); } // Ger�ncia Regional if(sessao.getAttribute("gerenciasRegionais") == null){ FiltroGerenciaRegional filtroGerenciaRegional = new FiltroGerenciaRegional(); filtroGerenciaRegional.adicionarParametro(new ParametroSimples( FiltroGerenciaRegional.INDICADOR_USO, ConstantesSistema.INDICADOR_USO_ATIVO)); Collection gerenciasRegionais = fachada.pesquisar(filtroGerenciaRegional, GerenciaRegional.class.getName()); if (gerenciasRegionais == null || gerenciasRegionais.isEmpty()) { throw new ActionServletException("atencao.naocadastrado", null, "Ger�ncia Regional"); } else { sessao.setAttribute("gerenciasRegionais", gerenciasRegionais); } } // Unidade de Neg�cio if(sessao.getAttribute("colecaoUnidadeNegocio") == null){ FiltroUnidadeNegocio filtroUnidadeNegocio = new FiltroUnidadeNegocio(); filtroUnidadeNegocio.adicionarParametro(new ParametroSimples( FiltroUnidadeNegocio.INDICADOR_USO, ConstantesSistema.INDICADOR_USO_ATIVO)); Collection colecaoUnidadeNegocio = fachada.pesquisar(filtroUnidadeNegocio, UnidadeNegocio.class.getName()); if (colecaoUnidadeNegocio == null || colecaoUnidadeNegocio.isEmpty()) { throw new ActionServletException("atencao.naocadastrado", null, "Unidade de Neg�cio"); } else { sessao.setAttribute("colecaoUnidadeNegocio", colecaoUnidadeNegocio); } } if(sessao.getAttribute("colecaoSituacaoParcelamento") == null){ //Pesquisando Situa��o do parcelamento FiltroParcelamentoSituacao filtroParcelamentoSituacao = new FiltroParcelamentoSituacao(); Collection colecaoSituacaoParcelamento = fachada.pesquisar(filtroParcelamentoSituacao, ParcelamentoSituacao.class.getName()); if (colecaoSituacaoParcelamento == null || colecaoSituacaoParcelamento.isEmpty()) { throw new ActionServletException("atencao.entidade_sem_dados_para_selecao", null, "Situa��o do Parcelamento"); } sessao.setAttribute("colecaoSituacaoParcelamento",colecaoSituacaoParcelamento); } // Pesquisando local de instala��o FiltroParcelamentoMotivoDesfazer filtroParcelamentoMotivoDesfazer = new FiltroParcelamentoMotivoDesfazer(); Collection colecaoMotivoDesfazimento = fachada .pesquisar(filtroParcelamentoMotivoDesfazer, ParcelamentoMotivoDesfazer.class.getName()); if (colecaoMotivoDesfazimento == null || colecaoMotivoDesfazimento.isEmpty()) { throw new ActionServletException( "atencao.entidade_sem_dados_para_selecao", null, "Situa��o do Parcelamento"); } httpServletRequest.setAttribute("colecaoMotivoDesfazimento", colecaoMotivoDesfazimento); if(httpServletRequest.getParameter("idSituacaoParcelamento") != null){ Integer idSituacaoParcelamento = new Integer(httpServletRequest.getParameter("idSituacaoParcelamento")); if(idSituacaoParcelamento.equals(ParcelamentoSituacao.DESFEITO)){ httpServletRequest.setAttribute("Desfeito", "sim"); } } String idLocalidade = form.getIdLocalidade(); if (idLocalidade != null && !idLocalidade.trim().equals("")) { FiltroLocalidade filtroLocalidade = new FiltroLocalidade(); filtroLocalidade.adicionarParametro(new ParametroSimples( FiltroLocalidade.ID, idLocalidade)); Collection colecaoLocalidade = fachada.pesquisar( filtroLocalidade, Localidade.class.getName()); if (colecaoLocalidade != null && !colecaoLocalidade.isEmpty()) { Localidade localidade = (Localidade) colecaoLocalidade .iterator().next(); form.setIdLocalidade(idLocalidade); form.setDescricaoLocalidade(localidade.getDescricao()); } else { form.setIdLocalidade(""); form.setDescricaoLocalidade("LOCALIDADE INEXISTENTE"); httpServletRequest.setAttribute("localidadeInexistente", true); } } else { form.setDescricaoLocalidade(""); } String codigoSetorComercial = form.getIdSetorComercial(); if (codigoSetorComercial != null && !codigoSetorComercial.trim().equals("")) { FiltroSetorComercial filtroSetorComercial = new FiltroSetorComercial(); filtroSetorComercial.adicionarParametro(new ParametroSimples( FiltroSetorComercial.ID_LOCALIDADE, idLocalidade)); filtroSetorComercial.adicionarParametro(new ParametroSimples( FiltroSetorComercial.CODIGO_SETOR_COMERCIAL, codigoSetorComercial)); Collection colecaosetoComercial = fachada.pesquisar( filtroSetorComercial, SetorComercial.class.getName()); if (colecaosetoComercial != null && !colecaosetoComercial.isEmpty()) { SetorComercial setorComercial = (SetorComercial) colecaosetoComercial .iterator().next(); form.setIdSetorComercial(codigoSetorComercial); form.setDescricaoSetorComercial(setorComercial.getDescricao()); } else { form.setIdSetorComercial(""); form.setDescricaoSetorComercial("SETOR COMERCIAL INEXISTENTE"); httpServletRequest.setAttribute("setorComercialInexistente",true); } } else { form.setDescricaoSetorComercial(""); } this.pesquisarPerfilImovel(httpServletRequest); /* * Felipe Santos * * N�o h� nenhuma localidade associada a um municipio (muni_idprincipal != null) */ // this.pesquisarMunicipioAssociado(httpServletRequest); if(httpServletRequest.getParameter("pesqperfilImoveluisarUsuarioResponsavel")!=null && httpServletRequest.getParameter("pesquisarUsuarioResponsavel").toString().equalsIgnoreCase("SIM") && form.getIdUsuarioResponsavel()!=null && !form.getIdUsuarioResponsavel().equals("")){ FiltroUsuario filtro = new FiltroUsuario(); filtro.adicionarParametro(new ParametroSimples(FiltroUsuario.ID, form.getIdUsuarioResponsavel())); Collection<Usuario> colecaoUsuariosResponsaveis = fachada.pesquisar(filtro, Usuario.class.getName()); if(colecaoUsuariosResponsaveis!=null && !colecaoUsuariosResponsaveis.isEmpty()){ Usuario usuarioResponsavel = colecaoUsuariosResponsaveis.iterator().next(); form.setIdUsuarioResponsavel(usuarioResponsavel.getId().toString()); form.setDescricaoUsuarioResponsavel(usuarioResponsavel.getNomeUsuario()); }else{ form.setIdUsuarioResponsavel(""); form.setDescricaoUsuarioResponsavel("USUARIO INEXISTENTE"); httpServletRequest.setAttribute("usuarioResponsavelInexistente",true); } } if(httpServletRequest.getParameter("pesquisarUsuarioConfirmacao")!=null && httpServletRequest.getParameter("pesquisarUsuarioConfirmacao").toString().equalsIgnoreCase("SIM") && form.getIdUsuarioConfirmacao()!=null && !form.getIdUsuarioConfirmacao().equals("")){ FiltroUsuario filtro = new FiltroUsuario(); filtro.adicionarParametro(new ParametroSimples(FiltroUsuario.ID, form.getIdUsuarioConfirmacao())); Collection<Usuario> colecaoUsuariosConfirmacao = fachada.pesquisar(filtro, Usuario.class.getName()); if(colecaoUsuariosConfirmacao!=null && !colecaoUsuariosConfirmacao.isEmpty()){ Usuario usuarioConfirmacao = colecaoUsuariosConfirmacao.iterator().next(); form.setIdUsuarioConfirmacao(usuarioConfirmacao.getId().toString()); form.setDescricaoUsuarioConfirmacao(usuarioConfirmacao.getNomeUsuario()); }else{ form.setIdUsuarioConfirmacao(""); form.setDescricaoUsuarioConfirmacao("USUARIO INEXISTENTE"); httpServletRequest.setAttribute("usuarioConfirmacaoInexistente",true); } } if(form.getIndicadorConfirmacaoOperadora()==null){ form.setIndicadorConfirmacaoOperadora("2"); } return retorno; } /** * Pesquisa Perfil Imovel * * @author Rafael Pinto * @date 30/05/2007 */ private void pesquisarPerfilImovel(HttpServletRequest httpServletRequest){ FiltroImovelPerfil filtroImovelPerfil = new FiltroImovelPerfil(); filtroImovelPerfil.setConsultaSemLimites(true); filtroImovelPerfil.setCampoOrderBy(FiltroImovelPerfil.DESCRICAO); filtroImovelPerfil.adicionarParametro( new ParametroSimples(FiltroImovelPerfil.INDICADOR_USO, ConstantesSistema.INDICADOR_USO_ATIVO)); Collection colecaoPerfilImovel = this.getFachada().pesquisar(filtroImovelPerfil,ImovelPerfil.class.getName()); if (colecaoPerfilImovel == null || colecaoPerfilImovel.isEmpty()) { throw new ActionServletException("atencao.naocadastrado", null,"Perfil do Im�vel"); } else { httpServletRequest.setAttribute("colecaoPerfilImovel",colecaoPerfilImovel); } } /** * Pesquisa Munic�pios associados � localidade * * @author Diogo Peixoto * @date 26/04/2011 */ private void pesquisarMunicipioAssociado(HttpServletRequest httpServletRequest){ Collection colecaoMunicipioAssociado = this.getFachada().pesquisarMunicipiosAssociadoLocalidade(); if (colecaoMunicipioAssociado == null || colecaoMunicipioAssociado.isEmpty()) { throw new ActionServletException("atencao.naocadastrado", null,"Munic�pios associados a localidade"); } else { httpServletRequest.setAttribute("colecaoMunicipioAssociado",colecaoMunicipioAssociado); } } /** * Pesquisa Unidade Organizacional * * @author Hugo Leonardo * @date 24/08/2010 */ private void pesquisarUnidadeOrganizacional(HttpServletRequest httpServletRequest, GerarRelatorioRelacaoParcelamentoActionForm form){ FiltroUnidadeOrganizacional filtroUnidadeOrganizacional = new FiltroUnidadeOrganizacional(); filtroUnidadeOrganizacional.adicionarParametro(new ParametroSimples( FiltroUnidadeOrganizacional.ID, form.getIdUnidadeOrganizacional())); Collection colecaoUnidadeOrganizacional = Fachada.getInstancia().pesquisar( filtroUnidadeOrganizacional, UnidadeOrganizacional.class.getSimpleName()); if (colecaoUnidadeOrganizacional != null && !colecaoUnidadeOrganizacional.isEmpty()) { UnidadeOrganizacional unidadeOrganizacional = (UnidadeOrganizacional) colecaoUnidadeOrganizacional.iterator().next(); form.setIdUnidadeOrganizacional(unidadeOrganizacional.getId().toString()); form.setDescricaoUnidadeOrganizacional(unidadeOrganizacional.getDescricao()); } else { form.setIdUnidadeOrganizacional(""); form.setDescricaoUnidadeOrganizacional("UNIDADE DE NEGOCIO INEXISTENTE."); httpServletRequest.setAttribute("unidadeOrganizacionalInexistente",true); } } }