package gcom.gui.cadastro.imovel; import gcom.cadastro.imovel.FiltroImovel; import gcom.cadastro.imovel.Imovel; import gcom.cadastro.imovel.bean.ImovelAbaLocalidadeHelper; import gcom.cadastro.imovel.bean.ImovelAbaLocalidadeRetornoHelper; import gcom.fachada.Fachada; import gcom.gui.GcomAction; import gcom.gui.StatusWizard; import gcom.seguranca.acesso.usuario.Usuario; import gcom.util.Util; import gcom.util.filtro.ParametroSimples; import java.util.ArrayList; 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; import org.apache.struts.validator.DynaValidatorForm; /** * Classe respon�vel pela valida��o dos dados que formar�o a inscri��o do im�vel * * @author Raphael Rossiter * @date 12/05/2009 */ public class AtualizarImovelLocalidadeAction extends GcomAction { public ActionForward execute(ActionMapping actionMapping, ActionForm actionForm, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) { ActionForward retorno = actionMapping.findForward("gerenciadorProcesso"); HttpSession sessao = httpServletRequest.getSession(false); DynaValidatorForm atualizarImovelLocalidadeActionForm = (DynaValidatorForm) actionForm; sessao.removeAttribute("gis"); Imovel imovel = (Imovel) sessao.getAttribute("imovelAtualizacao"); String idLocalidade = null; String idSetorComercial = null; String idQuadra = null; String idQuadraFace = null; String lote = null; String subLote = null; String sequencialRota = null; //RECEBENDO AS INFORMACOES INSERIDAS NO FORMULARIO idLocalidade = (String) atualizarImovelLocalidadeActionForm.get("idLocalidade"); idSetorComercial = (String) atualizarImovelLocalidadeActionForm.get("idSetorComercial"); idQuadra = (String) atualizarImovelLocalidadeActionForm.get("idQuadra"); idQuadraFace = (String) atualizarImovelLocalidadeActionForm.get("idQuadraFace"); lote = (String) atualizarImovelLocalidadeActionForm.get("lote"); subLote = (String) atualizarImovelLocalidadeActionForm.get("subLote"); sequencialRota = (String)atualizarImovelLocalidadeActionForm.get("sequencialRota"); // Obt�m a inst�ncia da Fachada Fachada fachada = Fachada.getInstancia(); // Validacao dos dados ImovelAbaLocalidadeHelper helper = new ImovelAbaLocalidadeHelper(); helper.setIdImovel(imovel.getId()); helper.setIdLocalidade(idLocalidade); helper.setCodigoSetorComercial(idSetorComercial); helper.setNumeroQuadra(idQuadra); helper.setIdQuadraFace(idQuadraFace); helper.setLote(lote); helper.setSublote(subLote); helper.setUsuario((Usuario)sessao.getAttribute(Usuario.USUARIO_LOGADO)); ImovelAbaLocalidadeRetornoHelper resultado = fachada.validarImovelAbaLocalidade(helper); Collection setorComerciais = new ArrayList(); setorComerciais.add(resultado.getSetorComercial()); sessao.setAttribute("localidade", resultado.getLocalidade()); sessao.setAttribute("setorComerciais", setorComerciais); sessao.setAttribute("setorComercial", resultado.getSetorComercial()); sessao.setAttribute("quadra", resultado.getQuadra()); sessao.setAttribute("quadraFace", resultado.getQuadraFace()); sessao.setAttribute("quadraCaracteristicas", resultado.getQuadra()); //validacao sequencial rota([FS0020]) if(sequencialRota != null && !sequencialRota.trim().equals("") && idLocalidade != null && !idLocalidade.trim().equalsIgnoreCase("") && idSetorComercial != null && !idSetorComercial.trim().equalsIgnoreCase("") && idQuadra != null && !idQuadra.trim().equalsIgnoreCase("")){ FiltroImovel filtroImovel = new FiltroImovel(); filtroImovel.adicionarParametro(new ParametroSimples( FiltroImovel.LOCALIDADE_ID, new Integer(idLocalidade))); filtroImovel.adicionarParametro(new ParametroSimples( FiltroImovel.SETOR_COMERCIAL_CODIGO, new Integer( idSetorComercial))); filtroImovel.adicionarParametro(new ParametroSimples( FiltroImovel.QUADRA_NUMERO, new Integer(idQuadra))); filtroImovel.adicionarParametro(new ParametroSimples(FiltroImovel.NUMERO_SEQUENCIAL_ROTA, sequencialRota)); Collection imoveis = fachada.pesquisar(filtroImovel, Imovel.class .getName()); StatusWizard statusWizard = (StatusWizard)sessao.getAttribute("statusWizard"); String idImovel = statusWizard.getId(); if (!imoveis.isEmpty()) { Iterator iterator = imoveis.iterator(); while(iterator.hasNext()){ Imovel imovelSequencial = (Imovel)iterator.next(); if(imovelSequencial.getNumeroSequencialRota().toString().equals(sequencialRota) && !imovelSequencial.getId().toString().equals(idImovel)){ retorno = montarPaginaConfirmacaoWizard( "atencao.imovel.ja.existe.na.sequencia.rota", httpServletRequest, actionMapping); //throw new ActionServletException("atencao.imovel.ja.existe.na.sequencia.rota",null); } } } } String localiade = Util.adicionarZerosEsquedaNumero(3, new Integer( idLocalidade.trim()).toString()); String codigoSetorComercial = Util.adicionarZerosEsquedaNumero(3, new Integer(idSetorComercial.trim()).toString()); String quadra = Util.adicionarZerosEsquedaNumero(3, new Integer( idQuadra.trim()).toString()); String numeroLote = Util.adicionarZerosEsquedaNumero(4, new Integer( lote.trim()).toString()); String numerosublote = Util.adicionarZerosEsquedaNumero(3, new Integer( subLote.trim()).toString()); // atribui os valores q vem pelo request as variaveis atualizarImovelLocalidadeActionForm.set("idLocalidade", localiade); atualizarImovelLocalidadeActionForm.set("idSetorComercial", codigoSetorComercial); atualizarImovelLocalidadeActionForm.set("idQuadra", quadra); atualizarImovelLocalidadeActionForm.set("lote", numeroLote); atualizarImovelLocalidadeActionForm.set("subLote", numerosublote); return retorno; } }