package gcom.gui.atendimentopublico; import gcom.atendimentopublico.FiltroLigacaoOrigem; import gcom.atendimentopublico.LigacaoOrigem; import gcom.atendimentopublico.ligacaoagua.CorteTipo; import gcom.atendimentopublico.ligacaoagua.FiltroCorteTipo; import gcom.atendimentopublico.ligacaoagua.FiltroDiametroLigacao; import gcom.atendimentopublico.ligacaoagua.FiltroLigacaoAgua; import gcom.atendimentopublico.ligacaoagua.FiltroMaterialLigacao; import gcom.atendimentopublico.ligacaoagua.FiltroMotivoCorte; import gcom.atendimentopublico.ligacaoagua.FiltroPerfilLigacao; import gcom.atendimentopublico.ligacaoagua.FiltroRamalLocalInstalacao; import gcom.atendimentopublico.ligacaoagua.FiltroSupressaoTipo; import gcom.atendimentopublico.ligacaoagua.LigacaoAgua; import gcom.atendimentopublico.ligacaoagua.LigacaoAguaDiametro; import gcom.atendimentopublico.ligacaoagua.LigacaoAguaMaterial; import gcom.atendimentopublico.ligacaoagua.LigacaoAguaPerfil; import gcom.atendimentopublico.ligacaoagua.LigacaoAguaSituacao; import gcom.atendimentopublico.ligacaoagua.MotivoCorte; import gcom.atendimentopublico.ligacaoagua.RamalLocalInstalacao; import gcom.atendimentopublico.ligacaoagua.SupressaoTipo; import gcom.atendimentopublico.ordemservico.FiltroSupressaoMotivo; import gcom.atendimentopublico.ordemservico.OrdemServico; import gcom.atendimentopublico.ordemservico.SupressaoMotivo; import gcom.cadastro.cliente.Cliente; import gcom.cadastro.cliente.ClienteImovel; import gcom.cadastro.cliente.ClienteRelacaoTipo; import gcom.cadastro.cliente.ClienteTipo; import gcom.cadastro.cliente.FiltroClienteImovel; import gcom.cadastro.imovel.FiltroImovel; import gcom.cadastro.imovel.Imovel; import gcom.cadastro.localidade.Quadra; import gcom.cadastro.localidade.bean.IntegracaoQuadraFaceHelper; import gcom.fachada.Fachada; import gcom.gui.ActionServletException; import gcom.gui.GcomAction; import gcom.micromedicao.hidrometro.HidrometroInstalacaoHistorico; import gcom.seguranca.acesso.PermissaoEspecial; import gcom.seguranca.acesso.usuario.Usuario; import gcom.util.ConstantesSistema; import gcom.util.Util; import gcom.util.filtro.ParametroNulo; import gcom.util.filtro.ParametroSimples; import java.util.ArrayList; import java.util.Collection; import java.util.Date; 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 da pagina de atualizar liga��o de �gua * * @author Rafael Pinto * @created 18/07/2006 */ public class ExibirAtualizarLigacaoAguaAction 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) { HttpSession sessao = httpServletRequest.getSession(false); ActionForward retorno = actionMapping .findForward("atualizarLigacaoAgua"); Usuario usuarioLogado = (Usuario) sessao.getAttribute("usuarioLogado"); AtualizarLigacaoAguaActionForm atualizarLigacaoAguaActionForm = (AtualizarLigacaoAguaActionForm) actionForm; Fachada fachada = Fachada.getInstancia(); Boolean veioEncerrarOS = null; if (httpServletRequest.getAttribute("veioEncerrarOS") != null) { veioEncerrarOS = Boolean.TRUE; } else { veioEncerrarOS = Boolean.FALSE; } // Permissao Especial Efetuar Ligacao de Agua sem RA boolean atualizarLigacaoAguaSemRA = Fachada.getInstancia() .verificarPermissaoEspecial( PermissaoEspecial.ATUALIZAR_LIGACAO_DE_AGUA_SEM_RA, usuarioLogado); atualizarLigacaoAguaActionForm.setPermissaoAlterarOSsemRA("false"); if (!veioEncerrarOS) { httpServletRequest.setAttribute( "atualizarLigacaoAguaSemRA", atualizarLigacaoAguaSemRA); if (atualizarLigacaoAguaSemRA) { atualizarLigacaoAguaActionForm .setPermissaoAlterarOSsemRA("true"); } } String idImovel = null; if (httpServletRequest.getParameter("matriculaImovel") != null && !httpServletRequest.getParameter("matriculaImovel") .equalsIgnoreCase("")) { idImovel = (String) httpServletRequest .getParameter("matriculaImovel"); } else { idImovel = atualizarLigacaoAguaActionForm.getIdImovel(); } if (idImovel != null && !idImovel.trim().equals("")) { // Pesquisa o imovel na base String inscricaoImovelEncontrado = fachada .pesquisarInscricaoImovel(new Integer(idImovel)); if (inscricaoImovelEncontrado != null && !inscricaoImovelEncontrado.equalsIgnoreCase("")) { atualizarLigacaoAguaActionForm.setMatriculaImovel(idImovel); atualizarLigacaoAguaActionForm .setInscricaoImovel(inscricaoImovelEncontrado); atualizarLigacaoAguaActionForm.setDataConcorrencia(new Date()); FiltroImovel filtroImovel = new FiltroImovel(); filtroImovel.adicionarParametro(new ParametroSimples( FiltroImovel.ID, idImovel)); filtroImovel .adicionarCaminhoParaCarregamentoEntidade(FiltroImovel.LIGACAO_AGUA_SITUACAO); filtroImovel .adicionarCaminhoParaCarregamentoEntidade(FiltroImovel.LIGACAO_ESGOTO_SITUACAO); filtroImovel .adicionarCaminhoParaCarregamentoEntidade("hidrometroInstalacaoHistorico"); filtroImovel.adicionarCaminhoParaCarregamentoEntidade("quadra"); Collection colecaoImovel = fachada.pesquisar(filtroImovel, Imovel.class.getName()); Imovel imovel = (Imovel) colecaoImovel.iterator().next(); sessao.setAttribute("imovel", imovel); // [FS0003] Validar Situa��o de Agua do Imovel if (imovel.getLigacaoAguaSituacao().getId().intValue() == LigacaoAguaSituacao.POTENCIAL .intValue() || imovel.getLigacaoAguaSituacao().getId().intValue() == LigacaoAguaSituacao.FACTIVEL .intValue()) { throw new ActionServletException( "atencao.atualizar_ligacao_agua_situacao_invalida", null, imovel.getLigacaoAguaSituacao() .getDescricao() + ""); } /* * [FS0003] Verificar Situa��o Rede de �gua na Quadra * * Integra��o com o conceito de face da quadra * Raphael Rossiter em 22/05/2009 */ IntegracaoQuadraFaceHelper integracao = fachada.integracaoQuadraFace(imovel.getId()); if ((integracao.getIndicadorRedeAgua()).equals(Quadra.SEM_REDE)) { throw new ActionServletException("atencao.seituacao_rede_agua_quadra", null, imovel.getId() + ""); } // [FS0006] Verificar Situa��o do Imovel if (imovel.getIndicadorExclusao() != ConstantesSistema.INDICADOR_IMOVEL_ATIVO) { throw new ActionServletException( "atencao.situacao_imovel_indicador_exclusao", null, imovel.getId() + ""); } atualizarLigacaoAguaActionForm.setSituacaoLigacaoAgua(imovel .getLigacaoAguaSituacao().getDescricao()); atualizarLigacaoAguaActionForm.setSituacaoLigacaoEsgoto(imovel .getLigacaoEsgotoSituacao().getDescricao()); FiltroClienteImovel filtroClienteImovel = new FiltroClienteImovel(); filtroClienteImovel.adicionarParametro(new ParametroSimples( FiltroClienteImovel.IMOVEL_ID, idImovel)); filtroClienteImovel .adicionarCaminhoParaCarregamentoEntidade(FiltroClienteImovel.CLIENTE); filtroClienteImovel .adicionarCaminhoParaCarregamentoEntidade(FiltroClienteImovel.CLIENTE_TIPO); Collection colecaoClienteImovel = fachada.pesquisar( filtroClienteImovel, ClienteImovel.class.getName()); if (colecaoClienteImovel != null && !colecaoClienteImovel.isEmpty()) { ClienteImovel clienteImovel = (ClienteImovel) colecaoClienteImovel .iterator().next(); atualizarLigacaoAguaActionForm .setClienteUsuario(clienteImovel.getCliente() .getNome()); if (clienteImovel.getCliente().getClienteTipo().getId() .intValue() == ClienteTipo.INDICADOR_PESSOA_FISICA .intValue()) { atualizarLigacaoAguaActionForm .setCpfCnpjCliente(clienteImovel.getCliente() .getCpfFormatado()); } else if (clienteImovel.getCliente().getClienteTipo() .getId().intValue() == ClienteTipo.INDICADOR_PESSOA_JURIDICA .intValue()) { atualizarLigacaoAguaActionForm .setCpfCnpjCliente(clienteImovel.getCliente() .getCnpjFormatado()); } else { atualizarLigacaoAguaActionForm.setCpfCnpjCliente(""); } } // ------------------ Dados da Ligacao de // Agua-------------------------- // Valida��o do select boolean habilitaCorte = true; boolean habilitaSupressao = true; FiltroLigacaoAgua filtroLigacaoAgua = new FiltroLigacaoAgua(); filtroLigacaoAgua.adicionarParametro(new ParametroSimples( FiltroLigacaoAgua.ID, idImovel)); filtroLigacaoAgua .adicionarCaminhoParaCarregamentoEntidade("supressaoTipo"); filtroLigacaoAgua .adicionarCaminhoParaCarregamentoEntidade("ligacaoAguaPerfil"); filtroLigacaoAgua .adicionarCaminhoParaCarregamentoEntidade("ligacaoAguaDiametro"); filtroLigacaoAgua .adicionarCaminhoParaCarregamentoEntidade("motivoCorte"); filtroLigacaoAgua .adicionarCaminhoParaCarregamentoEntidade("supressaoMotivo"); filtroLigacaoAgua .adicionarCaminhoParaCarregamentoEntidade("ramalLocalInstalacao"); filtroLigacaoAgua .adicionarCaminhoParaCarregamentoEntidade("ligacaoOrigem"); filtroLigacaoAgua .adicionarCaminhoParaCarregamentoEntidade("ligacaoAguaPerfil"); filtroLigacaoAgua .adicionarCaminhoParaCarregamentoEntidade("hidrometroInstalacaoHistorico"); filtroLigacaoAgua .adicionarCaminhoParaCarregamentoEntidade("hidrometroInstalacaoHistorico"); Collection colecaoLigacaoAgua = fachada.pesquisar( filtroLigacaoAgua, LigacaoAgua.class.getName()); if (colecaoLigacaoAgua != null && !colecaoLigacaoAgua.isEmpty()) { LigacaoAgua ligacaoAgua = (LigacaoAgua) colecaoLigacaoAgua .iterator().next(); imovel.setLigacaoAgua(ligacaoAgua); this.setarDadosLigacaoAgua(atualizarLigacaoAguaActionForm, ligacaoAgua, imovel, habilitaCorte, habilitaSupressao, httpServletRequest, sessao, fachada); } httpServletRequest.setAttribute("habilitaDataLigacao", true); } else { httpServletRequest.setAttribute("corImovel", "exception"); atualizarLigacaoAguaActionForm .setInscricaoImovel(ConstantesSistema.CODIGO_IMOVEL_INEXISTENTE); } } String idOrdemServico = atualizarLigacaoAguaActionForm .getIdOrdemServico(); if (idOrdemServico != null && !idOrdemServico.trim().equals("")) { OrdemServico ordemServico = fachada.recuperaOSPorId(new Integer( idOrdemServico)); if (ordemServico != null) { fachada.validarExibirLigacaoAguaImovel(ordemServico, veioEncerrarOS); atualizarLigacaoAguaActionForm.setVeioEncerrarOS("" + veioEncerrarOS); atualizarLigacaoAguaActionForm.setDataConcorrencia(new Date()); Imovel imovel = ordemServico.getRegistroAtendimento() .getImovel(); LigacaoAgua ligacaoAgua = imovel.getLigacaoAgua(); sessao.setAttribute("ordemServico", ordemServico); // Valida��o do select boolean habilitaCorte = true; boolean habilitaSupressao = true; atualizarLigacaoAguaActionForm .setIdOrdemServico(idOrdemServico); atualizarLigacaoAguaActionForm.setNomeOrdemServico(ordemServico .getServicoTipo().getDescricao()); atualizarLigacaoAguaActionForm.setServicoTipo("" + ordemServico.getServicoTipo().getId()); /*-------------- In�cio dados do Im�vel---------------*/ String matriculaImovel = "" + imovel.getId(); String inscricaoImovel = imovel.getInscricaoFormatada(); atualizarLigacaoAguaActionForm .setMatriculaImovel(matriculaImovel); atualizarLigacaoAguaActionForm .setInscricaoImovel(inscricaoImovel); // [FS0003] Validar Situa��o de Agua do Imovel if (imovel.getLigacaoAguaSituacao().getId().intValue() == LigacaoAguaSituacao.POTENCIAL .intValue() || imovel.getLigacaoAguaSituacao().getId().intValue() == LigacaoAguaSituacao.FACTIVEL .intValue()) { throw new ActionServletException( "atencao.atualizar_ligacao_agua_situacao_invalida", null, imovel.getLigacaoAguaSituacao() .getDescricao() + ""); } /* * [FS0003] Verificar Situa��o Rede de �gua na Quadra * * Integra��o com o conceito de face da quadra * Raphael Rossiter em 22/05/2009 */ IntegracaoQuadraFaceHelper integracao = fachada.integracaoQuadraFace(imovel.getId()); if ((integracao.getIndicadorRedeAgua()).equals(Quadra.SEM_REDE)) { throw new ActionServletException("atencao.seituacao_rede_agua_quadra", null, imovel.getId() + ""); } // [FS0006] Verificar Situa��o do Imovel if (imovel.getIndicadorExclusao() != ConstantesSistema.INDICADOR_IMOVEL_ATIVO) { throw new ActionServletException( "atencao.situacao_imovel_indicador_exclusao", null, imovel.getId() + ""); } // Situa��o da Liga��o de Agua String situacaoLigacaoAgua = imovel.getLigacaoAguaSituacao() .getDescricao(); atualizarLigacaoAguaActionForm .setSituacaoLigacaoAgua(situacaoLigacaoAgua); // Situa��o da Liga��o de Esgoto String situacaoLigacaoEsgoto = imovel .getLigacaoEsgotoSituacao().getDescricao(); atualizarLigacaoAguaActionForm .setSituacaoLigacaoEsgoto(situacaoLigacaoEsgoto); /*-------------- In�cio dados da LigacaoAgua---------------*/ this.setarDadosLigacaoAgua(atualizarLigacaoAguaActionForm, ligacaoAgua, imovel, habilitaCorte, habilitaSupressao, httpServletRequest, sessao, fachada); } else { atualizarLigacaoAguaActionForm.setHabilitaCorte("true"); atualizarLigacaoAguaActionForm.setHabilitaSupressao("true"); atualizarLigacaoAguaActionForm .setNomeOrdemServico("Ordem de Servi�o inexistente"); atualizarLigacaoAguaActionForm.setIdOrdemServico(""); } } this.consultaSelectObrigatorio(sessao); this.setaRequest(httpServletRequest, atualizarLigacaoAguaActionForm); return retorno; } private void consultaSelectObrigatorio(HttpSession sessao) { Fachada fachada = Fachada.getInstancia(); // Filtro para o campo Diametro Liga��o �gua Collection colecaoDiametroLigacao = (Collection) sessao .getAttribute("colecaoDiametroLigacaoAgua"); if (colecaoDiametroLigacao == null) { FiltroDiametroLigacao filtroDiametroLigacao = new FiltroDiametroLigacao(); filtroDiametroLigacao.adicionarParametro(new ParametroSimples( FiltroDiametroLigacao.INDICADOR_USO, ConstantesSistema.INDICADOR_USO_ATIVO)); filtroDiametroLigacao .setCampoOrderBy(FiltroDiametroLigacao.DESCRICAO); colecaoDiametroLigacao = fachada.pesquisar(filtroDiametroLigacao, LigacaoAguaDiametro.class.getName()); if (colecaoDiametroLigacao != null && !colecaoDiametroLigacao.isEmpty()) { sessao.setAttribute("colecaoDiametroLigacaoAgua", colecaoDiametroLigacao); } else { throw new ActionServletException("atencao.naocadastrado", null, "Diametro da Liga��o"); } } // Filtro para o campo Material da Liga��o Collection colecaoMaterialLigacao = (Collection) sessao .getAttribute("colecaoMaterialLigacao"); if (colecaoMaterialLigacao == null) { FiltroMaterialLigacao filtroMaterialLigacao = new FiltroMaterialLigacao(); filtroMaterialLigacao.adicionarParametro(new ParametroSimples( FiltroMaterialLigacao.INDICADOR_USO, ConstantesSistema.INDICADOR_USO_ATIVO)); filtroMaterialLigacao .setCampoOrderBy(FiltroMaterialLigacao.DESCRICAO); colecaoMaterialLigacao = fachada.pesquisar(filtroMaterialLigacao, LigacaoAguaMaterial.class.getName()); if (colecaoMaterialLigacao != null && !colecaoMaterialLigacao.isEmpty()) { sessao.setAttribute("colecaoMaterialLigacao", colecaoMaterialLigacao); } else { throw new ActionServletException("atencao.naocadastrado", null, "Material da Liga��o"); } } // Filtro para o campo Perfil da Liga��o Collection colecaoPerfilLigacao = (Collection) sessao .getAttribute("colecaoPerfilLigacao"); if (colecaoPerfilLigacao == null) { FiltroPerfilLigacao filtroPerfilLigacao = new FiltroPerfilLigacao(); filtroPerfilLigacao.adicionarParametro(new ParametroSimples( FiltroPerfilLigacao.INDICADOR_USO, ConstantesSistema.INDICADOR_USO_ATIVO)); filtroPerfilLigacao.setCampoOrderBy(FiltroPerfilLigacao.DESCRICAO); colecaoPerfilLigacao = fachada.pesquisar(filtroPerfilLigacao, LigacaoAguaPerfil.class.getName()); if (colecaoPerfilLigacao != null && !colecaoPerfilLigacao.isEmpty()) { sessao.setAttribute("colecaoPerfilLigacao", colecaoPerfilLigacao); } else { throw new ActionServletException("atencao.naocadastrado", null, "Material da Liga��o"); } } // Filtro para o campo Ramal local instalacao Collection colecaoRamalLocalInstalacao = (Collection) sessao .getAttribute("colecaoRamalLocalInstalacao"); if (colecaoRamalLocalInstalacao == null) { FiltroRamalLocalInstalacao filtroRamalLocalInstalacao = new FiltroRamalLocalInstalacao(); filtroRamalLocalInstalacao.adicionarParametro(new ParametroSimples( FiltroRamalLocalInstalacao.INDICADOR_USO, ConstantesSistema.INDICADOR_USO_ATIVO)); filtroRamalLocalInstalacao .setCampoOrderBy(FiltroPerfilLigacao.DESCRICAO); colecaoRamalLocalInstalacao = fachada.pesquisar( filtroRamalLocalInstalacao, RamalLocalInstalacao.class .getName()); if (colecaoRamalLocalInstalacao != null && !colecaoRamalLocalInstalacao.isEmpty()) { sessao.setAttribute("colecaoRamalLocalInstalacao", colecaoRamalLocalInstalacao); } else { throw new ActionServletException("atencao.naocadastrado", null, "Local de Instala��o do Ramal"); } } // Filtro para o campo Ligacao origem Collection colecaoLigacaoOrigem = (Collection) sessao .getAttribute("colecaoLigacaoOrigem"); if (colecaoLigacaoOrigem == null) { FiltroLigacaoOrigem filtroLigacaoOrigem = new FiltroLigacaoOrigem(); filtroLigacaoOrigem.adicionarParametro(new ParametroSimples( FiltroLigacaoOrigem.INDICADOR_USO, ConstantesSistema.INDICADOR_USO_ATIVO)); filtroLigacaoOrigem.setCampoOrderBy(FiltroLigacaoOrigem.DESCRICAO); colecaoLigacaoOrigem = fachada.pesquisar(filtroLigacaoOrigem, LigacaoOrigem.class.getName()); if (colecaoLigacaoOrigem != null && !colecaoLigacaoOrigem.isEmpty()) { sessao.setAttribute("colecaoLigacaoOrigem", colecaoLigacaoOrigem); } else { sessao.setAttribute("colecaoLigacaoOrigem", new ArrayList()); } } // Filtro para o campo Motivo Corte Collection colecaoMotivoCorte = (Collection) sessao .getAttribute("colecaoMotivoCorte"); if (colecaoMotivoCorte == null) { FiltroMotivoCorte filtroMotivoCorte = new FiltroMotivoCorte(); filtroMotivoCorte.adicionarParametro(new ParametroSimples( FiltroMotivoCorte.INDICADOR_USO, ConstantesSistema.INDICADOR_USO_ATIVO)); filtroMotivoCorte.setCampoOrderBy(FiltroMotivoCorte.DESCRICAO); colecaoMotivoCorte = fachada.pesquisar(filtroMotivoCorte, MotivoCorte.class.getName()); if (colecaoMotivoCorte != null && !colecaoMotivoCorte.isEmpty()) { sessao.setAttribute("colecaoMotivoCorte", colecaoMotivoCorte); } else { throw new ActionServletException("atencao.naocadastrado", null, "Motivo Corte"); } } // Filtro para o campo Tipo Corte Collection colecaoTipoCorte = (Collection) sessao .getAttribute("colecaoTipoCorte"); if (colecaoTipoCorte == null) { FiltroCorteTipo filtroCorteTipo = new FiltroCorteTipo(); filtroCorteTipo.adicionarParametro(new ParametroSimples( FiltroCorteTipo.INDICADOR_USO, ConstantesSistema.INDICADOR_USO_ATIVO)); filtroCorteTipo.setCampoOrderBy(FiltroCorteTipo.DESCRICAO); colecaoTipoCorte = fachada.pesquisar(filtroCorteTipo, CorteTipo.class.getName()); if (colecaoTipoCorte != null && !colecaoTipoCorte.isEmpty()) { sessao.setAttribute("colecaoTipoCorte", colecaoTipoCorte); } else { throw new ActionServletException("atencao.naocadastrado", null, "Tipo Corte"); } } // Filtro para o campo Supressao Motivo Collection colecaoSupressaoMotivo = (Collection) sessao .getAttribute("colecaoSupressaoMotivo"); if (colecaoSupressaoMotivo == null) { FiltroSupressaoMotivo filtroSupressaoMotivo = new FiltroSupressaoMotivo(); filtroSupressaoMotivo.adicionarParametro(new ParametroSimples( FiltroSupressaoMotivo.INDICADOR_USO, ConstantesSistema.INDICADOR_USO_ATIVO)); filtroSupressaoMotivo .setCampoOrderBy(FiltroSupressaoMotivo.DESCRICAO); colecaoSupressaoMotivo = fachada.pesquisar(filtroSupressaoMotivo, SupressaoMotivo.class.getName()); if (colecaoSupressaoMotivo != null && !colecaoSupressaoMotivo.isEmpty()) { sessao.setAttribute("colecaoSupressaoMotivo", colecaoSupressaoMotivo); } else { throw new ActionServletException("atencao.naocadastrado", null, "Motivo Supressao"); } } // Filtro para o campo Supressao Motivo Collection colecaoSupressaoTipo = (Collection) sessao .getAttribute("colecaoSupressaoTipo"); if (colecaoSupressaoTipo == null) { FiltroSupressaoTipo filtroSupressaoTipo = new FiltroSupressaoTipo(); filtroSupressaoTipo.adicionarParametro(new ParametroSimples( FiltroSupressaoTipo.INDICADOR_USO, ConstantesSistema.INDICADOR_USO_ATIVO)); filtroSupressaoTipo .setCampoOrderBy(FiltroSupressaoTipo.DESCRICAO); colecaoSupressaoTipo = fachada.pesquisar(filtroSupressaoTipo, SupressaoTipo.class.getName()); if (colecaoSupressaoTipo != null && !colecaoSupressaoMotivo.isEmpty()) { sessao.setAttribute("colecaoSupressaoTipo", colecaoSupressaoTipo); } else { throw new ActionServletException("atencao.naocadastrado", null, "Tipo Supressao"); } } } /** * Pesquisa Cliente * * @author Rafael Pinto * @date 25/08/2006 */ private void pesquisarCliente( AtualizarLigacaoAguaActionForm atualizarLigacaoAguaActionForm) { // Filtro para carregar o Cliente FiltroClienteImovel filtroClienteImovel = new FiltroClienteImovel(); filtroClienteImovel.adicionarParametro(new ParametroSimples( FiltroClienteImovel.IMOVEL_ID, atualizarLigacaoAguaActionForm .getMatriculaImovel())); filtroClienteImovel.adicionarParametro(new ParametroSimples( FiltroClienteImovel.CLIENTE_RELACAO_TIPO, ClienteRelacaoTipo.USUARIO)); filtroClienteImovel.adicionarParametro(new ParametroNulo( FiltroClienteImovel.DATA_FIM_RELACAO)); filtroClienteImovel.adicionarCaminhoParaCarregamentoEntidade("cliente"); Collection colecaoClienteImovel = Fachada.getInstancia().pesquisar( filtroClienteImovel, ClienteImovel.class.getName()); if (colecaoClienteImovel != null && !colecaoClienteImovel.isEmpty()) { ClienteImovel clienteImovel = (ClienteImovel) colecaoClienteImovel .iterator().next(); Cliente cliente = clienteImovel.getCliente(); String documento = ""; if (cliente.getCpf() != null && !cliente.getCpf().equals("")) { documento = cliente.getCpfFormatado(); } else { documento = cliente.getCnpjFormatado(); } // Cliente Nome/CPF-CNPJ atualizarLigacaoAguaActionForm.setClienteUsuario(cliente.getNome()); atualizarLigacaoAguaActionForm.setCpfCnpjCliente(documento); } else { throw new ActionServletException("atencao.naocadastrado", null, "Cliente"); } } /** * Seta os request com os id encontrados * * @author Rafael Pinto * @date 16/08/2006 */ private void setaRequest(HttpServletRequest httpServletRequest, AtualizarLigacaoAguaActionForm atualizarLigacaoAguaActionForm) { // Imovel if (atualizarLigacaoAguaActionForm.getMatriculaImovel() != null && !atualizarLigacaoAguaActionForm.getMatriculaImovel().equals( "") && atualizarLigacaoAguaActionForm.getInscricaoImovel() != null && !atualizarLigacaoAguaActionForm.getInscricaoImovel().equals( "")) { httpServletRequest.setAttribute("numeroOsEncontrada", "true"); } } /** * Este metodo seta os dados da ligacao de agua no formulario * * * @author R�mulo Aur�lio * @date 04/09/2008 * * * @param atualizarLigacaoAguaActionForm * @param ligacaoAgua * @param imovel * @param habilitaCorte * @param habilitaSupressao * @param httpServletRequest * @param sessao * @param fachada */ private void setarDadosLigacaoAgua( AtualizarLigacaoAguaActionForm atualizarLigacaoAguaActionForm, LigacaoAgua ligacaoAgua, Imovel imovel, boolean habilitaCorte, boolean habilitaSupressao, HttpServletRequest httpServletRequest, HttpSession sessao, Fachada fachada) { // Data de Ligacao String dataLigacao = Util.formatarData(ligacaoAgua.getDataLigacao()); atualizarLigacaoAguaActionForm.setDataLigacao(dataLigacao); // Diametro da Liga��o String diametroLigacao = "" + ligacaoAgua.getLigacaoAguaDiametro().getId(); atualizarLigacaoAguaActionForm.setDiametroLigacao(diametroLigacao); // Material da Liga��o String materialLigacao = "" + ligacaoAgua.getLigacaoAguaMaterial().getId(); atualizarLigacaoAguaActionForm.setMaterialLigacao(materialLigacao); // Perfil da Liga��o if (ligacaoAgua.getLigacaoAguaPerfil() != null) { String perfilLigacao = "" + ligacaoAgua.getLigacaoAguaPerfil().getId(); atualizarLigacaoAguaActionForm.setPerfilLigacao(perfilLigacao); } if (ligacaoAgua.getLigacaoOrigem() != null) { atualizarLigacaoAguaActionForm.setIdLigacaoOrigem(ligacaoAgua .getLigacaoOrigem().getId().toString()); } // Local de Instala��o do Ramal if (ligacaoAgua.getRamalLocalInstalacao() != null) { String ramal = "" + ligacaoAgua.getRamalLocalInstalacao().getId(); atualizarLigacaoAguaActionForm.setRamalLocalInstalacao(ramal); } // Tipo Corte if (ligacaoAgua.getCorteTipo() != null) { String tipoCorte = "" + ligacaoAgua.getCorteTipo().getId(); atualizarLigacaoAguaActionForm.setTipoCorte(tipoCorte); } // Motivo Corte if (ligacaoAgua.getMotivoCorte() != null) { String motivoCorte = "" + ligacaoAgua.getMotivoCorte().getId(); atualizarLigacaoAguaActionForm.setMotivoCorte(motivoCorte); } // Selo Corte if (ligacaoAgua.getNumeroSeloCorte() != null) { String seloCorte = "" + ligacaoAgua.getNumeroSeloCorte(); atualizarLigacaoAguaActionForm.setNumSeloCorte(seloCorte); } // Motivo Supressao if (ligacaoAgua.getSupressaoMotivo() != null) { String supressaoMotivo = "" + ligacaoAgua.getSupressaoMotivo().getId(); atualizarLigacaoAguaActionForm.setMotivoSupressao(supressaoMotivo); } // Tipo Supressao if (ligacaoAgua.getSupressaoTipo() != null) { String tipoSupressao = "" + ligacaoAgua.getSupressaoTipo().getId(); atualizarLigacaoAguaActionForm.setTipoSupressao(tipoSupressao); } // Selo Supressao if (ligacaoAgua.getNumeroSeloSupressao() != null) { String seloSupressao = "" + ligacaoAgua.getNumeroSeloSupressao(); atualizarLigacaoAguaActionForm.setNumSeloSupressao(seloSupressao); } // Lacre if (ligacaoAgua.getNumeroLacre() != null) { atualizarLigacaoAguaActionForm.setAceitaLacre("" + ConstantesSistema.INDICADOR_USO_ATIVO); atualizarLigacaoAguaActionForm.setNumeroLacre(ligacaoAgua .getNumeroLacre()); } else { atualizarLigacaoAguaActionForm.setAceitaLacre("" + ConstantesSistema.INDICADOR_USO_DESATIVO); atualizarLigacaoAguaActionForm.setNumeroLacre(""); } // Cliente this.pesquisarCliente(atualizarLigacaoAguaActionForm); if (imovel.getLigacaoAguaSituacao().getId().intValue() != LigacaoAguaSituacao.CORTADO .intValue()) { habilitaCorte = false; } if (imovel.getLigacaoAguaSituacao().getId().intValue() != LigacaoAguaSituacao.SUPRIMIDO .intValue() && imovel.getLigacaoAguaSituacao().getId().intValue() != LigacaoAguaSituacao.SUPR_PARC .intValue()) { habilitaSupressao = false; } HidrometroInstalacaoHistorico hidrometroInstalacaoHistorico = imovel .getLigacaoAgua().getHidrometroInstalacaoHistorico(); if (hidrometroInstalacaoHistorico != null) { atualizarLigacaoAguaActionForm.setLeituraCorte(Util .converterObjetoParaString(hidrometroInstalacaoHistorico .getNumeroLeituraCorte())); atualizarLigacaoAguaActionForm.setLeituraSupressao(Util .converterObjetoParaString(hidrometroInstalacaoHistorico .getNumeroLeituraSupressao())); } httpServletRequest.setAttribute("hidrometroInstalacaoHistorico", hidrometroInstalacaoHistorico); atualizarLigacaoAguaActionForm.setHabilitaCorte("" + habilitaCorte); atualizarLigacaoAguaActionForm.setHabilitaSupressao("" + habilitaSupressao); // Filtro para o campo Supressao Tipo if (habilitaSupressao) { FiltroSupressaoTipo filtroSupressaoTipo = new FiltroSupressaoTipo(); String indicador = null; if (imovel.getLigacaoAguaSituacao().getId().intValue() == LigacaoAguaSituacao.SUPRIMIDO .intValue()) { indicador = FiltroSupressaoTipo.INDICADOR_TOTAL; } else if (imovel.getLigacaoAguaSituacao().getId().intValue() == LigacaoAguaSituacao.SUPR_PARC .intValue()) { indicador = FiltroSupressaoTipo.INDICADOR_PARCIAL; } filtroSupressaoTipo.adicionarParametro(new ParametroSimples( FiltroSupressaoTipo.INDICADOR_USO, ConstantesSistema.INDICADOR_USO_ATIVO)); filtroSupressaoTipo.adicionarParametro(new ParametroSimples( indicador, ConstantesSistema.SIM)); filtroSupressaoTipo.setCampoOrderBy(FiltroSupressaoTipo.DESCRICAO); Collection colecaoSupressaoTipo = fachada.pesquisar( filtroSupressaoTipo, SupressaoTipo.class.getName()); if (colecaoSupressaoTipo != null && !colecaoSupressaoTipo.isEmpty()) { sessao.setAttribute("colecaoSupressaoTipo", colecaoSupressaoTipo); } else { throw new ActionServletException("atencao.naocadastrado", null, "Motivo Supressao"); } }// habilitaSupressao } }