package gcom.gui.arrecadacao.banco; import gcom.arrecadacao.banco.Agencia; import gcom.arrecadacao.banco.Banco; import gcom.arrecadacao.banco.FiltroBanco; import gcom.fachada.Fachada; import gcom.gui.ActionServletException; import gcom.gui.GcomAction; import gcom.util.ConstantesSistema; import gcom.util.Util; import gcom.util.filtro.ParametroSimples; 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; public class AtualizarAgenciaBancariaAction extends GcomAction { public ActionForward execute(ActionMapping actionMapping, ActionForm actionForm, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) { // Seta o retorno ActionForward retorno = actionMapping.findForward("telaSucesso"); // Obt�m a inst�ncia da fachada Fachada fachada = Fachada.getInstancia(); // Mudar isso quando tiver esquema de seguran�a HttpSession sessao = httpServletRequest.getSession(false); AtualizarAgenciaBancariaActionForm atualizarAgenciaBancariaActionForm = (AtualizarAgenciaBancariaActionForm) actionForm; Agencia agencia = (Agencia) sessao.getAttribute("agenciaAtualizar"); agencia.setCodigoAgencia(atualizarAgenciaBancariaActionForm .getCodigo()); agencia.setNomeAgencia(atualizarAgenciaBancariaActionForm.getNome()); Collection colecaoEnderecos = (Collection) sessao .getAttribute("colecaoEnderecos"); agencia.setNumeroTelefone(atualizarAgenciaBancariaActionForm .getTelefone()); agencia.setNumeroRamal(atualizarAgenciaBancariaActionForm.getRamal()); agencia.setNumeroFax(atualizarAgenciaBancariaActionForm.getFax()); agencia.setEmail(atualizarAgenciaBancariaActionForm.getEmail()); String codigo = atualizarAgenciaBancariaActionForm .getCodigo(); String nome = atualizarAgenciaBancariaActionForm .getNome(); if (colecaoEnderecos != null && !colecaoEnderecos.isEmpty()) { Agencia agenciaEndereco = (Agencia) Util .retonarObjetoDeColecao(colecaoEnderecos); agencia.setLogradouroCep(agenciaEndereco.getLogradouroCep()); agencia.setLogradouroBairro(agenciaEndereco.getLogradouroBairro()); agencia.setEnderecoReferencia(agenciaEndereco.getEnderecoReferencia()); agencia.setComplementoEndereco(agenciaEndereco.getComplementoEndereco()); agencia.setNumeroImovel(agenciaEndereco.getNumeroImovel()); } else { throw new ActionServletException( "atencao.campo_selecionado.obrigatorio", null, "Endere�o"); } agencia.setCodigoAgencia(codigo); agencia.setNomeAgencia(nome); // AtendimentoMotivoEncerramento atendimentoMotivoEncerramento = null; if (atualizarAgenciaBancariaActionForm.getBancoID() != null) { Integer idBanco = new Integer(atualizarAgenciaBancariaActionForm .getBancoID()); if (idBanco.equals(ConstantesSistema.NUMERO_NAO_INFORMADO)) { agencia.setBanco(null); } else { FiltroBanco filtroBanco = new FiltroBanco(); filtroBanco.adicionarParametro(new ParametroSimples( FiltroBanco.ID, atualizarAgenciaBancariaActionForm .getBancoID().toString())); Collection colecaoBanco = (Collection) fachada.pesquisar( filtroBanco, Banco.class.getName()); // setando agencia.setBanco((Banco) colecaoBanco.iterator().next()); } } fachada.atualizarAgenciaBancaria(agencia); montarPaginaSucesso(httpServletRequest, "Ag�ncia Banc�ria de c�digo " + agencia.getCodigoAgencia().toString() + " atualizado com sucesso.", "Realizar outra Manuten��o de Ag�ncia Bancaria", "exibirFiltrarAgenciaBancariaAction.do?menu=sim"); return retorno; } }