package gcom.gui.cadastro.geografico; import gcom.cadastro.geografico.BairroArea; import gcom.fachada.Fachada; import gcom.gui.GcomAction; import gcom.operacional.DistritoOperacional; import gcom.operacional.FiltroDistritoOperacional; import gcom.util.ConstantesSistema; import java.util.Collection; import java.util.Iterator; 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; /** * Action respons�vel pela pre-exibi��o do popup de inserir area de bairro * * @author Vivianne Sousa * @created 19/12/2006 */ public class ExibirInserirAreaBairroPopupAction 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) { // Seta o mapeamento de retorno ActionForward retorno = actionMapping.findForward("inserirAreaBairroPopup"); AdicionarAreaBairroActionForm adicionarAreaBairroActionForm = (AdicionarAreaBairroActionForm) actionForm; Fachada fachada = Fachada.getInstancia(); HttpSession sessao = httpServletRequest.getSession(false); String municipioId = ""; String municipioDescricao = ""; String bairroCodigo = ""; String bairroDescricao = ""; FiltroDistritoOperacional filtroDistritoOperacional = new FiltroDistritoOperacional(); filtroDistritoOperacional.setCampoOrderBy(FiltroDistritoOperacional.DESCRICAO); Collection collectionDistritoOperacional = fachada.pesquisar(filtroDistritoOperacional, DistritoOperacional.class.getName()); sessao.setAttribute("collectionDistritoOperacional",collectionDistritoOperacional); if(sessao.getAttribute("BairroActionForm") != null){ BairroActionForm bairroActionForm = (BairroActionForm) sessao.getAttribute("BairroActionForm"); if (bairroActionForm.getIdMunicipio() != null){ municipioId = bairroActionForm.getIdMunicipio(); } if (bairroActionForm.getNomeMunicipio() != null){ municipioDescricao = bairroActionForm.getNomeMunicipio(); } if (bairroActionForm.getCodigoBairro() != null){ bairroCodigo = bairroActionForm.getCodigoBairro(); } if (bairroActionForm.getNomeBairro() != null){ bairroDescricao = bairroActionForm.getNomeBairro(); } adicionarAreaBairroActionForm.setMunicipioId(municipioId); adicionarAreaBairroActionForm.setMunicipioDescricao(municipioDescricao); adicionarAreaBairroActionForm.setBairroCodigo(bairroCodigo); adicionarAreaBairroActionForm.setBairroDescricao(bairroDescricao); } if (httpServletRequest.getParameter("desfazer")!= null){ adicionarAreaBairroActionForm.setAreaBairroNome(""); adicionarAreaBairroActionForm.setDistritoOperacionalID("" + ConstantesSistema.NUMERO_NAO_INFORMADO); // adicionarAreaBairroActionForm.setDistritoOperacionalDescricao(""); } // -------Parte que trata do c�digo quando o usu�rio tecla enter // String distritoOperacionalID = adicionarAreaBairroActionForm.getDistritoOperacionalID(); // // if(distritoOperacionalID != null && // !distritoOperacionalID.equals("")){ // // FiltroDistritoOperacional filtroDistritoOperacional = new FiltroDistritoOperacional(); // // filtroDistritoOperacional // .adicionarParametro(new ParametroSimples( // FiltroDistritoOperacional.ID, // distritoOperacionalID)); // // filtroDistritoOperacional // .adicionarParametro(new ParametroSimples( // FiltroDistritoOperacional.INDICADORUSO, // ConstantesSistema.INDICADOR_USO_ATIVO)); // // //Retorna Distrito Operacional // Collection colecaoPesquisa = fachada.pesquisar(filtroDistritoOperacional, // DistritoOperacional.class.getName()); // // if (colecaoPesquisa == null || colecaoPesquisa.isEmpty()) { // //Distrito Operacional nao encontrado // //Limpa o campo distritoOperacionalID do formul�rio // adicionarAreaBairroActionForm.setDistritoOperacionalID(""); // adicionarAreaBairroActionForm // .setDistritoOperacionalDescricao("Distrito operacional inexistente."); // httpServletRequest.setAttribute("corDistritoOperacional", // "exception"); // // httpServletRequest.setAttribute("nomeCampo", "distritoOperacionalID"); // } else { // DistritoOperacional objetoDistritoOperacional = (DistritoOperacional) Util // .retonarObjetoDeColecao(colecaoPesquisa); // adicionarAreaBairroActionForm.setDistritoOperacionalID(String // .valueOf(objetoDistritoOperacional.getId())); // adicionarAreaBairroActionForm // .setDistritoOperacionalDescricao(objetoDistritoOperacional // .getDescricao()); // httpServletRequest.setAttribute("corDistritoOperacional", // "valor"); // // httpServletRequest.setAttribute("nomeCampo", "setorCensitarioID"); // } // // } //-------Fim da Parte que trata do c�digo quando o usu�rio tecla enter Collection colecaoBairroArea = (Collection)sessao.getAttribute("colecaoBairroArea"); if (httpServletRequest.getParameter("ultimaAlteracao")!= null && !httpServletRequest.getParameter("ultimaAlteracao").equals("")){ String ultimaAlteracao = ((String)httpServletRequest.getParameter("ultimaAlteracao")); Iterator iter = colecaoBairroArea.iterator(); while (iter.hasNext()) { BairroArea bairroArea = (BairroArea) iter.next(); if (bairroArea.getUltimaAlteracao().getTime() == Long.parseLong(ultimaAlteracao)) { adicionarAreaBairroActionForm.setAreaBairroNome(bairroArea.getNome()); if(bairroArea.getDistritoOperacional() != null){ adicionarAreaBairroActionForm.setDistritoOperacionalID("" + bairroArea.getDistritoOperacional().getId()); } // adicionarAreaBairroActionForm.setDistritoOperacionalDescricao(bairroArea.getDistritoOperacional().getDescricao()); } } sessao.setAttribute("atualizar",ultimaAlteracao); }else if (httpServletRequest.getParameter("reloadPopup") == null){ sessao.removeAttribute("atualizar"); } return retorno; } }