package gcom.gui.arrecadacao; import gcom.arrecadacao.ArrecadacaoForma; import gcom.arrecadacao.ArrecadadorMovimento; import gcom.arrecadacao.FiltroArrecadacaoForma; import gcom.arrecadacao.bean.ArrecadadorMovimentoItemHelper; 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.math.BigDecimal; import java.util.Collection; import java.util.Iterator; 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; /** * Esta classe tem por finalidade exibir para o usu�rio os itens do movimento do arrecadador * * @author Raphael Rossiter * @date 20/03/2006 */ public class ExibirConsultarItensMovimentoArrecadadorAction extends GcomAction { public ActionForward execute(ActionMapping actionMapping, ActionForm actionForm, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) { ActionForward retorno = actionMapping.findForward("exibirConsultarItensMovimentoArrecadador"); HttpSession sessao = getSessao(httpServletRequest); PesquisarItensMovimentoArrecadadorActionForm pesquisarItensMovimentoArrecadadorActionForm = (PesquisarItensMovimentoArrecadadorActionForm) actionForm; String idArrecadadorMovimento = pesquisarItensMovimentoArrecadadorActionForm.getIdArrecadadorMovimento(); Fachada fachada = Fachada.getInstancia(); ArrecadadorMovimento arrecadadorMovimento = new ArrecadadorMovimento(); arrecadadorMovimento.setId(new Integer(idArrecadadorMovimento)); Integer idImovel = null ; String retornoImovel = ""; if (pesquisarItensMovimentoArrecadadorActionForm.getMatriculaImovel() != null && !pesquisarItensMovimentoArrecadadorActionForm.getMatriculaImovel() .equals("")) { idImovel = new Integer(pesquisarItensMovimentoArrecadadorActionForm.getMatriculaImovel()); retornoImovel = fachada.pesquisarInscricaoImovel(idImovel); if(retornoImovel == null || retornoImovel.equalsIgnoreCase("")) { throw new ActionServletException( "atencao.imovel.inexistente"); } }else{ sessao.removeAttribute("valorDadosMovimento"); sessao.removeAttribute("valorDadosPagamento"); } String nomeArrecadador = ""; Collection<Object[]> nomeArrecadadorNomeAgencia = null; if(idArrecadadorMovimento != null){ nomeArrecadadorNomeAgencia = fachada.consultarNomeArrecadadorNomeAgencia( idArrecadadorMovimento ); Iterator iteDados= nomeArrecadadorNomeAgencia.iterator(); while (iteDados.hasNext()) { String dados = (String) iteDados.next(); if (dados != null) { if (dados != null) { nomeArrecadador = (String) dados; } } } } sessao.setAttribute("nomeArrecadador", nomeArrecadador); Short indicadorAceitacao = null; if (pesquisarItensMovimentoArrecadadorActionForm.getIndicadorAceitacao()!= null && !pesquisarItensMovimentoArrecadadorActionForm.getIndicadorAceitacao().equals("") && !pesquisarItensMovimentoArrecadadorActionForm.getIndicadorAceitacao().equals("3") && !pesquisarItensMovimentoArrecadadorActionForm.getIndicadorAceitacao().equals("" + ConstantesSistema.NUMERO_NAO_INFORMADO)){ indicadorAceitacao = new Short(pesquisarItensMovimentoArrecadadorActionForm.getIndicadorAceitacao()); } String descricaoOcorrencia = null; if (pesquisarItensMovimentoArrecadadorActionForm.getDescricaoOcorrencia()!= null && !pesquisarItensMovimentoArrecadadorActionForm.getDescricaoOcorrencia().equals("") && !pesquisarItensMovimentoArrecadadorActionForm.getDescricaoOcorrencia().equals("3") && !pesquisarItensMovimentoArrecadadorActionForm.getDescricaoOcorrencia().equals("" + ConstantesSistema.NUMERO_NAO_INFORMADO)){ descricaoOcorrencia = pesquisarItensMovimentoArrecadadorActionForm.getDescricaoOcorrencia(); } // ------------ Forma de Arrecadacao --------------- K�ssia Albuquerque String codigoArrecadacaoForma = null; if (pesquisarItensMovimentoArrecadadorActionForm.getFormaArrecadacao()!= null && !pesquisarItensMovimentoArrecadadorActionForm.getFormaArrecadacao().equals("")&& !pesquisarItensMovimentoArrecadadorActionForm.getFormaArrecadacao().equalsIgnoreCase(""+ConstantesSistema.NUMERO_NAO_INFORMADO)){ FiltroArrecadacaoForma filtroArrecadacaoForma = new FiltroArrecadacaoForma(); filtroArrecadacaoForma.adicionarParametro(new ParametroSimples(FiltroArrecadacaoForma.CODIGO, pesquisarItensMovimentoArrecadadorActionForm.getFormaArrecadacao())); Collection<ArrecadacaoForma> colecaoArrecadacaoForma = fachada.pesquisar(filtroArrecadacaoForma,ArrecadacaoForma.class.getName()); if (colecaoArrecadacaoForma!= null && !colecaoArrecadacaoForma.isEmpty()){ ArrecadacaoForma arrecadacaoForma = (ArrecadacaoForma)colecaoArrecadacaoForma.iterator().next(); codigoArrecadacaoForma = arrecadacaoForma.getCodigoArrecadacaoForma(); String descricaoArrecadacao = arrecadacaoForma.getDescricao(); pesquisarItensMovimentoArrecadadorActionForm.setDescricaoFormaArrecadacao(descricaoArrecadacao); } } Short indicadorDiferencaValorMovimentoValorPagamento = Short.parseShort( pesquisarItensMovimentoArrecadadorActionForm.getIndicadorDiferencaValorMovimentoValorPagamento() ); Collection colecaoArrecadadorMovimentoItemHelper =fachada. consultarItensMovimentoArrecadador(arrecadadorMovimento,idImovel,indicadorAceitacao,descricaoOcorrencia ,codigoArrecadacaoForma, indicadorDiferencaValorMovimentoValorPagamento ); // ------------- Agrupando os valores Totais do Movimento e do Pagamento ------- K�ssia Albuquerque ArrecadadorMovimentoItemHelper helper = null; BigDecimal valorDadosMovimento = new BigDecimal("0.00"); BigDecimal valorDadosPagamento = new BigDecimal("0.00"); if (colecaoArrecadadorMovimentoItemHelper != null && !colecaoArrecadadorMovimentoItemHelper.isEmpty()) { Iterator colecaoArrecadadorMovimentoItemHelperIterator = colecaoArrecadadorMovimentoItemHelper.iterator(); // percorre a colecao de debito a cobrar somando o valor para obter um valor total while (colecaoArrecadadorMovimentoItemHelperIterator.hasNext()) { helper = (ArrecadadorMovimentoItemHelper) colecaoArrecadadorMovimentoItemHelperIterator.next(); if (helper.getVlMovimento()!= null && !helper.getVlMovimento().equals("")){ valorDadosMovimento = valorDadosMovimento.add(Util.formatarMoedaRealparaBigDecimal(helper.getVlMovimento())); } if (helper.getVlPagamento()!= null && !helper.getVlPagamento().equals("")){ valorDadosPagamento = valorDadosPagamento.add(Util.formatarMoedaRealparaBigDecimal(helper.getVlPagamento())); } } sessao.setAttribute("valorDadosMovimento", Util .formatarMoedaReal(valorDadosMovimento)); sessao.setAttribute("valorDadosPagamento", Util .formatarMoedaReal(valorDadosPagamento)); } httpServletRequest.setAttribute("colecaoArrecadadorMovimentoItemHelper", colecaoArrecadadorMovimentoItemHelper); pesquisarItensMovimentoArrecadadorActionForm.setColecaoArrecadadorMovimentoItem(colecaoArrecadadorMovimentoItemHelper); return retorno; } }