package gcom.gui.faturamento.conta; import gcom.cadastro.cliente.Cliente; import gcom.cadastro.cliente.FiltroCliente; import gcom.cadastro.imovel.Imovel; import gcom.cadastro.localidade.FiltroLocalidade; import gcom.cadastro.localidade.FiltroQuadra; import gcom.cadastro.localidade.FiltroSetorComercial; import gcom.cadastro.localidade.Localidade; import gcom.cadastro.localidade.Quadra; import gcom.cadastro.localidade.SetorComercial; import gcom.cadastro.localidade.UnidadeNegocio; import gcom.fachada.Fachada; import gcom.gui.ActionServletException; import gcom.gui.GcomAction; import gcom.gui.faturamento.bean.FiltrarImovelInserirManterContaHelper; import gcom.seguranca.acesso.PermissaoEspecial; import gcom.seguranca.acesso.usuario.Usuario; import gcom.seguranca.acesso.usuario.UsuarioAbrangencia; import gcom.util.ConstantesSistema; import gcom.util.ErroRepositorioException; import gcom.util.Util; import gcom.util.filtro.ParametroSimples; import java.rmi.RemoteException; import java.util.Collection; import java.util.List; 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; public class FiltrarImovelInserirManterContaAction extends GcomAction { public ActionForward execute(ActionMapping actionMapping, ActionForm actionForm, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) { // Seta o retorno ActionForward retorno = actionMapping.findForward("exibirManterContaConjuntoImovel"); // Obt�m a inst�ncia da fachada Fachada fachada = Fachada.getInstancia(); // Obt�m a sess�o HttpSession sessao = httpServletRequest.getSession(false); Usuario usuarioLogado = (Usuario) sessao.getAttribute("usuarioLogado"); FiltrarImovelContaActionForm filtrarImovelContaActionForm = (FiltrarImovelContaActionForm) actionForm; Collection colecaoImovel = null; Integer codigoCliente = null; Integer codigoClienteSuperior = null; String nomeCliente = ""; Integer relacaoTipo = null; String[] bancos = null; Integer[] esferasPoder = null; if (filtrarImovelContaActionForm.getBanco() != null && !filtrarImovelContaActionForm.getBanco().equals("-1")) { bancos = filtrarImovelContaActionForm.getBanco(); sessao.setAttribute("bancos", bancos); } else { sessao.removeAttribute("bancos"); } /** * * * @autor: Adriana Muniz * @date: 24/11/2011 Acr�scimo de atributo esfera de poder no filtro da * consulta * */ if (filtrarImovelContaActionForm.getEsferaPoder() != null && !filtrarImovelContaActionForm.getEsferaPoder().equals("-1")) { esferasPoder = filtrarImovelContaActionForm.getEsferaPoder(); sessao.setAttribute("esferasPoder", esferasPoder); } else { sessao.removeAttribute("esferasPoder"); } Boolean verificarImovelPerfilBloqueado = false; if ((filtrarImovelContaActionForm.getCodigoClienteSuperior() != null && !filtrarImovelContaActionForm.getCodigoClienteSuperior() .equals("")) || (filtrarImovelContaActionForm.getCodigoCliente() != null && !filtrarImovelContaActionForm.getCodigoCliente().equals(""))) { if (filtrarImovelContaActionForm.getCodigoClienteSuperior() != null && !filtrarImovelContaActionForm.getCodigoClienteSuperior().equals("")) { codigoClienteSuperior = Integer.parseInt(filtrarImovelContaActionForm.getCodigoClienteSuperior()); relacaoTipo = new Integer("99"); } else { codigoCliente = Integer.parseInt(filtrarImovelContaActionForm.getCodigoCliente()); if (filtrarImovelContaActionForm.getTipoRelacao() != null && !filtrarImovelContaActionForm.getTipoRelacao().trim().equals(ConstantesSistema.NUMERO_NAO_INFORMADO + "")) { relacaoTipo = Integer.parseInt(filtrarImovelContaActionForm.getTipoRelacao()); } } // PESQUISAR CLIENTE SUPERIOR if (codigoClienteSuperior != null && !codigoClienteSuperior.equals("")) { sessao.setAttribute("codigoClienteSuperior", codigoClienteSuperior.toString()); sessao.removeAttribute("codigoCliente"); nomeCliente = this.pesquisarCliente(codigoClienteSuperior.toString(), fachada); /* * Colocado por Ana Maria em 20/04/2009 */ if (!fachada.verificarPermissaoRetificarContaImovelPefilBloqueado((Usuario) sessao.getAttribute(Usuario.USUARIO_LOGADO))) { Integer qtdImovelBloqueado = fachada.pesquisarColecaoImovelClienteBloqueadoPerfil(codigoClienteSuperior, relacaoTipo); if (qtdImovelBloqueado != null && !qtdImovelBloqueado.equals(0)) { String confirmado = httpServletRequest.getParameter("confirmado"); if (confirmado == null || !confirmado.trim().equalsIgnoreCase("ok")) { httpServletRequest.setAttribute("caminhoActionConclusao", "/gsan/filtrarImovelInserirManterContaAction.do"); return montarPaginaConfirmacao("atencao.existe_imovel_perfil_bloqueado", httpServletRequest, actionMapping, qtdImovelBloqueado.toString()); } else { verificarImovelPerfilBloqueado = true; } } } colecaoImovel = fachada.pesquisarColecaoImovelCliente(codigoClienteSuperior, relacaoTipo, verificarImovelPerfilBloqueado); } // PESQUISAR CLIENTE if (codigoCliente != null && !codigoCliente.equals("")) { sessao.setAttribute("codigoCliente", codigoCliente.toString()); sessao.removeAttribute("codigoClienteSuperior"); nomeCliente = this.pesquisarCliente(codigoCliente.toString(), fachada); /* * Colocado por Ana Maria em 20/04/2009 */ if (!fachada.verificarPermissaoRetificarContaImovelPefilBloqueado((Usuario) sessao.getAttribute(Usuario.USUARIO_LOGADO))) { Integer qtdImovelBloqueado = fachada.pesquisarColecaoImovelClienteBloqueadoPerfil(codigoCliente, relacaoTipo); if (!qtdImovelBloqueado.equals(0)) { String confirmado = httpServletRequest.getParameter("confirmado"); if (confirmado == null || !confirmado.trim().equalsIgnoreCase("ok")) { httpServletRequest.setAttribute("caminhoActionConclusao", "/gsan/filtrarImovelInserirManterContaAction.do"); return montarPaginaConfirmacao("atencao.existe_imovel_perfil_bloqueado", httpServletRequest, actionMapping, qtdImovelBloqueado.toString()); } else { verificarImovelPerfilBloqueado = true; } } } colecaoImovel = fachada.pesquisarColecaoImovelCliente(codigoCliente, relacaoTipo, verificarImovelPerfilBloqueado); } if (colecaoImovel == null || colecaoImovel.isEmpty()) { throw new ActionServletException("atencao.imovel_inexistente_criterio_pesquisa"); } else { sessao.setAttribute("colecaoImovel", colecaoImovel); } sessao.setAttribute("nomeCliente", nomeCliente); sessao.setAttribute("relacaoTipo", relacaoTipo); sessao.removeAttribute("inscricaoInicialImovel"); sessao.removeAttribute("inscricaoDestinoImovel"); if (sessao.getAttribute("quadraSelecionada") != null) { sessao.removeAttribute("quadraSelecionada"); } } else { Imovel imovelInscricaoOrigem = new Imovel(); // Dados da inscri��o de origem Integer localidadeOrigemID = null; if (filtrarImovelContaActionForm.getLocalidadeOrigemID() != null && !filtrarImovelContaActionForm.getLocalidadeOrigemID().equals("")) { localidadeOrigemID = Integer.parseInt(filtrarImovelContaActionForm.getLocalidadeOrigemID()); Localidade localidadeInscricaoOrigem = new Localidade(); localidadeInscricaoOrigem.setId(localidadeOrigemID); imovelInscricaoOrigem.setLocalidade(localidadeInscricaoOrigem); } Integer setorComercialOrigemCD = null; SetorComercial setorComercialInscricaoOrigem = new SetorComercial(); if (filtrarImovelContaActionForm.getSetorComercialOrigemCD() != null && !filtrarImovelContaActionForm.getSetorComercialOrigemCD().equals("")) { setorComercialOrigemCD = Integer.parseInt(filtrarImovelContaActionForm.getSetorComercialOrigemCD()); setorComercialInscricaoOrigem.setCodigo(setorComercialOrigemCD); imovelInscricaoOrigem.setSetorComercial(setorComercialInscricaoOrigem); } else { setorComercialInscricaoOrigem.setCodigo(0); imovelInscricaoOrigem.setSetorComercial(setorComercialInscricaoOrigem); } Integer quadraOrigemNM = null; Quadra quadraInscricaoOrigem = new Quadra(); if (filtrarImovelContaActionForm.getQuadraOrigemNM() != null && !filtrarImovelContaActionForm.getQuadraOrigemNM().equals("")) { quadraOrigemNM = Integer.parseInt(filtrarImovelContaActionForm.getQuadraOrigemNM()); quadraInscricaoOrigem.setNumeroQuadra(quadraOrigemNM); imovelInscricaoOrigem.setQuadra(quadraInscricaoOrigem); } else { quadraInscricaoOrigem.setNumeroQuadra(0); imovelInscricaoOrigem.setQuadra(quadraInscricaoOrigem); } short loteOrigem = 0; if (filtrarImovelContaActionForm.getLoteOrigem() != null && !filtrarImovelContaActionForm.getLoteOrigem().equalsIgnoreCase("")) { loteOrigem = Short.parseShort(filtrarImovelContaActionForm.getLoteOrigem()); imovelInscricaoOrigem.setLote(loteOrigem); } short subLoteOrigem = 0; if (filtrarImovelContaActionForm.getSubLoteOrigem() != null && !filtrarImovelContaActionForm.getSubLoteOrigem().equalsIgnoreCase("")) { subLoteOrigem = Short.parseShort(filtrarImovelContaActionForm.getSubLoteOrigem()); imovelInscricaoOrigem.setSubLote(subLoteOrigem); } Integer codigoRotaOrigem = null; if (filtrarImovelContaActionForm.getCodigoRotaOrigem() != null && !filtrarImovelContaActionForm.getCodigoRotaOrigem().equalsIgnoreCase("")) { codigoRotaOrigem = new Integer(filtrarImovelContaActionForm.getCodigoRotaOrigem()); } Integer sequencialRotaOrigem = null; if (filtrarImovelContaActionForm.getSequencialRotaOrigem() != null && !filtrarImovelContaActionForm.getSequencialRotaOrigem().equalsIgnoreCase("")) { sequencialRotaOrigem = new Integer(filtrarImovelContaActionForm.getSequencialRotaOrigem()); } Localidade localidadeOrigem = (Localidade) validarCampo(localidadeOrigemID, null, 1); SetorComercial setorComercialOrigem = null; Quadra quadraOrigem = null; // Valida��o dos campos da inscri��o de origem (FS0002, FS0003, // FS0004) if (localidadeOrigem != null) { if (setorComercialOrigemCD != null) { setorComercialOrigem = (SetorComercial) validarCampo(localidadeOrigem.getId(), setorComercialOrigemCD.toString(), 2); if (setorComercialOrigem == null) { throw new ActionServletException("atencao.pesquisa.setor_origem_inexistente"); } else { if (quadraOrigemNM != null) { quadraOrigem = (Quadra) validarCampo(setorComercialOrigem.getId(), quadraOrigemNM.toString(), 3); if (quadraOrigem == null) { throw new ActionServletException("atencao.pesquisa.quadra_origem_inexistente"); } } } } } // Dados da inscri��o de destino Imovel imovelInscricaoDestino = new Imovel(); Integer localidadeDestinoID = null; if (filtrarImovelContaActionForm.getLocalidadeDestinoID() != null && !filtrarImovelContaActionForm.getLocalidadeDestinoID().equals("")) { localidadeDestinoID = Integer.parseInt(filtrarImovelContaActionForm.getLocalidadeDestinoID()); Localidade localidadeInscricaoDestino = new Localidade(); localidadeInscricaoDestino.setId(localidadeDestinoID); imovelInscricaoDestino.setLocalidade(localidadeInscricaoDestino); } Integer setorComercialDestinoCD = null; SetorComercial setorComercialInscricaoDestino = new SetorComercial(); if (filtrarImovelContaActionForm.getSetorComercialDestinoCD() != null && !filtrarImovelContaActionForm.getSetorComercialDestinoCD().equals("")) { setorComercialDestinoCD = Integer.parseInt(filtrarImovelContaActionForm.getSetorComercialDestinoCD()); setorComercialInscricaoDestino.setCodigo(setorComercialDestinoCD); imovelInscricaoDestino.setSetorComercial(setorComercialInscricaoDestino); } else { setorComercialInscricaoDestino.setCodigo(0); imovelInscricaoDestino.setSetorComercial(setorComercialInscricaoDestino); } // Remove as quadras selecionadas, caso n�o seja o mesmo setor // comercial das inscri��es if (setorComercialOrigemCD != null && setorComercialDestinoCD != null && !setorComercialOrigemCD.equals(setorComercialDestinoCD)) { if (sessao.getAttribute("quadraSelecionada") != null) { sessao.removeAttribute("quadraSelecionada"); } } Integer quadraDestinoNM = null; Quadra quadraInscricaoDestino = new Quadra(); if (filtrarImovelContaActionForm.getQuadraDestinoNM() != null && !filtrarImovelContaActionForm.getQuadraDestinoNM().equals("")) { quadraDestinoNM = Integer.parseInt(filtrarImovelContaActionForm.getQuadraDestinoNM()); quadraInscricaoDestino.setNumeroQuadra(quadraDestinoNM); imovelInscricaoDestino.setQuadra(quadraInscricaoDestino); } else { quadraInscricaoDestino.setNumeroQuadra(0); imovelInscricaoDestino.setQuadra(quadraInscricaoDestino); } short loteDestino = 0; if (filtrarImovelContaActionForm.getLoteDestino() != null && !filtrarImovelContaActionForm.getLoteDestino().equalsIgnoreCase("")) { loteDestino = Short.parseShort(filtrarImovelContaActionForm.getLoteDestino()); imovelInscricaoDestino.setLote(loteDestino); } short subLoteDestino = 0; if (filtrarImovelContaActionForm.getSubLoteDestino() != null && !filtrarImovelContaActionForm.getSubLoteDestino().equalsIgnoreCase("")) { subLoteDestino = Short.parseShort(filtrarImovelContaActionForm.getSubLoteDestino()); imovelInscricaoDestino.setSubLote(subLoteDestino); } Integer codigoRotaDestino = null; if (filtrarImovelContaActionForm.getCodigoRotaDestino() != null && !filtrarImovelContaActionForm.getCodigoRotaDestino().equalsIgnoreCase("")) { codigoRotaDestino = new Integer(filtrarImovelContaActionForm.getCodigoRotaDestino()); } Integer sequencialRotaDestino = null; if (filtrarImovelContaActionForm.getSequencialRotaDestino() != null && !filtrarImovelContaActionForm.getSequencialRotaDestino().equalsIgnoreCase("")) { sequencialRotaDestino = new Integer(filtrarImovelContaActionForm.getSequencialRotaDestino()); } Localidade localidadeDestino = (Localidade) validarCampo(localidadeDestinoID, null, 1); SetorComercial setorComercialDestino = null; Quadra quadraDestino = null; // Valida��o dos campos da inscri��o de destino (FS0002, FS0003, // FS0004) if (localidadeDestino != null) { if (setorComercialDestinoCD != null) { setorComercialDestino = (SetorComercial) validarCampo(localidadeDestino.getId(), setorComercialDestinoCD.toString(), 2); if (setorComercialDestino == null) { // Nenhum Setor Comercial encontrado throw new ActionServletException("atencao.pesquisa.setor_destino_inexistente"); } else { if (quadraDestinoNM != null) { quadraDestino = (Quadra) validarCampo(setorComercialDestino.getId(), quadraDestinoNM.toString(), 3); if (quadraDestino == null) { // Nenhuma Quadra encontrada throw new ActionServletException("atencao.pesquisa.quadra_destino_inexistente"); } } } } } /* * Prepara os objetos para a pesquisa dos imoveis que est�o * localizados na inscri��o de origem */ Integer numeroQuadraOrigem = null; if (quadraOrigem != null) { numeroQuadraOrigem = quadraOrigem.getNumeroQuadra(); } Integer numeroQuadraDestino = null; if (quadraDestino != null) { numeroQuadraDestino = quadraDestino.getNumeroQuadra(); } Integer setorComercialOrigemID = null; if (setorComercialOrigem != null) { setorComercialOrigemID = setorComercialOrigem.getId(); } Integer setorComercialDestinoID = null; if (setorComercialDestino != null) { setorComercialDestinoID = setorComercialDestino.getId(); } String[] quadras = null; if (sessao.getAttribute("quadraSelecionada") != null) { quadras = (String[]) sessao.getAttribute("quadraSelecionada"); } /* * Colocado por Raphael Rossiter em 02/08/2007 * * OBJETIVO: Acrescentar o par�metro grupo de faturamento para o * filtro de manuten��o de v�rias contas. */ Integer idGrupoFaturamento = null; if (filtrarImovelContaActionForm.getIdFaturamentoGrupo() != null && !filtrarImovelContaActionForm.getIdFaturamentoGrupo().equals("")) { idGrupoFaturamento = Integer.parseInt(filtrarImovelContaActionForm.getIdFaturamentoGrupo()); } FiltrarImovelInserirManterContaHelper filtro = new FiltrarImovelInserirManterContaHelper(); if (localidadeOrigem != null) { filtro.setLocalidadeOrigemID(localidadeOrigem.getId()); } if (localidadeDestino != null) { filtro.setLocalidadeDestinoID(localidadeDestino.getId()); } filtro.setSetorComercialOrigemID(setorComercialOrigemID); filtro.setSetorComercialDestinoID(setorComercialDestinoID); filtro.setQuadraOrigemID(numeroQuadraOrigem); filtro.setQuadraDestinoID(numeroQuadraDestino); filtro.setLoteOrigem(loteOrigem); filtro.setLoteDestino(loteDestino); filtro.setSubLoteOrigem(subLoteOrigem); filtro.setSubLoteDestino(subLoteDestino); filtro.setQuadras(quadras); filtro.setCodigoRotaOrigem(codigoRotaOrigem); filtro.setCodigoRotaDestino(codigoRotaDestino); filtro.setSequencialRotaOrigem(sequencialRotaOrigem); filtro.setSequencialRotaDestino(sequencialRotaDestino); /** * * * @author: Adriana Muniz * @date:24/11/2011 * * Adicionando a esfera de poder ao filtro da * consulta * */ filtro.setEsferasPoder(esferasPoder); /* * Colocado por Raphael Rossiter em 02/08/2007 * * OBJETIVO: Acrescentar o par�metro grupo de faturamento para o * filtro de manuten��o de v�rias contas. */ filtro.setIdGrupoFaturamento(idGrupoFaturamento); // [FS0011] - Verificar a abrang�ncia do usu�rio // adicionado por Vivianne Sousa verificarAbrangenciaUsuario(usuarioLogado, filtro, filtrarImovelContaActionForm); /* * Colocado por Ana Maria em 20/04/2009 */ if (!fachada.verificarPermissaoRetificarContaImovelPefilBloqueado((Usuario) sessao.getAttribute(Usuario.USUARIO_LOGADO))) { Integer qtdImovelBloqueado = fachada.pesquisarColecaoImovelPerfilBloqueado(filtro); if (!qtdImovelBloqueado.equals(0)) { String confirmado = httpServletRequest.getParameter("confirmado"); if (confirmado == null || !confirmado.trim().equalsIgnoreCase("ok")) { httpServletRequest.setAttribute("caminhoActionConclusao", "/gsan/filtrarImovelInserirManterContaAction.do"); return montarPaginaConfirmacao("atencao.existe_imovel_perfil_bloqueado", httpServletRequest, actionMapping, qtdImovelBloqueado.toString()); } else { filtro.setVerificarImovelPerfilBloqueado(true); } } } /** * Data: 08/04/2011 * * Condi��o acrescentada para permitir consulta por banco e pelo * grupo de faturamento * */ if (bancos != null && idGrupoFaturamento != null) { colecaoImovel = fachada.pesquisarImoveisBancoDebitoAutomaticoEPorGrupoFaturamento(bancos, idGrupoFaturamento); } else if (bancos != null) { colecaoImovel = fachada.pesquisarImoveisBancoDebitoAutomatico(bancos); } else { colecaoImovel = fachada.pesquisarColecaoImovel(filtro); } if (colecaoImovel == null || colecaoImovel.isEmpty()) { throw new ActionServletException("atencao.imovel_inexistente_criterio_pesquisa"); } else { sessao.setAttribute("colecaoImovel", colecaoImovel); } if (imovelInscricaoOrigem.getLocalidade() != null) { sessao.setAttribute("inscricaoInicialImovel", imovelInscricaoOrigem.getInscricaoFormatada()); } else { sessao.removeAttribute("inscricaoInicialImovel"); } if (imovelInscricaoDestino.getLocalidade() != null) { sessao.setAttribute("inscricaoDestinoImovel", imovelInscricaoDestino.getInscricaoFormatada()); } else { sessao.removeAttribute("inscricaoDestinoImovel"); } if (idGrupoFaturamento != null) { sessao.setAttribute("grupoFaturamento", idGrupoFaturamento.toString()); } else { sessao.removeAttribute("grupoFaturamento"); } sessao.removeAttribute("codigoCliente"); sessao.removeAttribute("nomeCliente"); } /* * Colocado por Bruno Barros em 05 de Janeiro de 2009 Verificamos se o * usu�rio possue permiss�o especial para atualizar ou retificar contas * pagas */ boolean usuarioPodeAtualizarRetificarContasPagas = fachada.verificarPermissaoEspecial( PermissaoEspecial.ATUALIZAR_RETIFICAR_CONTAS_PAGAS, (Usuario) sessao.getAttribute(Usuario.USUARIO_LOGADO)); httpServletRequest.setAttribute("usuarioPodeAtualizarRetificarContasPagas", usuarioPodeAtualizarRetificarContasPagas); // ***************************************************************** // devolve o mapeamento de retorno return retorno; } /** * Valida os valores digitados pelo usu�rio * * @param campoDependencia * @param dependente * @param tipoObjeto * @return Object * @throws RemoteException * @throws ErroRepositorioException */ private Object validarCampo(Integer campoDependencia, String dependente, int tipoObjeto) { Object objeto = null; Collection colecaoPesquisa; // Obt�m a inst�ncia da fachada Fachada fachada = Fachada.getInstancia(); if (campoDependencia != null) { if (dependente == null || tipoObjeto == 1) { // Localidade FiltroLocalidade filtroLocalidade = new FiltroLocalidade(); filtroLocalidade.adicionarParametro(new ParametroSimples(FiltroLocalidade.ID, campoDependencia)); filtroLocalidade.adicionarParametro(new ParametroSimples(FiltroLocalidade.INDICADORUSO, ConstantesSistema.INDICADOR_USO_ATIVO)); colecaoPesquisa = fachada.pesquisar(filtroLocalidade, Localidade.class.getName()); if (!Util.isVazioOrNulo(colecaoPesquisa)) { objeto = Util.retonarObjetoDeColecao(colecaoPesquisa); } } else if (dependente != null && !dependente.equalsIgnoreCase("") && tipoObjeto > 1) { switch (tipoObjeto) { // Setor Comercial case 2: FiltroSetorComercial filtroSetorComercial = new FiltroSetorComercial(); filtroSetorComercial.adicionarParametro(new ParametroSimples(FiltroSetorComercial.ID_LOCALIDADE, campoDependencia)); filtroSetorComercial.adicionarParametro(new ParametroSimples(FiltroSetorComercial.CODIGO_SETOR_COMERCIAL, new Integer( dependente))); filtroSetorComercial.adicionarParametro(new ParametroSimples(FiltroSetorComercial.INDICADORUSO, ConstantesSistema.INDICADOR_USO_ATIVO)); colecaoPesquisa = fachada.pesquisar(filtroSetorComercial, SetorComercial.class.getName()); if (!Util.isVazioOrNulo(colecaoPesquisa)) { objeto = Util.retonarObjetoDeColecao(colecaoPesquisa); } break; // Quadra case 3: FiltroQuadra filtroQuadra = new FiltroQuadra(); // Objetos que ser�o retornados pelo hibernate filtroQuadra.adicionarCaminhoParaCarregamentoEntidade("rota.faturamentoGrupo"); filtroQuadra.adicionarParametro(new ParametroSimples(FiltroQuadra.ID_SETORCOMERCIAL, campoDependencia)); filtroQuadra.adicionarParametro(new ParametroSimples(FiltroQuadra.NUMERO_QUADRA, new Integer(dependente))); filtroQuadra.adicionarParametro(new ParametroSimples(FiltroQuadra.INDICADORUSO, ConstantesSistema.INDICADOR_USO_ATIVO)); colecaoPesquisa = fachada.pesquisar(filtroQuadra, Quadra.class.getName()); if (!Util.isVazioOrNulo(colecaoPesquisa)) { objeto = Util.retonarObjetoDeColecao(colecaoPesquisa); } break; default: break; } } } return objeto; } /** * Verifica a exist�ncia de im�veis no objeto passado como par�metro Os * objetos passados podem ser do tipo SetorComercial = 1 e Quadra = 2 * * @param objetoCondicao * @param tipoObjeto * @return um boleano */ /* * private boolean existeImovel(Object objetoCondicao, int tipoObjeto) { * * boolean retorno = false; Collection colecaoPesquisa; * * //Obt�m a inst�ncia da fachada Fachada fachada = Fachada.getInstancia(); * * if (tipoObjeto == 1) { SetorComercial setorComercial = (SetorComercial) * objetoCondicao; * * colecaoPesquisa = fachada.pesquisarImovel(null, setorComercial .getId(), * null, null); * * if (colecaoPesquisa != null && !colecaoPesquisa.isEmpty()) { retorno = * true; } } else { Quadra quadra = (Quadra) objetoCondicao; * * colecaoPesquisa = fachada.pesquisarImovel(null, null, quadra .getId(), * null); * * if (colecaoPesquisa != null && !colecaoPesquisa.isEmpty()) { retorno = * true; } } * * return retorno; } */ /** * Pesquisar Clientes * * @param filtroCliente * @param idCliente * @param clientes * @param form * @param fachada * @param httpServletRequest */ public String pesquisarCliente(String idCliente, Fachada fachada) { FiltroCliente filtroCliente = new FiltroCliente(); filtroCliente.adicionarParametro(new ParametroSimples(FiltroCliente.ID, idCliente)); filtroCliente.adicionarParametro(new ParametroSimples(FiltroCliente.INDICADOR_USO, ConstantesSistema.INDICADOR_USO_ATIVO)); Collection clienteEncontrado = fachada.pesquisar(filtroCliente, Cliente.class.getName()); Cliente cliente = null; if (clienteEncontrado != null && !clienteEncontrado.isEmpty()) { cliente = ((Cliente) ((List) clienteEncontrado).get(0)); // O Cliente foi encontrado if (cliente.getIndicadorUso().equals(ConstantesSistema.INDICADOR_USO_DESATIVO)) { throw new ActionServletException("atencao.cliente.inativo", null, "" + ((Cliente) ((List) clienteEncontrado).get(0)).getId()); } } else { throw new ActionServletException("atencao.cliente.inexistente"); } return cliente.getNome(); } /** * [FS0011] - Verificar a abrang�ncia do usu�rio Vivianne Sousa - 28/07/2009 * analista:Nelson Carvalho */ private void verificarAbrangenciaUsuario(Usuario usuarioLogado, FiltrarImovelInserirManterContaHelper filtro, FiltrarImovelContaActionForm form) { Fachada fachada = Fachada.getInstancia(); Integer nivelAbrangencia = usuarioLogado.getUsuarioAbrangencia().getId(); UnidadeNegocio unidadeNegocioUsuario = fachada.pesquisarUnidadeNegocioUsuario(usuarioLogado.getId()); usuarioLogado.setUnidadeNegocio(unidadeNegocioUsuario); if ((form.getCodigoClienteSuperior() != null && !form.getCodigoClienteSuperior().equals("")) || (form.getCodigoCliente() != null && !form.getCodigoCliente().equals("")) || (form.getBanco() != null && !form.getBanco().equals("-1")) || (form.getIdFaturamentoGrupo() != null && !form.getIdFaturamentoGrupo().equals(""))) { // caso tenha sido informado um Cliente, ou um Grupo de Faturamento, // ou um Banco de D�bito Autom�tico como criterio de filtro // o usu�rio dever� necessariamente possuir abrang�ncia de Estado // caso contr�rio, exibir a mensagem // "Acesso a opera��o negado devido a abrang�ncia do usu�rio." if (nivelAbrangencia.intValue() != UsuarioAbrangencia.ESTADO_INT) { throw new ActionServletException("atencao.acesso.negado.abrangencia"); } } if ((filtro.getLocalidadeOrigemID() != null && !filtro.getLocalidadeOrigemID().equals("")) || (filtro.getSetorComercialOrigemID() != null && !filtro.getSetorComercialOrigemID().equals("")) || (filtro.getQuadraOrigemID() != null && !filtro.getQuadraOrigemID().equals("")) || (filtro.getQuadras() != null) || (filtro.getLoteOrigem() != null && !filtro.getLoteOrigem().equals("")) || (filtro.getSubLoteOrigem() != null && !filtro.getSubLoteOrigem().equals("")) || (filtro.getCodigoRotaOrigem() != null && !filtro.getCodigoRotaOrigem().equals(""))) { if (nivelAbrangencia.intValue() != UsuarioAbrangencia.ESTADO_INT) { boolean existe = fachada.existeLocalidadeForaDaAbrangenciaUsuario(filtro, nivelAbrangencia, usuarioLogado); if (existe) { throw new ActionServletException("atencao.acesso.negado.abrangencia"); } } } } }