package gcom.gui.relatorio.arrecadacao.pagamento; import gcom.arrecadacao.pagamento.FiltroGuiaPagamento; import gcom.arrecadacao.pagamento.GuiaPagamento; import gcom.fachada.Fachada; import gcom.gui.cadastro.imovel.CategoriaActionForm; import gcom.gui.faturamento.ManterGuiaPagamentoActionForm; import gcom.relatorio.ExibidorProcessamentoTarefaRelatorio; import gcom.relatorio.RelatorioVazioException; import gcom.relatorio.arrecadacao.pagamento.RelatorioEmitirGuiaPagamento; import gcom.seguranca.acesso.usuario.Usuario; import gcom.tarefa.TarefaRelatorio; 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 GerarRelatorioEmitirGuiaPagamentoAction extends ExibidorProcessamentoTarefaRelatorio { public ActionForward execute(ActionMapping actionMapping, ActionForm actionForm, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) { ActionForward retorno = null; Fachada fachada = Fachada.getInstancia(); HttpSession sessao = httpServletRequest.getSession(false); String[] ids = null; if (actionForm instanceof ManterGuiaPagamentoActionForm) { ManterGuiaPagamentoActionForm manterGuiaPagamentoActionForm = (ManterGuiaPagamentoActionForm) actionForm; ids = manterGuiaPagamentoActionForm.getIdRegistrosRemocao(); } else if (httpServletRequest.getParameter("idGuiaPagamento") != null) { ids = new String[1]; String idGuiaPagamento = (String) httpServletRequest.getParameter("idGuiaPagamento"); ids[0] = idGuiaPagamento; } else if (actionForm instanceof CategoriaActionForm) { ids = (String[]) sessao.getAttribute("idGuiaPagamento"); } else if (sessao.getAttribute("idGuiaPagamento") != null) { ids = (String[]) sessao.getAttribute("idGuiaPagamento"); } else { String idParcelamento = (String) sessao.getAttribute("idParcelamento"); FiltroGuiaPagamento filtroGuiaPagamento = new FiltroGuiaPagamento(); filtroGuiaPagamento.adicionarParametro(new ParametroSimples(FiltroGuiaPagamento.PARCELAMENTO_ID, new Integer(idParcelamento))); Collection collectionGuiaPagamento = fachada.pesquisar(filtroGuiaPagamento, GuiaPagamento.class.getName()); GuiaPagamento guiaPagamento = (GuiaPagamento) Util.retonarObjetoDeColecao(collectionGuiaPagamento); String idGuiaPagamento = "" + guiaPagamento.getId(); ids = new String[1]; ids[0] = idGuiaPagamento; } RelatorioEmitirGuiaPagamento relatorioEmitirGuiaPagamento = new RelatorioEmitirGuiaPagamento((Usuario) (httpServletRequest.getSession(false)).getAttribute("usuarioLogado")); relatorioEmitirGuiaPagamento.addParametro("ids", ids); String tipoRelatorio = TarefaRelatorio.TIPO_PDF + ""; relatorioEmitirGuiaPagamento.addParametro("tipoFormatoRelatorio", Integer.parseInt(tipoRelatorio)); try { retorno = processarExibicaoRelatorio(relatorioEmitirGuiaPagamento, tipoRelatorio, httpServletRequest, httpServletResponse, actionMapping); } catch (RelatorioVazioException ex) { reportarErros(httpServletRequest, "atencao.relatorio.vazio"); retorno = actionMapping.findForward("telaAtencaoPopup"); } return retorno; } }