package gcom.gui.micromedicao; import gcom.cadastro.cliente.FiltroClienteImovel; import gcom.fachada.Fachada; import gcom.gui.ActionServletException; import gcom.gui.GcomAction; 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; /** * Manter Vinculos Imoveis Rateio Consumo * * @author Rafael Santos * @since 11/01/2006 */ public class ExibirManterVinculosImoveisRateioConsumoAction extends GcomAction { /** * Description of the Method * * @param actionMapping * Description of the Parameter * @param actionForm * Description of the Parameter * @param httpServletRequest * Description of the Parameter * @param httpServletResponse * Description of the Parameter * @return Description of the Return Value */ public ActionForward execute(ActionMapping actionMapping, ActionForm actionForm, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) { ActionForward retorno = actionMapping.findForward("exibirManterVinculosImoveisRateioConsumo"); //Fachada fachada = Fachada.getInstancia(); //DynaValidatorForm pesquisarActionForm = (DynaValidatorForm) actionForm; Collection imoveisVinculos = null; //Mudar isso quando implementar a parte de seguran�a HttpSession sessao = httpServletRequest.getSession(false); //Parte da verifica��o do filtro FiltroClienteImovel filtroClienteImovel = null; Fachada fachada = Fachada.getInstancia(); //Verifica se o filtro foi informado pela p�gina de filtragem de // cliente if (httpServletRequest.getAttribute("filtroImovelPreenchido") != null) { filtroClienteImovel= (FiltroClienteImovel) httpServletRequest .getAttribute("filtroImovelPreenchido"); } //A pesquisa de bairros s� ser� feita se o forward estiver direcionado //para a p�gina de manterBairro if (retorno.getName().equalsIgnoreCase("exibirManterVinculosImoveisRateioConsumo")) { //Seta a ordena��o desejada do filtro //filtroBairro.setCampoOrderBy(FiltroBairro.NOME); //Informa ao filtro para ele buscar objetos associados ao Bairro //filtroBairro.adicionarCaminhoParaCarregamentoEntidade("municipio.nome"); //Objetos que ser�o retornados pelo Hibernate atrav�s do clienteImovel filtroClienteImovel.adicionarCaminhoParaCarregamentoEntidade("imovel.logradouroCep.logradouro.logradouroTipo"); filtroClienteImovel.adicionarCaminhoParaCarregamentoEntidade("imovel.logradouroCep.logradouro.logradouroTitulo"); filtroClienteImovel.adicionarCaminhoParaCarregamentoEntidade("imovel.enderecoReferencia"); filtroClienteImovel.adicionarCaminhoParaCarregamentoEntidade("imovel.logradouroBairro.bairro.municipio.unidadeFederacao"); filtroClienteImovel.adicionarCaminhoParaCarregamentoEntidade("imovel.logradouroCep.cep"); filtroClienteImovel.adicionarCaminhoParaCarregamentoEntidade("imovel.setorComercial"); filtroClienteImovel.adicionarCaminhoParaCarregamentoEntidade("imovel.lote"); filtroClienteImovel.adicionarCaminhoParaCarregamentoEntidade("imovel.subLote"); filtroClienteImovel.adicionarCaminhoParaCarregamentoEntidade("imovel.localidade"); //imoveisVinculos = fachada.pesquisar(filtroClienteImovel, ClienteImovel.class.getName()); // Map resultado = controlarPaginacao(httpServletRequest, retorno, // filtroClienteImovel, ClienteImovel.class.getName()); // imoveisVinculos = (Collection) resultado.get("colecaoRetorno"); // retorno = (ActionForward) resultado.get("destinoActionForward"); String idLocalidade = (String) sessao.getAttribute("idLocalidade"); String codigoSetorComercial = (String) sessao.getAttribute("idSetorComercial"); String numeroQuadra = (String) sessao.getAttribute("idQuadra"); String lote = (String) sessao.getAttribute("lote"); String subLote = (String) sessao.getAttribute("subLote"); String codigoCliente = (String) sessao.getAttribute("codigoCliente"); String idMunicipio = (String) sessao.getAttribute("idMunicipio"); String cep = (String) sessao.getAttribute("cep"); String idBairro = (String) sessao.getAttribute("idBairro"); String idLogradouro = (String) sessao.getAttribute("idLogradouro"); String idImovel = (String) sessao.getAttribute("idImovel"); // 1� Passo - Pegar o total de registros atrav�s de um count da consulta que aparecer� na tela int totalRegistros = fachada .pesquisarQuantidadeImovel( idImovel, idLocalidade, codigoSetorComercial, numeroQuadra, lote, subLote, codigoCliente, idMunicipio, cep, idBairro, idLogradouro, null, null, true,false).intValue(); // 2� Passo - Chamar a fun��o de Pagina��o passando o total de registros retorno = this.controlarPaginacao(httpServletRequest, retorno, totalRegistros); // 3� Passo - Obter a cole��o da consulta que aparecer� na tela passando o numero de paginas // da pesquisa que est� no request imoveisVinculos = fachada.pesquisarImovel( idImovel, idLocalidade, codigoSetorComercial, numeroQuadra, lote, subLote, codigoCliente, idMunicipio, cep, idBairro, idLogradouro, null, null, true,false, ((Integer) httpServletRequest .getAttribute("numeroPaginasPesquisa"))); if (imoveisVinculos == null || imoveisVinculos.isEmpty()) { throw new ActionServletException( "atencao.pesquisa.nenhumresultado", null, "Im�vel"); } /* * if (bairros.size() > * ConstantesSistema.NUMERO_MAXIMO_REGISTROS_MANUTENCAO) { throw new * ActionServletException("atencao.pesquisa.muitosregistros"); } */ sessao.setAttribute("colecaoImoveisVinculos", imoveisVinculos); } return retorno; } }