package gcom.gui.atendimentopublico; import java.util.ArrayList; import java.util.Collection; import java.util.List; import gcom.atendimentopublico.EspecificacaoUnidadeCobranca; import gcom.atendimentopublico.FiltroEspecificacaoUnidadeCobranca; import gcom.cobranca.CobrancaSituacao; import gcom.cobranca.FiltroCobrancaSituacao; import gcom.fachada.Fachada; import gcom.gui.GcomAction; import gcom.util.ConstantesSistema; import gcom.util.filtro.ParametroSimples; 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; /** * [UC1159] Informar Tramite por Situa��o de Cobran�a * * Action respons�vel pela pre-exibi��o da pagina Informar Tramite por Situa��o de Cobran�a * * @author Mariana Victor * @date 14/04/2011 */ public class ExibirInformarTramiteSituacaoCobrancaAction 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) { // Mudar isso quando tiver esquema de seguran�a HttpSession sessao = httpServletRequest.getSession(false); // Set no mapeamento de retorno ActionForward retorno = actionMapping .findForward("informarTramiteSituacaoCobranca"); Fachada fachada = Fachada.getInstancia(); InformarTramiteSituacaoCobrancaActionForm informarTramiteSituacaoCobrancaActionForm = (InformarTramiteSituacaoCobrancaActionForm) actionForm; List<EspecificacaoUnidadeCobranca> colecaoEspecificacaoUnidadeCobranca = new ArrayList(); List<EspecificacaoUnidadeCobranca> colecaoEspecificacaoUnidadeCobrancaRemover = new ArrayList(); if(sessao.getAttribute("colecaoEspecificacaoUnidadeCobranca") != null && !sessao.getAttribute("colecaoEspecificacaoUnidadeCobranca").equals("")){ colecaoEspecificacaoUnidadeCobranca = (ArrayList) sessao.getAttribute("colecaoEspecificacaoUnidadeCobranca"); } if(sessao.getAttribute("colecaoEspecificacaoUnidadeCobrancaRemover") != null && !sessao.getAttribute("colecaoEspecificacaoUnidadeCobrancaRemover").equals("")){ colecaoEspecificacaoUnidadeCobrancaRemover = (ArrayList) sessao.getAttribute("colecaoEspecificacaoUnidadeCobrancaRemover"); } if (httpServletRequest.getParameter("menu") != null && !httpServletRequest.getParameter("menu").trim().equals("")) { // Cole��o de Situa��o de Cobran�a FiltroCobrancaSituacao filtroCobrancaSituacao = new FiltroCobrancaSituacao(); filtroCobrancaSituacao.adicionarParametro(new ParametroSimples( FiltroCobrancaSituacao.INDICADOR_USO, ConstantesSistema.INDICADOR_USO_ATIVO)); filtroCobrancaSituacao.setCampoOrderBy(FiltroCobrancaSituacao.DESCRICAO); Collection<CobrancaSituacao> colecaoCobrancaSituacao = this.getFachada().pesquisar( filtroCobrancaSituacao, CobrancaSituacao.class.getName()); sessao.setAttribute("colecaoCobrancaSituacao", colecaoCobrancaSituacao); informarTramiteSituacaoCobrancaActionForm.setIdSituacaoCobranca(""); } // Consultar os dados das associaoes de uma Situa��o de Cobran�a armazenadas na tabela EspecificacaoUnidadeCobranca if (httpServletRequest.getParameter("recuperarAssociacoes") != null && httpServletRequest.getParameter("recuperarAssociacoes").trim().equalsIgnoreCase("SIM") && informarTramiteSituacaoCobrancaActionForm.getIdSituacaoCobranca() != null && !informarTramiteSituacaoCobrancaActionForm.getIdSituacaoCobranca().trim().equals("")) { FiltroEspecificacaoUnidadeCobranca filtroEspecificacaoUnidadeCobranca = new FiltroEspecificacaoUnidadeCobranca(); filtroEspecificacaoUnidadeCobranca.adicionarParametro(new ParametroSimples( FiltroEspecificacaoUnidadeCobranca.ID_COBRANCA_SITUACAO, informarTramiteSituacaoCobrancaActionForm.getIdSituacaoCobranca())); filtroEspecificacaoUnidadeCobranca.adicionarCaminhoParaCarregamentoEntidade( FiltroEspecificacaoUnidadeCobranca.SOLICITACAO_TIPO_ESPECIFICACAO); filtroEspecificacaoUnidadeCobranca.adicionarCaminhoParaCarregamentoEntidade( FiltroEspecificacaoUnidadeCobranca.UNIDADE_ORGANIZACIONAL); filtroEspecificacaoUnidadeCobranca.adicionarCaminhoParaCarregamentoEntidade( FiltroEspecificacaoUnidadeCobranca.COBRANCA_SITUACAO); Collection<EspecificacaoUnidadeCobranca> colecao = fachada.pesquisar(filtroEspecificacaoUnidadeCobranca, EspecificacaoUnidadeCobranca.class.getName()); if (colecao != null && !colecao.isEmpty()) { colecaoEspecificacaoUnidadeCobranca = (List) colecao; sessao.setAttribute("colecaoEspecificacaoUnidadeCobranca", colecaoEspecificacaoUnidadeCobranca); } else { sessao.removeAttribute("colecaoEspecificacaoUnidadeCobranca"); } } // Remover EspecificacaoUnidadeCobranca if (httpServletRequest.getParameter("removerAssociacao") != null && !httpServletRequest.getParameter("removerAssociacao").equals("")) { Integer indice = new Integer(httpServletRequest.getParameter("removerAssociacao")); if (colecaoEspecificacaoUnidadeCobranca != null && !colecaoEspecificacaoUnidadeCobranca.isEmpty() && colecaoEspecificacaoUnidadeCobranca.size() >= indice) { EspecificacaoUnidadeCobranca especificacaoUnidadeCobranca = colecaoEspecificacaoUnidadeCobranca.get(indice - 1); if (especificacaoUnidadeCobranca.getUltimaAlteracao() != null) { colecaoEspecificacaoUnidadeCobrancaRemover.add(especificacaoUnidadeCobranca); sessao.setAttribute("colecaoEspecificacaoUnidadeCobrancaRemover", colecaoEspecificacaoUnidadeCobrancaRemover); } colecaoEspecificacaoUnidadeCobranca.remove(indice-1); if (colecaoEspecificacaoUnidadeCobranca != null && !colecaoEspecificacaoUnidadeCobranca.isEmpty()) { sessao.setAttribute("colecaoEspecificacaoUnidadeCobranca", colecaoEspecificacaoUnidadeCobranca); } else { sessao.removeAttribute("colecaoEspecificacaoUnidadeCobranca"); } } } return retorno; } }