package gcom.gui.operacional; import gcom.gui.GcomAction; import gcom.operacional.FiltroFonteCaptacao; import gcom.operacional.FiltroTipoCaptacao; import gcom.operacional.FonteCaptacao; import gcom.operacional.TipoCaptacao; 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 org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionForward; import org.apache.struts.action.ActionMapping; public class ExibirInserirSistemaAbastecimentoAction extends GcomAction { public ActionForward execute(ActionMapping actionMapping, ActionForm actionForm, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) { //Seta o retorno ActionForward retorno = actionMapping.findForward("exibirInserirSistemaAbastecimentoAction"); InserirSistemaAbastecimentoActionForm form = (InserirSistemaAbastecimentoActionForm) actionForm; String objetoConsulta = (String) httpServletRequest.getParameter("objetoConsulta"); if(httpServletRequest.getParameter("menu")!= null && httpServletRequest.getParameter("menu").equals("sim")){ form.setTipoCaptacao(""); } if (objetoConsulta != null && !objetoConsulta.trim().equalsIgnoreCase("")) { //Collection colecaoPesquisa = null; switch (Integer.parseInt(objetoConsulta)) { case 1: //TIpo Captacao TipoCaptacao objetoTipoCaptacao = this.pesquisarTipoCaptacao(form.getTipoCaptacao()); if (objetoTipoCaptacao == null) { form.setTipoCaptacao(""); form.setDescricaoTipoCaptacao("Tipo de Capta��o inexistente."); //Limpa a Fonte de Captacao form.setFonteCaptacao(""); form.setDescricaoFonteCaptacao(""); }else{ form.setTipoCaptacao(String.valueOf(objetoTipoCaptacao.getId())); form.setDescricaoTipoCaptacao(objetoTipoCaptacao.getDescricao()); httpServletRequest.setAttribute("tipoCaptacaoEncontrado", true); } break; case 2: //Fonte Captacao FonteCaptacao objetoFonteCaptacao = this.pesquisarFonteCaptacao(form.getFonteCaptacao()); if (objetoFonteCaptacao == null) { form.setFonteCaptacao(""); form.setDescricaoFonteCaptacao("Fonte de Capta��o inexistente."); }else{ form.setFonteCaptacao(String.valueOf(objetoFonteCaptacao.getId())); form.setDescricaoFonteCaptacao(objetoFonteCaptacao.getDescricao()); httpServletRequest.setAttribute("fonteCaptacaoEncontrada", true); } break; default: break; } } else { //Limpando o formul�rio form.setFonteCaptacao(""); form.setDescricaoFonteCaptacao(""); } //devolve o mapeamento de retorno this.setaRequest(httpServletRequest,form); return retorno; } private FonteCaptacao pesquisarFonteCaptacao(String fonte){ Collection colecaoPesquisa = null; FonteCaptacao objetoFonteCaptacao = null; FiltroFonteCaptacao filtroFonteCaptacao = new FiltroFonteCaptacao(); filtroFonteCaptacao.adicionarParametro( new ParametroSimples( FiltroFonteCaptacao.ID, fonte)); filtroFonteCaptacao.adicionarParametro( new ParametroSimples( FiltroFonteCaptacao.INDICADOR_USO, ConstantesSistema.INDICADOR_USO_ATIVO)); //Retorna a fonte de captacao colecaoPesquisa = this.getFachada().pesquisar( filtroFonteCaptacao, FonteCaptacao.class.getName()); if (colecaoPesquisa != null && !colecaoPesquisa.isEmpty()) { objetoFonteCaptacao = (FonteCaptacao) Util.retonarObjetoDeColecao(colecaoPesquisa); } return objetoFonteCaptacao; } private TipoCaptacao pesquisarTipoCaptacao(String tipo){ Collection colecaoPesquisa = null; TipoCaptacao objetoTipoCaptacao = null; FiltroTipoCaptacao filtroTipoCaptacao = new FiltroTipoCaptacao(); filtroTipoCaptacao.adicionarParametro( new ParametroSimples( FiltroTipoCaptacao.ID, tipo)); filtroTipoCaptacao.adicionarParametro( new ParametroSimples( FiltroTipoCaptacao.INDICADOR_USO, ConstantesSistema.INDICADOR_USO_ATIVO)); //Retorna a tipo de captacao colecaoPesquisa = this.getFachada().pesquisar( filtroTipoCaptacao, TipoCaptacao.class.getName()); if (colecaoPesquisa != null && !colecaoPesquisa.isEmpty()) { objetoTipoCaptacao = (TipoCaptacao) Util.retonarObjetoDeColecao(colecaoPesquisa); } return objetoTipoCaptacao; } /** * Seta os request com os id encontrados * * @author Fernando Fontelles * @date 28/10/2009 */ private void setaRequest(HttpServletRequest httpServletRequest, InserirSistemaAbastecimentoActionForm form) { // Fonte de Captacao if (form.getFonteCaptacao() != null && !form.getFonteCaptacao().equals("") && form.getDescricaoFonteCaptacao() != null && !form.getDescricaoFonteCaptacao().equals("")) { httpServletRequest.setAttribute("fonteCaptacaoEncontrada", true); } //Tipo de Captacao if (form.getTipoCaptacao() != null && !form.getTipoCaptacao().equals("") && form.getDescricaoTipoCaptacao() != null && !form.getDescricaoTipoCaptacao().equals("")) { httpServletRequest.setAttribute("tipoCaptacaoEncontrado", true); } } }