package gcom.gui.portal; import gcom.cadastro.unidade.UnidadeOrganizacional; import gcom.cobranca.bean.ContaValoresHelper; import gcom.cobranca.bean.GuiaPagamentoValoresHelper; import gcom.fachada.Fachada; import gcom.faturamento.credito.CreditoARealizar; import gcom.faturamento.debito.DebitoACobrar; import gcom.relatorio.ExibidorProcessamentoTarefaRelatorio; import gcom.seguranca.acesso.usuario.FiltroUsuario; 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; /** * Action respons�vel pela exibi��o dos documentos do parcelamento * da loja virtual (termo de pagamento e a guia de pagamento). * * @author Diogo Peixoto * @since 08/07/2011 * */ public class GerarRelatorioDocumentosParcelamentoPortalAction extends ExibidorProcessamentoTarefaRelatorio { public ActionForward execute(ActionMapping actionMapping, ActionForm actionForm, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) { ActionForward retorno = null; HttpSession sessao = httpServletRequest.getSession(false); Fachada fachada = Fachada.getInstancia(); FiltroUsuario filtroUsuario = new FiltroUsuario(); filtroUsuario.adicionarParametro(new ParametroSimples(FiltroUsuario.LOGIN, "INTERNET")); Usuario usuario = (Usuario) Util.retonarObjetoDeColecao(Fachada.getInstancia().pesquisar(filtroUsuario, Usuario.class.getName())); Collection<ContaValoresHelper> colecaoFaturasEmAberto = null; Collection<GuiaPagamentoValoresHelper> colecaoGuiasPagamento = null; if (sessao.getAttribute("colecaoContaValores") != null) { colecaoFaturasEmAberto = (Collection<ContaValoresHelper>) sessao.getAttribute("colecaoContaValores"); colecaoGuiasPagamento = (Collection<GuiaPagamentoValoresHelper>) sessao.getAttribute("colecaoGuiaPagamentoNegociacao"); } else { colecaoFaturasEmAberto = (Collection<ContaValoresHelper>) sessao.getAttribute("colecaoContaValoresImovel"); colecaoGuiasPagamento = (Collection<GuiaPagamentoValoresHelper>) sessao.getAttribute("colecaoGuiaPagamentoValoresImovel"); } // Cole��o dos D�bitos a Cobrar do Parcelamento Collection<DebitoACobrar> colecaoServicosACobrar = (Collection<DebitoACobrar>) sessao.getAttribute("colecaoDebitoACobrar"); Collection<CreditoARealizar> colecaoCreditoARealizar = (Collection<CreditoARealizar>) sessao.getAttribute("colecaoCreditoARealizar"); String idParcelamento = (String) sessao.getAttribute("idParcelamento"); // Pesquisa a unidade do usu�rio logado UnidadeOrganizacional unidadeUsuario = fachada.pesquisarUnidadeUsuario(usuario.getId()); //Vari�veis da guia de pagamento String idGuiaPagamento = (String) sessao.getAttribute("idGuiaPagamento"); String[] ids = {idGuiaPagamento}; String tipoRelatorio = httpServletRequest.getParameter("tipoRelatorio"); TarefaRelatorio relatorioParcelamento = (TarefaRelatorio) fachada.gerarRelatorioDocumentosParcelamentoCobrancaPortal(usuario, idParcelamento, unidadeUsuario, colecaoFaturasEmAberto, colecaoGuiasPagamento, colecaoCreditoARealizar, colecaoServicosACobrar ); if (tipoRelatorio == null) { tipoRelatorio = TarefaRelatorio.TIPO_PDF + ""; } relatorioParcelamento.addParametro("tipoFormatoRelatorio", Integer.parseInt(tipoRelatorio)); relatorioParcelamento.addParametro("ids",ids); retorno = processarExibicaoRelatorio(relatorioParcelamento, tipoRelatorio, httpServletRequest, httpServletResponse, actionMapping); /* * Atributo que vai ser utilizado na p�gina de efetuar parcelamentos. * Caso os documentos e o parcelamento j� tenham sido gerados/conclu�do, * quando o usu�rio apertar pra confirmar ele vai redirecionar a p�gina * para a tela inicial de servi�os. */ sessao.setAttribute("parcelamentoEfetuado", "SIM"); return retorno; } }