package gcom.financeiro; import gcom.arrecadacao.Arrecadador; import gcom.arrecadacao.ControladorArrecadacaoLocal; import gcom.arrecadacao.ControladorArrecadacaoLocalHome; import gcom.arrecadacao.FiltroArrecadador; import gcom.arrecadacao.IRepositorioArrecadacao; import gcom.arrecadacao.RecebimentoTipo; import gcom.arrecadacao.RepositorioArrecadacaoHBM; import gcom.arrecadacao.ResumoArrecadacao; import gcom.arrecadacao.aviso.AvisoBancario; import gcom.arrecadacao.banco.Banco; import gcom.arrecadacao.banco.ContaBancaria; import gcom.arrecadacao.banco.FiltroBanco; import gcom.batch.ControladorBatchLocal; import gcom.batch.ControladorBatchLocalHome; import gcom.batch.ProcessoIniciado; import gcom.batch.UnidadeProcessamento; import gcom.cadastro.ControladorCadastroLocal; import gcom.cadastro.ControladorCadastroLocalHome; import gcom.cadastro.EnvioEmail; import gcom.cadastro.cliente.EsferaPoder; import gcom.cadastro.endereco.ControladorEnderecoLocal; import gcom.cadastro.endereco.ControladorEnderecoLocalHome; import gcom.cadastro.imovel.Categoria; import gcom.cadastro.imovel.CategoriaTipo; import gcom.cadastro.imovel.ControladorImovelLocal; import gcom.cadastro.imovel.ControladorImovelLocalHome; import gcom.cadastro.imovel.Imovel; import gcom.cadastro.imovel.ImovelPerfil; import gcom.cadastro.imovel.ImovelSubcategoria; import gcom.cadastro.imovel.ImovelSubcategoriaPK; import gcom.cadastro.imovel.Subcategoria; import gcom.cadastro.localidade.ControladorLocalidadeLocal; import gcom.cadastro.localidade.ControladorLocalidadeLocalHome; import gcom.cadastro.localidade.GerenciaRegional; import gcom.cadastro.localidade.Localidade; import gcom.cadastro.localidade.Quadra; import gcom.cadastro.localidade.SetorComercial; import gcom.cadastro.localidade.UnidadeNegocio; import gcom.cadastro.sistemaparametro.SistemaParametro; import gcom.cobranca.ControladorCobrancaLocal; import gcom.cobranca.ControladorCobrancaLocalHome; import gcom.cobranca.DocumentoTipo; import gcom.faturamento.ControladorFaturamentoLocal; import gcom.faturamento.ControladorFaturamentoLocalHome; import gcom.faturamento.FaturamentoGrupo; import gcom.faturamento.IRepositorioFaturamento; import gcom.faturamento.RepositorioFaturamentoHBM; import gcom.faturamento.conta.Conta; import gcom.faturamento.credito.CreditoOrigem; import gcom.financeiro.bean.AcumularValoresHelper; import gcom.financeiro.bean.GerarIntegracaoContabilidadeHelper; import gcom.financeiro.bean.GerarResumoDevedoresDuvidososHelper; import gcom.financeiro.bean.ResumoDevedoresDuvidososRelatorioHelper; import gcom.financeiro.lancamento.IRepositorioLancamentoItemContabil; import gcom.financeiro.lancamento.LancamentoContabil; import gcom.financeiro.lancamento.LancamentoContabilItem; import gcom.financeiro.lancamento.LancamentoItem; import gcom.financeiro.lancamento.LancamentoItemContabil; import gcom.financeiro.lancamento.LancamentoOrigem; import gcom.financeiro.lancamento.LancamentoTipo; import gcom.financeiro.lancamento.RepositorioLancamentoItemContabilHBM; import gcom.relatorio.contasareceber.RelatorioParametrosContabeisContasAReceberBean; import gcom.relatorio.financeiro.RelatorioEvolucaoContasAReceberContabilBean; import gcom.relatorio.financeiro.RelatorioParametrosContabeisArrecadacaoBean; import gcom.relatorio.financeiro.RelatorioParametrosContabeisFaturamentoBean; import gcom.relatorio.financeiro.RelatorioSaldoContasAReceberContabilBean; import gcom.relatorio.financeiro.RelatorioVolumesConsumidosNaoFaturadosBean; import gcom.relatorio.financeiro.ResumoReceitaHelper; import gcom.util.ConstantesJNDI; import gcom.util.ConstantesSistema; import gcom.util.ControladorException; import gcom.util.ControladorUtilLocal; import gcom.util.ControladorUtilLocalHome; import gcom.util.ErroRepositorioException; import gcom.util.HibernateUtil; import gcom.util.IoUtil; import gcom.util.ServiceLocator; import gcom.util.ServiceLocatorException; import gcom.util.SistemaException; import gcom.util.Util; import gcom.util.ZipUtil; import gcom.util.email.ServicosEmail; import gcom.util.filtro.ParametroSimples; import java.io.BufferedWriter; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.io.OutputStreamWriter; import java.math.BigDecimal; import java.sql.Timestamp; import java.util.ArrayList; import java.util.Collection; import java.util.Collections; import java.util.Date; import java.util.HashMap; import java.util.Iterator; import java.util.List; import java.util.Map; import java.util.zip.ZipOutputStream; import javax.ejb.CreateException; import javax.ejb.EJBException; import javax.ejb.SessionBean; import javax.ejb.SessionContext; import org.hibernate.Session; import org.jboss.logging.Logger; public class ControladorFinanceiro implements SessionBean { private static Logger logger = Logger.getLogger(ControladorFinanceiro.class); protected static final long serialVersionUID = 1L; SessionContext sessionContext; protected IRepositorioFinanceiro repositorioFinanceiro = null; protected IRepositorioLancamentoItemContabil repositorioLancamentoItemContabil = null; protected IRepositorioFaturamento repositorioFaturamento = null; protected IRepositorioArrecadacao repositorioArrecadacao = null; public void ejbCreate() throws CreateException { repositorioFinanceiro = RepositorioFinanceiroHBM.getInstancia(); repositorioLancamentoItemContabil = RepositorioLancamentoItemContabilHBM.getInstancia(); repositorioFaturamento = RepositorioFaturamentoHBM.getInstancia(); repositorioArrecadacao = RepositorioArrecadacaoHBM.getInstancia(); } public void ejbRemove() { } public void ejbActivate() { } public void ejbPassivate() { } public void setSessionContext(SessionContext sessionContext) { this.sessionContext = sessionContext; } protected ControladorArrecadacaoLocal getControladorArrecadacao() { ControladorArrecadacaoLocalHome localHome = null; ControladorArrecadacaoLocal local = null; ServiceLocator locator = null; try { locator = ServiceLocator.getInstancia(); localHome = (ControladorArrecadacaoLocalHome) locator .getLocalHomePorEmpresa(ConstantesJNDI.CONTROLADOR_ARRECADACAO_SEJB); local = localHome.create(); return local; } catch (CreateException e) { throw new SistemaException(e); } catch (ServiceLocatorException e) { throw new SistemaException(e); } } protected ControladorUtilLocal getControladorUtil() { ControladorUtilLocalHome localHome = null; ControladorUtilLocal local = null; ServiceLocator locator = null; try { locator = ServiceLocator.getInstancia(); localHome = (ControladorUtilLocalHome) locator .getLocalHome(ConstantesJNDI.CONTROLADOR_UTIL_SEJB); local = localHome.create(); return local; } catch (CreateException e) { throw new SistemaException(e); } catch (ServiceLocatorException e) { throw new SistemaException(e); } } private ControladorEnderecoLocal getControladorEndereco() { ControladorEnderecoLocalHome localHome = null; ControladorEnderecoLocal local = null; ServiceLocator locator = null; try { locator = ServiceLocator.getInstancia(); localHome = (ControladorEnderecoLocalHome) locator .getLocalHome(ConstantesJNDI.CONTROLADOR_ENDERECO_SEJB); local = localHome.create(); return local; } catch (CreateException e) { throw new SistemaException(e); } catch (ServiceLocatorException e) { throw new SistemaException(e); } } protected ControladorFaturamentoLocal getControladorFaturamento() { ControladorFaturamentoLocalHome localHome = null; ControladorFaturamentoLocal local = null; ServiceLocator locator = null; try { locator = ServiceLocator.getInstancia(); localHome = (ControladorFaturamentoLocalHome) locator .getLocalHomePorEmpresa(ConstantesJNDI.CONTROLADOR_FATURAMENTO_SEJB); local = localHome.create(); return local; } catch (CreateException e) { throw new SistemaException(e); } catch (ServiceLocatorException e) { throw new SistemaException(e); } } private ControladorCadastroLocal getControladorCadastro() { ControladorCadastroLocalHome localHome = null; ControladorCadastroLocal local = null; ServiceLocator locator = null; try { locator = ServiceLocator.getInstancia(); localHome = (ControladorCadastroLocalHome) locator .getLocalHomePorEmpresa(ConstantesJNDI.CONTROLADOR_CADASTRO_SEJB); local = localHome.create(); return local; } catch (CreateException e) { throw new SistemaException(e); } catch (ServiceLocatorException e) { throw new SistemaException(e); } } protected ControladorLocalidadeLocal getControladorLocalidade() { ControladorLocalidadeLocalHome localHome = null; ControladorLocalidadeLocal local = null; // pega a inst�ncia do ServiceLocator. ServiceLocator locator = null; try { locator = ServiceLocator.getInstancia(); localHome = (ControladorLocalidadeLocalHome) locator .getLocalHome(ConstantesJNDI.CONTROLADOR_LOCALIDADE_SEJB); // guarda a referencia de um objeto capaz de fazer chamadas � // objetos remotamente local = localHome.create(); return local; } catch (CreateException e) { throw new SistemaException(e); } catch (ServiceLocatorException e) { throw new SistemaException(e); } } protected ControladorImovelLocal getControladorImovel() { ControladorImovelLocalHome localHome = null; ControladorImovelLocal local = null; // pega a inst�ncia do ServiceLocator. ServiceLocator locator = null; try { locator = ServiceLocator.getInstancia(); localHome = (ControladorImovelLocalHome) locator .getLocalHome(ConstantesJNDI.CONTROLADOR_IMOVEL_SEJB); // guarda a referencia de um objeto capaz de fazer chamadas � // objetos remotamente local = localHome.create(); return local; } catch (CreateException e) { throw new SistemaException(e); } catch (ServiceLocatorException e) { throw new SistemaException(e); } } protected ControladorBatchLocal getControladorBatch() { ControladorBatchLocalHome localHome = null; ControladorBatchLocal local = null; ServiceLocator locator = null; try { locator = ServiceLocator.getInstancia(); localHome = (ControladorBatchLocalHome) locator .getLocalHome(ConstantesJNDI.CONTROLADOR_BATCH_SEJB); local = localHome.create(); return local; } catch (CreateException e) { throw new SistemaException(e); } catch (ServiceLocatorException e) { throw new SistemaException(e); } } /** * [UC0175] - Gerar Lan�amentos Cont�beis do Faturamento * Author: Raphael Rossiter, Pedro Alexandre * Data: 16/01/2006, 23/05/2007 * * Gera os lan�amentos cont�beis a partir dos dados selecionados na tabela RESUMO_FATURAMENTO * * @param anoMesReferenciaFaturamento * @param idLocalidade * @param idFuncionalidadeIniciada * @throws ControladorException */ @SuppressWarnings({ "unchecked", "rawtypes" }) public void gerarLancamentosContabeisFaturamento( Integer anoMesReferenciaFaturamento, Integer idLocalidade, int idFuncionalidadeIniciada) throws ControladorException{ //[FS0001 - Validar ano/m�s do Faturamento] Integer anoMesFaturamentoAtual = getControladorUtil().pesquisarParametrosDoSistema().getAnoMesFaturamento(); if(anoMesReferenciaFaturamento.intValue() >anoMesFaturamentoAtual.intValue()){ //levanta a exce��o para a pr�xima camada throw new ControladorException("atencao.mes_ano.faturamento.inferior", null, Util.formatarAnoMesParaMesAno(anoMesFaturamentoAtual.toString())); } int idUnidadeIniciada = 0; /* * Registrar o in�cio do processamento da Unidade de * Processamento do Batch */ idUnidadeIniciada = getControladorBatch().iniciarUnidadeProcessamentoBatch( idFuncionalidadeIniciada, UnidadeProcessamento.LOCALIDADE, (idLocalidade)); try { /* * Pesquisa os dados do resumo do faturamento para o ano/m�s de refer�ncia atual e * para a localidade informada. * * 0 - id da localidade * 1 - id do tipo de lan�amento * 2 - id do item de lan�amento * 3 - id do item de lan�amento cont�bil * 4 - id da categoria * 5 - soma do valor do resumo do faturamento */ Collection<Object[]> colecaoDadosResumoFaturamento = repositorioFinanceiro.obterDadosResumoFaturamento( anoMesReferenciaFaturamento, idLocalidade); /* * Caso exista resumo de faturamento para a localidade e o ano/m�s * cria o lancamento cont�bil junto com seus items * para cada conjunto de mesmo tipo de lan�amento */ if (colecaoDadosResumoFaturamento != null && !colecaoDadosResumoFaturamento.isEmpty()){ //flag utilizada somente quando for a primeira entrada boolean flagPrimeiraVez = true; int idTipoLancamentoTemp = -1; Collection<Object[]> colecaoDadosResumoPorTipoLancamento = new ArrayList(); // defini��o da origem do lan�amento LancamentoOrigem lancamentoOrigem = new LancamentoOrigem(); lancamentoOrigem.setId(LancamentoOrigem.FATURAMENTO); //Cria a vari�vel que vai armazenar o lan�amento cont�bil LancamentoContabil lancamentoContabilInsert = null; //la�o para gerar os lan�amentos por grupo de tipo de lan�amento for(Object[] dadosResumoFaturamento : colecaoDadosResumoFaturamento){ //recupera o tipo de lan�amento atual Integer idTipoLancamento = (Integer) dadosResumoFaturamento[1]; /* * Caso seja a primeira entrada do "for" * adiciona os dados a cole��o e atualiza o item temporario * criando tamb�m o lan�amento contabil que ira ser inserindo * junto com seus items. * * Caso contr�rio (n�o seja a primeira entrada do la�o "for") * verifica se o item de lan�amento mudou, caso n�o tenha mudado * adiciona os dados ao conjunto do mesmo item * caso contr�rio, se mudou o item de lan�amento o conjunto est� fechado * para o lan�amento cont�bil e chama o me�todo para inserir o * lan�amento cont�bil junto com seus itens. */ if(flagPrimeiraVez){ colecaoDadosResumoPorTipoLancamento.add(dadosResumoFaturamento); flagPrimeiraVez = false; idTipoLancamentoTemp = idTipoLancamento; LancamentoTipo tipoLancamento = new LancamentoTipo(); tipoLancamento.setId(idTipoLancamento); Localidade localidade = new Localidade(); localidade.setId(idLocalidade); //cria o lan�amento cont�bil para ser inserido lancamentoContabilInsert = new LancamentoContabil(); lancamentoContabilInsert.setAnoMes(anoMesReferenciaFaturamento); lancamentoContabilInsert.setLancamentoOrigem(lancamentoOrigem); lancamentoContabilInsert.setLancamentoTipo(tipoLancamento); lancamentoContabilInsert.setLocalidade(localidade); lancamentoContabilInsert.setRecebimentoTipo(null); lancamentoContabilInsert.setUltimaAlteracao(new Date()); }else{ /* * Caso ainda seja o mesmo item adicona os dados para * ser gerado os itens do lan�amento para o mesmo lan�amento. * Caso contr�rio chama o met�do para inseri os itens e o lan�amento cont�bil. */ if(idTipoLancamento == idTipoLancamentoTemp){ colecaoDadosResumoPorTipoLancamento.add(dadosResumoFaturamento); }else{ /* met�do para inserir o lan�amento cont�bil assim como seus itens */ this.inserirLancamentoContabilItemFaturamento( lancamentoContabilInsert, colecaoDadosResumoPorTipoLancamento); //limpaa cole��o e adiciona os dados do resumo atual colecaoDadosResumoPorTipoLancamento.clear(); colecaoDadosResumoPorTipoLancamento.add(dadosResumoFaturamento); LancamentoTipo tipoLancamento = new LancamentoTipo(); tipoLancamento.setId(idTipoLancamento); Localidade localidade = new Localidade(); localidade.setId(idLocalidade); //cria o lan�amento cont�bil que vai ser inserido lancamentoContabilInsert = new LancamentoContabil(); lancamentoContabilInsert.setAnoMes(anoMesReferenciaFaturamento); lancamentoContabilInsert.setLancamentoOrigem(lancamentoOrigem); lancamentoContabilInsert.setLancamentoTipo(tipoLancamento); lancamentoContabilInsert.setLocalidade(localidade); lancamentoContabilInsert.setRecebimentoTipo(null); lancamentoContabilInsert.setUltimaAlteracao(new Date()); //atualiza o tipo de lan�amento tempor�rio com o novo valor idTipoLancamentoTemp = idTipoLancamento; } } } /* * �ltimo registro * Esse "if" � para verificar se ainda existe um �ltimo registro na cole��o * caso exista algum item, adiciona o lan�amento cont�bil junto com o item. */ if(colecaoDadosResumoPorTipoLancamento != null && colecaoDadosResumoPorTipoLancamento.size() > 0 ){ this.inserirLancamentoContabilItemFaturamento( lancamentoContabilInsert, colecaoDadosResumoPorTipoLancamento); colecaoDadosResumoPorTipoLancamento = null; } } getControladorBatch().encerrarUnidadeProcessamentoBatch(null,idUnidadeIniciada, false); } catch (Exception ex) { ex.printStackTrace(); getControladorBatch().encerrarUnidadeProcessamentoBatch(ex,idUnidadeIniciada, true); throw new EJBException(ex); } } /** * Gera o lan�amento cont�bil junto com seus itens. * * [UC0175] - Gerar Lan�amentos Cont�beis do Faturamento * * @author Pedro Alexandre * @date 24/05/2007 * * @param lancamentoContabil * @param colecaoDadosResumoPorTipoLancamento * @throws ControladorException */ @SuppressWarnings({ "rawtypes", "unchecked" }) protected void inserirLancamentoContabilItemFaturamento(LancamentoContabil lancamentoContabil,Collection<Object[]> colecaoDadosResumoPorTipoLancamento) throws ControladorException { try{ /* * Caso exista dados para os itens do resumo do faturamento. */ if(colecaoDadosResumoPorTipoLancamento != null && !colecaoDadosResumoPorTipoLancamento.isEmpty()){ Collection colecaoLancamentoContabilItem = new ArrayList(); //flag que indica se o lan�amento cont�bil j� foi inserido ou n�o. boolean flagInseridoLancamentoContabil = false; /* * Dados do resumo do faturamento * 0 - id da localidade * 1 - id do tipo de lan�amento * 2 - id do item de lan�amento * 3 - id do item de lan�amento cont�bil * 4 - id da categoria * 5 - soma do valor do resumo do faturamento */ for(Object[] dadosResumoFaturamento : colecaoDadosResumoPorTipoLancamento){ //recupera os dados do resumo do faturamento Integer idLancamentoTipo = (Integer) dadosResumoFaturamento[1]; Integer idLancamentoItem = (Integer) dadosResumoFaturamento[2]; Integer idLancamentoItemContabil = (Integer) dadosResumoFaturamento[3]; Integer idCategoria = (Integer) dadosResumoFaturamento[4]; BigDecimal valorLancamento = (BigDecimal) dadosResumoFaturamento[5]; /* * Verifica se existe conta cont�bil para o item que vai ser inserido * * 0 - id conta cont�bil do d�bito * 1 - id conta cont�bil cr�dito * 2 - descri��o do hist�rico do d�bito * 3 - descri��o do hist�rico do cr�dito */ Object[] dadosContaContabil = this.repositorioFinanceiro.obterParametrosContabilFaturamento(idCategoria, idLancamentoItemContabil, idLancamentoItem, idLancamentoTipo); if(dadosContaContabil != null){ Integer idLancamentoContabil = null; /* * Caso exista dados para a conta cont�bil e o item cont�bil * ainda n�o foi inserido * inseri o item cont�bil na base. */ if(!flagInseridoLancamentoContabil){ idLancamentoContabil = (Integer)getControladorUtil().inserir(lancamentoContabil); lancamentoContabil.setId(idLancamentoContabil); flagInseridoLancamentoContabil = true; } //recupera os dados da conta cont�bil para o item do resumo do faturamento. Integer idContaContabilDebito = (Integer) dadosContaContabil[0]; Integer idContaContabilCredito = (Integer) dadosContaContabil[1]; String descricaoHistoricoDebito = (String) dadosContaContabil[2]; String descricaoHistoricoCredito = (String) dadosContaContabil[3]; //cria os indicadores de d�bito e cr�dito. Short indicadorDebito = new Short("2"); Short indicadorCredito = new Short("1"); Date ultimaAlteracao = new Date(); //cria as contas cont�beis de cr�dito e d�bito. ContaContabil contaContabilCredito = new ContaContabil(); contaContabilCredito.setId(idContaContabilCredito); ContaContabil contaContabilDebito = new ContaContabil(); contaContabilDebito.setId(idContaContabilDebito); /** Item de cr�dito */ LancamentoContabilItem lancamentoContabilItemCredito = new LancamentoContabilItem(indicadorCredito, valorLancamento, descricaoHistoricoCredito, ultimaAlteracao, lancamentoContabil, contaContabilCredito); colecaoLancamentoContabilItem.add(lancamentoContabilItemCredito); /** Item de d�bito */ LancamentoContabilItem lancamentoContabilItemDebito = new LancamentoContabilItem(indicadorDebito, valorLancamento, descricaoHistoricoDebito, ultimaAlteracao, lancamentoContabil, contaContabilDebito); colecaoLancamentoContabilItem.add(lancamentoContabilItemDebito); } } //inserios itens de lan�amento cont�beis. getControladorBatch().inserirColecaoObjetoParaBatch(colecaoLancamentoContabilItem); } } catch (Exception ex) { throw new EJBException(ex); } } public void inserirLancamentoContabilItem(LancamentoContabil lancamentoContabil, int etapa, BigDecimal valorTotalResidencial, BigDecimal valorTotalComercial, BigDecimal valorTotalIndustrial, BigDecimal valorTotalPublico, Collection<AcumularValoresHelper> colecaoAcumularValoresPorLancamentoItemContabil, Collection<AcumularValoresHelper> colecaoAcumularValoresPorLancamentoItemCategoria) throws ControladorException { LancamentoContabilItem lancamentoContabilItem = new LancamentoContabilItem(); lancamentoContabilItem.setLancamentoContabil(lancamentoContabil); //Utilizado dentro do switch LancamentoItem lancamentoItem = new LancamentoItem(); Categoria categoria = new Categoria(); switch (lancamentoContabil.getLancamentoTipo().getId().intValue()) { case LancamentoTipo.AGUA_INT: /* * ETAPA N� 01 * Raz�o Cont�bil = 12 e Conta Cont�bil = 111 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = RESIDENCIAL + COMERCIAL + INDUSTRIAL */ if (etapa == 1){ //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoCategoria(lancamentoContabil, new Short("12"), new Integer("111"), valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 2, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 02 * Raz�o Cont�bil = 12 e Conta Cont�bil = 112 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = PUBLICO */ else if (etapa == 2){ //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoCategoria(lancamentoContabil, new Short("12"), new Integer("112"), null, null, null, valorTotalPublico, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 3, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 03 * Raz�o Cont�bil = 31 e Conta Cont�bil = 111 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = RESIDENCIAL */ else if (etapa == 3){ //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoCategoria(lancamentoContabil, new Short("31"), new Integer("111"), valorTotalResidencial, null, null, null, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 4, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 04 * Raz�o Cont�bil = 31 e Conta Cont�bil = 112 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = COMERCIAL */ else if (etapa == 4){ //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoCategoria(lancamentoContabil, new Short("31"), new Integer("112"), null, valorTotalComercial, null, null, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 5, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 05 * Raz�o Cont�bil = 31 e Conta Cont�bil = 113 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = INDUSTRIAL */ else if (etapa == 5){ //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoCategoria(lancamentoContabil, new Short("31"), new Integer("113"), null, null, valorTotalIndustrial, null, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 6, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 06 * Raz�o Cont�bil = 31 e Conta Cont�bil = 114 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = PUBLICO */ else { //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoCategoria(lancamentoContabil, new Short("31"), new Integer("114"), null, null, null, valorTotalPublico, ConstantesSistema.INDICADOR_CREDITO); } break; case LancamentoTipo.ESGOTO_INT: /* * ETAPA N� 01 * Raz�o Cont�bil = 12 e Conta Cont�bil = 111 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = RESIDENCIAL + COMERCIAL + INDUSTRIAL */ if (etapa == 1){ //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoCategoria(lancamentoContabil, new Short("12"), new Integer("111"), valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 2, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 02 * Raz�o Cont�bil = 12 e Conta Cont�bil = 112 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = PUBLICO */ else if (etapa == 2){ //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoCategoria(lancamentoContabil, new Short("12"), new Integer("112"), null, null, null, valorTotalPublico, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 3, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 03 * Raz�o Cont�bil = 31 e Conta Cont�bil = 211 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = RESIDENCIAL */ else if (etapa == 3){ //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoCategoria(lancamentoContabil, new Short("31"), new Integer("211"), valorTotalResidencial, null, null, null, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 4, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 04 * Raz�o Cont�bil = 31 e Conta Cont�bil = 212 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = COMERCIAL */ else if (etapa == 4){ //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoCategoria(lancamentoContabil, new Short("31"), new Integer("212"), null, valorTotalComercial, null, null, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 5, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 05 * Raz�o Cont�bil = 31 e Conta Cont�bil = 213 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = INDUSTRIAL */ else if (etapa == 5){ //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoCategoria(lancamentoContabil, new Short("31"), new Integer("213"), null, null, valorTotalIndustrial, null, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 6, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 06 * Raz�o Cont�bil = 31 e Conta Cont�bil = 214 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = PUBLICO */ else { //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoCategoria(lancamentoContabil, new Short("31"), new Integer("214"), null, null, null, valorTotalPublico, ConstantesSistema.INDICADOR_CREDITO); } break; case LancamentoTipo.FINANCIAMENTOS_INCLUIDOS_CURTO_PRAZO_INT: /* * ETAPA N� 01 * Raz�o Cont�bil = 12 e Conta Cont�bil = 151 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = RESIDENCIAL + COMERCIAL + INDUSTRIAL */ if (etapa == 1){ //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoCategoria(lancamentoContabil, new Short("12"), new Integer("151"), valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 2, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 02 * Raz�o Cont�bil = 12 e Conta Cont�bil = 152 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = PUBLICO */ else if (etapa == 2){ //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoCategoria(lancamentoContabil, new Short("12"), new Integer("152"), null, null, null, valorTotalPublico, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 3, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 03 * contaContabil = CNCT_ID da tabela LANCAMENTO_ITEM_CONTABIL com LICT_ID = id do �tem de lan�amento cont�bil * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = Valor acumulado para cada �tem de lan�amento cont�bil */ else { this.inserirLancamentoContabilItemAcumulandoItems(lancamentoContabil, colecaoAcumularValoresPorLancamentoItemContabil, ConstantesSistema.INDICADOR_CREDITO); } break; case LancamentoTipo.FINANCIAMENTOS_INCLUIDOS_LONGO_PRAZO_INT: /* * ETAPA N� 01 * Raz�o Cont�bil = 13 e Conta Cont�bil = 151 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = RESIDENCIAL + COMERCIAL + INDUSTRIAL */ if (etapa == 1){ //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoCategoria(lancamentoContabil, new Short("13"), new Integer("151"), valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 2, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 02 * Raz�o Cont�bil = 13 e Conta Cont�bil = 152 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = PUBLICO */ else if (etapa == 2){ //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoCategoria(lancamentoContabil, new Short("13"), new Integer("152"), null, null, null, valorTotalPublico, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 3, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 03 * contaContabil = CNCT_ID da tabela LANCAMENTO_ITEM_CONTABIL com LICT_ID = id do �tem de lan�amento cont�bil * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = Valor acumulado para cada �tem de lan�amento cont�bil */ else { this.inserirLancamentoContabilItemAcumulandoItems(lancamentoContabil, colecaoAcumularValoresPorLancamentoItemContabil, ConstantesSistema.INDICADOR_CREDITO); } break; case LancamentoTipo.FATURAMENTO_ADICIONAL_GUIA_PAGAMENTO_INT: /* * ETAPA N� 01 * Raz�o Cont�bil = 12 e Conta Cont�bil = 111 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = RESIDENCIAL + COMERCIAL + INDUSTRIAL */ if (etapa == 1){ //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoCategoria(lancamentoContabil, new Short("12"), new Integer("111"), valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 2, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 02 * Raz�o Cont�bil = 12 e Conta Cont�bil = 112 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = PUBLICO */ else if (etapa == 2){ //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoCategoria(lancamentoContabil, new Short("12"), new Integer("112"), null, null, null, valorTotalPublico, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 3, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 03 * contaContabil = CNCT_ID da tabela LANCAMENTO_ITEM_CONTABIL com LICT_ID = id do �tem de lan�amento cont�bil * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = Valor acumulado para cada �tem de lan�amento cont�bil */ else { this.inserirLancamentoContabilItemAcumulandoItems(lancamentoContabil, colecaoAcumularValoresPorLancamentoItemContabil, ConstantesSistema.INDICADOR_CREDITO); } break; case LancamentoTipo.FINANCIAMENTOS_CANCELADOS_CURTO_PRAZO_INT: /* * ETAPA N� 01 * contaContabil = CNCT_ID da tabela LANCAMENTO_ITEM_CONTABIL com LICT_ID = id do �tem de lan�amento cont�bil * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = Valor acumulado para cada �tem de lan�amento cont�bil */ if (etapa == 1){ //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoItems(lancamentoContabil, colecaoAcumularValoresPorLancamentoItemContabil, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 2, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 02 * Raz�o Cont�bil = 12 e Conta Cont�bil = 151 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = RESIDENCIAL + COMERCIAL + INDUSTRIAL */ else if (etapa == 2){ //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoCategoria(lancamentoContabil, new Short("12"), new Integer("151"), valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, null, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 3, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 03 * Raz�o Cont�bil = 12 e Conta Cont�bil = 152 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = PUBLICO */ else { //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoCategoria(lancamentoContabil, new Short("12"), new Integer("152"), null, null, null, valorTotalPublico, ConstantesSistema.INDICADOR_CREDITO); } break; case LancamentoTipo.FINANCIAMENTOS_CANCELADOS_LONGO_PRAZO_INT: /* * ETAPA N� 01 * contaContabil = CNCT_ID da tabela LANCAMENTO_ITEM_CONTABIL com LICT_ID = id do �tem de lan�amento cont�bil * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = Valor acumulado para cada �tem de lan�amento cont�bil */ if (etapa == 1){ //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoItems(lancamentoContabil, colecaoAcumularValoresPorLancamentoItemContabil, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 2, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 02 * Raz�o Cont�bil = 13 e Conta Cont�bil = 151 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = RESIDENCIAL + COMERCIAL + INDUSTRIAL */ else if (etapa == 2){ //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoCategoria(lancamentoContabil, new Short("13"), new Integer("151"), valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, null, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 3, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 03 * Raz�o Cont�bil = 13 e Conta Cont�bil = 152 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = PUBLICO */ else { //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoCategoria(lancamentoContabil, new Short("13"), new Integer("152"), null, null, null, valorTotalPublico, ConstantesSistema.INDICADOR_CREDITO); } break; case LancamentoTipo.CANCELAMENTOS_POR_REFATURAMENTO_INT: /* * ETAPA N� 01 * Raz�o Cont�bil = 31 e Conta Cont�bil = 111 * Indicador D�bito/Cr�dito = D�bito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(AGUA) + RESIDENCIAL */ if (etapa == 1){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.AGUA); categoria.setId(Categoria.RESIDENCIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("31"), new Integer("111"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 2, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 02 * Raz�o Cont�bil = 31 e Conta Cont�bil = 112 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(AGUA) + COMERCIAL */ else if (etapa == 2){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.AGUA); categoria.setId(Categoria.COMERCIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("31"), new Integer("112"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 3, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 03 * Raz�o Cont�bil = 31 e Conta Cont�bil = 113 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(AGUA) + INDUSTRIAL */ else if (etapa == 3){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.AGUA); categoria.setId(Categoria.INDUSTRIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("31"), new Integer("113"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 4, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 04 * Raz�o Cont�bil = 31 e Conta Cont�bil = 114 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(AGUA) + PUBLICO */ else if (etapa == 4){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.AGUA); categoria.setId(Categoria.PUBLICO); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("31"), new Integer("114"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 5, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 05 * Raz�o Cont�bil = 12 e Conta Cont�bil = 111 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(AGUA) + RESIDENCIAL + COMERCIAL + INDUSTRIAL */ else if (etapa == 5){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.AGUA); categoria.setId(Categoria.RESIDENCIAL); //Para os casos que trabalham com mais de uma categoria Categoria categoriaAuxilar1 = new Categoria(); categoriaAuxilar1.setId(Categoria.COMERCIAL); Categoria categoriaAuxilar2 = new Categoria(); categoriaAuxilar2.setId(Categoria.INDUSTRIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("12"), new Integer("111"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, categoriaAuxilar1, categoriaAuxilar2, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 6, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 06 * Raz�o Cont�bil = 12 e Conta Cont�bil = 112 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(AGUA) + PUBLICO */ else if (etapa == 6){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.AGUA); categoria.setId(Categoria.PUBLICO); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("12"), new Integer("112"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 7, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 07 * Raz�o Cont�bil = 31 e Conta Cont�bil = 211 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(ESGOTO) + RESIDENCIAL */ else if (etapa == 7){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.ESGOTO); categoria.setId(Categoria.RESIDENCIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("31"), new Integer("211"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 8, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 08 * Raz�o Cont�bil = 31 e Conta Cont�bil = 212 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(ESGOTO) + COMERCIAL */ else if (etapa == 8){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.ESGOTO); categoria.setId(Categoria.COMERCIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("31"), new Integer("212"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 9, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 09 * Raz�o Cont�bil = 31 e Conta Cont�bil = 213 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(ESGOTO) + INDUSTRIAL */ else if (etapa == 9){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.ESGOTO); categoria.setId(Categoria.INDUSTRIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("31"), new Integer("213"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 10, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 10 * Raz�o Cont�bil = 31 e Conta Cont�bil = 214 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(ESGOTO) + PUBLICO */ else if (etapa == 10){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.ESGOTO); categoria.setId(Categoria.PUBLICO); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("31"), new Integer("214"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 11, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 11 * Raz�o Cont�bil = 12 e Conta Cont�bil = 111 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(ESGOTO) + RESIDENCIAL + COMERCIAL + INDUSTRIAL */ else if (etapa == 11){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.ESGOTO); categoria.setId(Categoria.RESIDENCIAL); //Para os casos que trabalham com mais de uma categoria Categoria categoriaAuxilar1 = new Categoria(); categoriaAuxilar1.setId(Categoria.COMERCIAL); Categoria categoriaAuxilar2 = new Categoria(); categoriaAuxilar2.setId(Categoria.INDUSTRIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("12"), new Integer("111"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, categoriaAuxilar1, categoriaAuxilar2, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 12, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 12 * Raz�o Cont�bil = 12 e Conta Cont�bil = 112 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(ESGOTO) + PUBLICO */ else if (etapa == 12){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.ESGOTO); categoria.setId(Categoria.PUBLICO); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("12"), new Integer("112"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 13, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 13 * contaContabil = CNCT_ID da tabela LANCAMENTO_ITEM_CONTABIL com LICT_ID = id do �tem de lan�amento cont�bil * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = Valor acumulado para cada �tem de lan�amento cont�bil */ else if (etapa == 13){ //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoItems(lancamentoContabil, colecaoAcumularValoresPorLancamentoItemContabil, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 14, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 14 * Raz�o Cont�bil = 12 e Conta Cont�bil = 111 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = RESIDENCIAL + COMERCIAL + INDUSTRIAL */ else if (etapa == 14){ //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoCategoria(lancamentoContabil, new Short("12"), new Integer("111"), valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, null, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 15, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 15 * Raz�o Cont�bil = 12 e Conta Cont�bil = 112 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = PUBLICO */ else { //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoCategoria(lancamentoContabil, new Short("12"), new Integer("112"), null, null, null, valorTotalPublico, ConstantesSistema.INDICADOR_CREDITO); } break; case LancamentoTipo.PARCELAMENTOS_COBRADOS_SUP_CANCELAMENTOS_POR_REFATURAMENTO_INT: /* * ETAPA N� 01 * Raz�o Cont�bil = 31 e Conta Cont�bil = 111 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(AGUA) + RESIDENCIAL */ if (etapa == 1){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.AGUA); categoria.setId(Categoria.RESIDENCIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("31"), new Integer("111"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 2, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 02 * Raz�o Cont�bil = 31 e Conta Cont�bil = 112 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(AGUA) + COMERCIAL */ else if (etapa == 2){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.AGUA); categoria.setId(Categoria.COMERCIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("31"), new Integer("112"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 3, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 03 * Raz�o Cont�bil = 31 e Conta Cont�bil = 113 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(AGUA) + INDUSTRIAL */ else if (etapa == 3){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.AGUA); categoria.setId(Categoria.INDUSTRIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("31"), new Integer("113"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 4, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 04 * Raz�o Cont�bil = 31 e Conta Cont�bil = 114 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(AGUA) + PUBLICO */ else if (etapa == 4){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.AGUA); categoria.setId(Categoria.PUBLICO); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("31"), new Integer("114"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 5, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 05 * Raz�o Cont�bil = 12 e Conta Cont�bil = 111 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(AGUA) + RESIDENCIAL + COMERCIAL + INDUSTRIAL */ else if (etapa == 5){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.AGUA); categoria.setId(Categoria.RESIDENCIAL); //Para os casos que trabalham com mais de uma categoria Categoria categoriaAuxilar1 = new Categoria(); categoriaAuxilar1.setId(Categoria.COMERCIAL); Categoria categoriaAuxilar2 = new Categoria(); categoriaAuxilar2.setId(Categoria.INDUSTRIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("12"), new Integer("111"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, categoriaAuxilar1, categoriaAuxilar2, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 6, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 06 * Raz�o Cont�bil = 12 e Conta Cont�bil = 112 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(AGUA) + PUBLICO */ else if (etapa == 6){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.AGUA); categoria.setId(Categoria.PUBLICO); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("12"), new Integer("112"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 7, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 07 * Raz�o Cont�bil = 31 e Conta Cont�bil = 211 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(ESGOTO) + RESIDENCIAL */ else if (etapa == 7){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.ESGOTO); categoria.setId(Categoria.RESIDENCIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("31"), new Integer("211"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 8, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 08 * Raz�o Cont�bil = 31 e Conta Cont�bil = 212 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(ESGOTO) + COMERCIAL */ else if (etapa == 8){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.ESGOTO); categoria.setId(Categoria.COMERCIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("31"), new Integer("212"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 9, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 10 * Raz�o Cont�bil = 31 e Conta Cont�bil = 214 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(ESGOTO) + PUBLICO */ else if (etapa == 10){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.ESGOTO); categoria.setId(Categoria.PUBLICO); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("31"), new Integer("214"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 11, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 11 * Raz�o Cont�bil = 12 e Conta Cont�bil = 111 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(ESGOTO) + RESIDENCIAL + COMERCIAL + INDUSTRIAL */ else if (etapa == 11){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.ESGOTO); categoria.setId(Categoria.RESIDENCIAL); //Para os casos que trabalham com mais de uma categoria Categoria categoriaAuxilar1 = new Categoria(); categoriaAuxilar1.setId(Categoria.COMERCIAL); Categoria categoriaAuxilar2 = new Categoria(); categoriaAuxilar2.setId(Categoria.INDUSTRIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("12"), new Integer("111"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, categoriaAuxilar1, categoriaAuxilar2, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 12, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 12 * Raz�o Cont�bil = 12 e Conta Cont�bil = 112 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(ESGOTO) + PUBLICO */ else if (etapa == 12){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.ESGOTO); categoria.setId(Categoria.PUBLICO); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("12"), new Integer("112"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 13, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 13 * contaContabil = CNCT_ID da tabela LANCAMENTO_ITEM_CONTABIL com LICT_ID = id do �tem de lan�amento cont�bil * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = Valor acumulado para cada �tem de lan�amento cont�bil */ else if (etapa == 13){ //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoItems(lancamentoContabil, colecaoAcumularValoresPorLancamentoItemContabil, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 14, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 14 * Raz�o Cont�bil = 12 e Conta Cont�bil = 111 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = RESIDENCIAL + COMERCIAL + INDUSTRIAL */ else if (etapa == 14){ //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoCategoria(lancamentoContabil, new Short("12"), new Integer("111"), valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, null, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 15, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 15 * Raz�o Cont�bil = 12 e Conta Cont�bil = 112 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = PUBLICO */ else if (etapa == 15){ //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoCategoria(lancamentoContabil, new Short("12"), new Integer("112"), null, null, null, valorTotalPublico, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 16, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 16 * Raz�o Cont�bil = 31 e Conta Cont�bil = 122 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(JUROS) */ else if (etapa == 16){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.JUROS); this.inserirLancamentoContabilItemAcumulandoItemEspecifico(lancamentoContabil, new Short("31"), new Integer("122"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 17, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 17 * Raz�o Cont�bil = 12 e Conta Cont�bil = 111 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(JUROS) + RESIDENCIAL + COMERCIAL + INDUSTRIAL */ else if (etapa == 17){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.JUROS); categoria.setId(Categoria.RESIDENCIAL); //Para os casos que trabalham com mais de uma categoria Categoria categoriaAuxilar1 = new Categoria(); categoriaAuxilar1.setId(Categoria.COMERCIAL); Categoria categoriaAuxilar2 = new Categoria(); categoriaAuxilar2.setId(Categoria.INDUSTRIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("12"), new Integer("111"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, categoriaAuxilar1, categoriaAuxilar2, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 18, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 18 * Raz�o Cont�bil = 12 e Conta Cont�bil = 112 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(JUROS) + PUBLICO */ else { //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.JUROS); categoria.setId(Categoria.PUBLICO); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("12"), new Integer("112"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_CREDITO); } break; case LancamentoTipo.INCLUSOES_POR_REFATURAMENTO_INT: /* * ETAPA N� 01 * Raz�o Cont�bil = 12 e Conta Cont�bil = 111 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(AGUA) + RESIDENCIAL + COMERCIAL + INDUSTRIAL */ if (etapa == 1){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.AGUA); categoria.setId(Categoria.RESIDENCIAL); //Para os casos que trabalham com mais de uma categoria Categoria categoriaAuxilar1 = new Categoria(); categoriaAuxilar1.setId(Categoria.COMERCIAL); Categoria categoriaAuxilar2 = new Categoria(); categoriaAuxilar2.setId(Categoria.INDUSTRIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("12"), new Integer("111"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, categoriaAuxilar1, categoriaAuxilar2, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 2, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 02 * Raz�o Cont�bil = 12 e Conta Cont�bil = 112 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(AGUA) + PUBLICO */ else if (etapa == 2){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.AGUA); categoria.setId(Categoria.PUBLICO); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("12"), new Integer("112"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 3, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 03 * Raz�o Cont�bil = 31 e Conta Cont�bil = 111 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(AGUA) + RESIDENCIAL */ else if (etapa == 3){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.AGUA); categoria.setId(Categoria.RESIDENCIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("31"), new Integer("111"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 4, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 04 * Raz�o Cont�bil = 31 e Conta Cont�bil = 112 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(AGUA) + COMERCIAL */ else if (etapa == 4){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.AGUA); categoria.setId(Categoria.COMERCIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("31"), new Integer("112"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 5, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 05 * Raz�o Cont�bil = 31 e Conta Cont�bil = 113 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(AGUA) + INDUSTRIAL */ else if (etapa == 5){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.AGUA); categoria.setId(Categoria.INDUSTRIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("31"), new Integer("113"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 6, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 06 * Raz�o Cont�bil = 31 e Conta Cont�bil = 114 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(AGUA) + PUBLICO */ else if (etapa == 6){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.AGUA); categoria.setId(Categoria.PUBLICO); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("31"), new Integer("114"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 7, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 07 * Raz�o Cont�bil = 12 e Conta Cont�bil = 111 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(ESGOTO) + RESIDENCIAL + COMERCIAL + INDUSTRIAL */ else if (etapa == 7){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.ESGOTO); categoria.setId(Categoria.RESIDENCIAL); //Para os casos que trabalham com mais de uma categoria Categoria categoriaAuxilar1 = new Categoria(); categoriaAuxilar1.setId(Categoria.COMERCIAL); Categoria categoriaAuxilar2 = new Categoria(); categoriaAuxilar2.setId(Categoria.INDUSTRIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("12"), new Integer("111"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, categoriaAuxilar1, categoriaAuxilar2, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 8, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 08 * Raz�o Cont�bil = 12 e Conta Cont�bil = 112 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(ESGOTO) + PUBLICO */ else if (etapa == 8){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.ESGOTO); categoria.setId(Categoria.PUBLICO); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("12"), new Integer("112"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 9, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 09 * Raz�o Cont�bil = 31 e Conta Cont�bil = 211 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(ESGOTO) + RESIDENCIAL */ else if (etapa == 9){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.ESGOTO); categoria.setId(Categoria.RESIDENCIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("31"), new Integer("211"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 10, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 10 * Raz�o Cont�bil = 31 e Conta Cont�bil = 212 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(ESGOTO) + COMERCIAL */ else if (etapa == 10){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.ESGOTO); categoria.setId(Categoria.COMERCIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("31"), new Integer("212"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 11, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 11 * Raz�o Cont�bil = 31 e Conta Cont�bil = 213 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(ESGOTO) + INDUSTRIAL */ else if (etapa == 11){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.ESGOTO); categoria.setId(Categoria.INDUSTRIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("31"), new Integer("213"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 12, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 12 * Raz�o Cont�bil = 31 e Conta Cont�bil = 214 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(ESGOTO) + PUBLICO */ else if (etapa == 12){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.ESGOTO); categoria.setId(Categoria.PUBLICO); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("31"), new Integer("214"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 13, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 13 * Raz�o Cont�bil = 12 e Conta Cont�bil = 111 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = RESIDENCIAL + COMERCIAL + INDUSTRIAL */ else if (etapa == 13){ //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoCategoria(lancamentoContabil, new Short("12"), new Integer("111"), valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 14, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 14 * Raz�o Cont�bil = 12 e Conta Cont�bil = 112 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = PUBLICO */ else if (etapa == 14){ //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoCategoria(lancamentoContabil, new Short("12"), new Integer("112"), null, null, null, valorTotalPublico, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 15, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 15 * contaContabil = CNCT_ID da tabela LANCAMENTO_ITEM_CONTABIL com LICT_ID = id do �tem de lan�amento cont�bil * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = Valor acumulado para cada �tem de lan�amento cont�bil */ else { //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoItems(lancamentoContabil, colecaoAcumularValoresPorLancamentoItemContabil, ConstantesSistema.INDICADOR_CREDITO); } break; case LancamentoTipo.FINANCIAMENTOS_COBRADOS_INT: /* * ETAPA N� 01 * Raz�o Cont�bil = 12 e Conta Cont�bil = 111 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = RESIDENCIAL + COMERCIAL + INDUSTRIAL */ if (etapa == 1){ //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoCategoria(lancamentoContabil, new Short("12"), new Integer("111"), valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 2, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 02 * Raz�o Cont�bil = 12 e Conta Cont�bil = 112 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = PUBLICO */ else if (etapa == 2){ //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoCategoria(lancamentoContabil, new Short("12"), new Integer("112"), null, null, null, valorTotalPublico, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 3, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 03 * Raz�o Cont�bil = 12 e Conta Cont�bil = 151 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = RESIDENCIAL + COMERCIAL + INDUSTRIAL */ else if (etapa == 3){ //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoCategoria(lancamentoContabil, new Short("12"), new Integer("151"), valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, null, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 4, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 04 * Raz�o Cont�bil = 12 e Conta Cont�bil = 152 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = PUBLICO */ else { //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoCategoria(lancamentoContabil, new Short("12"), new Integer("152"), null, null, null, valorTotalPublico, ConstantesSistema.INDICADOR_CREDITO); } break; case LancamentoTipo.FINANCIAMENTOS_TRANSFERIDOS_CURTO_PRAZO_INT: /* * ETAPA N� 01 * Raz�o Cont�bil = 12 e Conta Cont�bil = 151 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = RESIDENCIAL + COMERCIAL + INDUSTRIAL */ if (etapa == 1){ //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoCategoria(lancamentoContabil, new Short("12"), new Integer("151"), valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 2, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 02 * Raz�o Cont�bil = 12 e Conta Cont�bil = 152 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = PUBLICO */ else if (etapa == 2){ //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoCategoria(lancamentoContabil, new Short("12"), new Integer("152"), null, null, null, valorTotalPublico, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 3, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 03 * Raz�o Cont�bil = 13 e Conta Cont�bil = 151 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = RESIDENCIAL + COMERCIAL + INDUSTRIAL */ else if (etapa == 3){ //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoCategoria(lancamentoContabil, new Short("13"), new Integer("151"), valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, null, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 4, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 04 * Raz�o Cont�bil = 13 e Conta Cont�bil = 152 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = PUBLICO */ else { //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoCategoria(lancamentoContabil, new Short("13"), new Integer("152"), null, null, null, valorTotalPublico, ConstantesSistema.INDICADOR_CREDITO); } break; case LancamentoTipo.PARCELAMENTOS_REALIZADOS_CURTO_PRAZO_INT: /* * ETAPA N� 01 * Raz�o Cont�bil = 12 e Conta Cont�bil = 121 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(DOCUMENTOS_EMITIDOS) + RESIDENCIAL + COMERCIAL + INDUSTRIAL */ if (etapa == 1){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.DOCUMENTOS_EMITIDOS); categoria.setId(Categoria.RESIDENCIAL); //Para os casos que trabalham com mais de uma categoria Categoria categoriaAuxilar1 = new Categoria(); categoriaAuxilar1.setId(Categoria.COMERCIAL); Categoria categoriaAuxilar2 = new Categoria(); categoriaAuxilar2.setId(Categoria.INDUSTRIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("12"), new Integer("121"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, categoriaAuxilar1, categoriaAuxilar2, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 2, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 02 * Raz�o Cont�bil = 12 e Conta Cont�bil = 122 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(DOCUMENTOS_EMITIDOS) + PUBLICO */ else if (etapa == 2){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.DOCUMENTOS_EMITIDOS); categoria.setId(Categoria.PUBLICO); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("12"), new Integer("122"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 3, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 03 * Raz�o Cont�bil = 12 e Conta Cont�bil = 111 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(DOCUMENTOS_EMITIDOS) + RESIDENCIAL + COMERCIAL + INDUSTRIAL */ else if (etapa == 3){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.DOCUMENTOS_EMITIDOS); categoria.setId(Categoria.RESIDENCIAL); //Para os casos que trabalham com mais de uma categoria Categoria categoriaAuxilar1 = new Categoria(); categoriaAuxilar1.setId(Categoria.COMERCIAL); Categoria categoriaAuxilar2 = new Categoria(); categoriaAuxilar2.setId(Categoria.INDUSTRIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("12"), new Integer("111"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, categoriaAuxilar1, categoriaAuxilar2, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 4, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 04 * Raz�o Cont�bil = 12 e Conta Cont�bil = 112 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(DOCUMENTOS_EMITIDOS) + PUBLICO */ else if (etapa == 4){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.DOCUMENTOS_EMITIDOS); categoria.setId(Categoria.PUBLICO); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("12"), new Integer("112"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 5, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 05 * Raz�o Cont�bil = 12 e Conta Cont�bil = 121 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(FINANCIAMENTOS_A_COBRAR_CURTO_PRAZO) * + RESIDENCIAL + COMERCIAL + INDUSTRIAL */ else if (etapa == 5){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.FINANCIAMENTOS_A_COBRAR_CURTO_PRAZO); categoria.setId(Categoria.RESIDENCIAL); //Para os casos que trabalham com mais de uma categoria Categoria categoriaAuxilar1 = new Categoria(); categoriaAuxilar1.setId(Categoria.COMERCIAL); Categoria categoriaAuxilar2 = new Categoria(); categoriaAuxilar2.setId(Categoria.INDUSTRIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("12"), new Integer("121"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, categoriaAuxilar1, categoriaAuxilar2, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 6, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 06 * Raz�o Cont�bil = 12 e Conta Cont�bil = 122 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(FINANCIAMENTOS_A_COBRAR_CURTO_PRAZO) + PUBLICO */ else if (etapa == 6){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.FINANCIAMENTOS_A_COBRAR_CURTO_PRAZO); categoria.setId(Categoria.PUBLICO); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("12"), new Integer("122"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 7, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 07 * Raz�o Cont�bil = 12 e Conta Cont�bil = 151 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(FINANCIAMENTOS_A_COBRAR_CURTO_PRAZO) * + RESIDENCIAL + COMERCIAL + INDUSTRIAL */ else if (etapa == 7){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.FINANCIAMENTOS_A_COBRAR_CURTO_PRAZO); categoria.setId(Categoria.RESIDENCIAL); //Para os casos que trabalham com mais de uma categoria Categoria categoriaAuxilar1 = new Categoria(); categoriaAuxilar1.setId(Categoria.COMERCIAL); Categoria categoriaAuxilar2 = new Categoria(); categoriaAuxilar2.setId(Categoria.INDUSTRIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("12"), new Integer("151"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, categoriaAuxilar1, categoriaAuxilar2, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 8, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 08 * Raz�o Cont�bil = 12 e Conta Cont�bil = 152 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(FINANCIAMENTOS_A_COBRAR_CURTO_PRAZO) + PUBLICO */ else if (etapa == 8){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.FINANCIAMENTOS_A_COBRAR_CURTO_PRAZO); categoria.setId(Categoria.PUBLICO); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("12"), new Integer("152"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 9, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 09 * Raz�o Cont�bil = 12 e Conta Cont�bil = 121 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(FINANCIAMENTOS_A_COBRAR_LONGO_PRAZO) * + RESIDENCIAL + COMERCIAL + INDUSTRIAL */ else if (etapa == 9){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.FINANCIAMENTOS_A_COBRAR_LONGO_PRAZO); categoria.setId(Categoria.RESIDENCIAL); //Para os casos que trabalham com mais de uma categoria Categoria categoriaAuxilar1 = new Categoria(); categoriaAuxilar1.setId(Categoria.COMERCIAL); Categoria categoriaAuxilar2 = new Categoria(); categoriaAuxilar2.setId(Categoria.INDUSTRIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("12"), new Integer("121"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, categoriaAuxilar1, categoriaAuxilar2, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 10, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 10 * Raz�o Cont�bil = 12 e Conta Cont�bil = 122 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(FINANCIAMENTOS_A_COBRAR_LONGO_PRAZO) + PUBLICO */ else if (etapa == 10){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.FINANCIAMENTOS_A_COBRAR_LONGO_PRAZO); categoria.setId(Categoria.PUBLICO); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("12"), new Integer("122"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 11, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 11 * Raz�o Cont�bil = 13 e Conta Cont�bil = 151 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(FINANCIAMENTOS_A_COBRAR_LONGO_PRAZO) * + RESIDENCIAL + COMERCIAL + INDUSTRIAL */ else if (etapa == 11){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.FINANCIAMENTOS_A_COBRAR_LONGO_PRAZO); categoria.setId(Categoria.RESIDENCIAL); //Para os casos que trabalham com mais de uma categoria Categoria categoriaAuxilar1 = new Categoria(); categoriaAuxilar1.setId(Categoria.COMERCIAL); Categoria categoriaAuxilar2 = new Categoria(); categoriaAuxilar2.setId(Categoria.INDUSTRIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("13"), new Integer("151"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, categoriaAuxilar1, categoriaAuxilar2, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 12, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 12 * Raz�o Cont�bil = 13 e Conta Cont�bil = 152 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(FINANCIAMENTOS_A_COBRAR_LONGO_PRAZO) + PUBLICO */ else if (etapa == 12){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.FINANCIAMENTOS_A_COBRAR_LONGO_PRAZO); categoria.setId(Categoria.PUBLICO); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("13"), new Integer("152"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 13, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 13 * Raz�o Cont�bil = 12 e Conta Cont�bil = 121 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(PARCELAMENTO_A_COBRAR_LONGO_PRAZO) * + RESIDENCIAL + COMERCIAL + INDUSTRIAL */ else if (etapa == 13){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.PARCELAMENTOS_A_COBRAR_LONGO_PRAZO); categoria.setId(Categoria.RESIDENCIAL); //Para os casos que trabalham com mais de uma categoria Categoria categoriaAuxilar1 = new Categoria(); categoriaAuxilar1.setId(Categoria.COMERCIAL); Categoria categoriaAuxilar2 = new Categoria(); categoriaAuxilar2.setId(Categoria.INDUSTRIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("12"), new Integer("121"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, categoriaAuxilar1, categoriaAuxilar2, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 14, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 14 * Raz�o Cont�bil = 12 e Conta Cont�bil = 122 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(PARCELAMENTO_A_COBRAR_LONGO_PRAZO) + PUBLICO */ else if (etapa == 14){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.PARCELAMENTOS_A_COBRAR_LONGO_PRAZO); categoria.setId(Categoria.PUBLICO); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("12"), new Integer("122"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 15, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 15 * Raz�o Cont�bil = 13 e Conta Cont�bil = 121 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(PARCELAMENTO_A_COBRAR_LONGO_PRAZO) * + RESIDENCIAL + COMERCIAL + INDUSTRIAL */ else if (etapa == 15){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.PARCELAMENTOS_A_COBRAR_LONGO_PRAZO); categoria.setId(Categoria.RESIDENCIAL); //Para os casos que trabalham com mais de uma categoria Categoria categoriaAuxilar1 = new Categoria(); categoriaAuxilar1.setId(Categoria.COMERCIAL); Categoria categoriaAuxilar2 = new Categoria(); categoriaAuxilar2.setId(Categoria.INDUSTRIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("13"), new Integer("121"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, categoriaAuxilar1, categoriaAuxilar2, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 16, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 16 * Raz�o Cont�bil = 13 e Conta Cont�bil = 122 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(PARCELAMENTO_A_COBRAR_LONGO_PRAZO) + PUBLICO */ else if (etapa == 16){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.PARCELAMENTOS_A_COBRAR_LONGO_PRAZO); categoria.setId(Categoria.PUBLICO); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("13"), new Integer("122"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 17, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 17 * Raz�o Cont�bil = 12 e Conta Cont�bil = 121 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(JUROS_COBRADOS) * + RESIDENCIAL + COMERCIAL + INDUSTRIAL */ else if (etapa == 17){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.JUROS_COBRADOS); categoria.setId(Categoria.RESIDENCIAL); //Para os casos que trabalham com mais de uma categoria Categoria categoriaAuxilar1 = new Categoria(); categoriaAuxilar1.setId(Categoria.COMERCIAL); Categoria categoriaAuxilar2 = new Categoria(); categoriaAuxilar2.setId(Categoria.INDUSTRIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("12"), new Integer("121"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, categoriaAuxilar1, categoriaAuxilar2, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 18, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 18 * Raz�o Cont�bil = 12 e Conta Cont�bil = 122 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(JUROS_COBRADOS) + PUBLICO */ else if (etapa == 18){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.JUROS_COBRADOS); categoria.setId(Categoria.PUBLICO); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("12"), new Integer("122"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 19, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 19 * Raz�o Cont�bil = 31 e Conta Cont�bil = 122 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(JUROS_COBRADOS) */ else if (etapa == 19){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.JUROS_COBRADOS); this.inserirLancamentoContabilItemAcumulandoItemEspecifico(lancamentoContabil, new Short("31"), new Integer("122"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 20, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 20 * Raz�o Cont�bil = 31 e Conta Cont�bil = 122 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(JUROS_CANCELADOS) */ else if (etapa == 20){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.JUROS_CANCELADOS); this.inserirLancamentoContabilItemAcumulandoItemEspecifico(lancamentoContabil, new Short("31"), new Integer("122"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 21, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 21 * Raz�o Cont�bil = 12 e Conta Cont�bil = 121 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(JUROS_CANCELADOS) * + RESIDENCIAL + COMERCIAL + INDUSTRIAL */ else if (etapa == 21){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.JUROS_CANCELADOS); categoria.setId(Categoria.RESIDENCIAL); //Para os casos que trabalham com mais de uma categoria Categoria categoriaAuxilar1 = new Categoria(); categoriaAuxilar1.setId(Categoria.COMERCIAL); Categoria categoriaAuxilar2 = new Categoria(); categoriaAuxilar2.setId(Categoria.INDUSTRIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("12"), new Integer("121"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, categoriaAuxilar1, categoriaAuxilar2, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 22, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 23 * Raz�o Cont�bil = 12 e Conta Cont�bil = 122 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(JUROS_CANCELADOS) + PUBLICO */ else if (etapa == 22){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.JUROS_CANCELADOS); categoria.setId(Categoria.PUBLICO); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("12"), new Integer("122"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 23, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 23 * Raz�o Cont�bil = 12 e Conta Cont�bil = 121 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(DEBITOS_ANTERIORES_PARA_RECOBRANCA) * + RESIDENCIAL + COMERCIAL + INDUSTRIAL */ else if (etapa == 23){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.DEBITOS_ANTERIORES_PARA_RECOBRANCA); categoria.setId(Categoria.RESIDENCIAL); //Para os casos que trabalham com mais de uma categoria Categoria categoriaAuxilar1 = new Categoria(); categoriaAuxilar1.setId(Categoria.COMERCIAL); Categoria categoriaAuxilar2 = new Categoria(); categoriaAuxilar2.setId(Categoria.INDUSTRIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("12"), new Integer("121"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, categoriaAuxilar1, categoriaAuxilar2, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 24, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 24 * Raz�o Cont�bil = 12 e Conta Cont�bil = 122 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(DEBITOS_ANTERIORES_PARA_RECOBRANCA) + PUBLICO */ else if (etapa == 24){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.DEBITOS_ANTERIORES_PARA_RECOBRANCA); categoria.setId(Categoria.PUBLICO); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("12"), new Integer("122"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 25, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 25 * Raz�o Cont�bil = 12 e Conta Cont�bil = 111 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(DEBITOS_ANTERIORES_PARA_RECOBRANCA) * + RESIDENCIAL + COMERCIAL + INDUSTRIAL */ else if (etapa == 25){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.DEBITOS_ANTERIORES_PARA_RECOBRANCA); categoria.setId(Categoria.RESIDENCIAL); //Para os casos que trabalham com mais de uma categoria Categoria categoriaAuxilar1 = new Categoria(); categoriaAuxilar1.setId(Categoria.COMERCIAL); Categoria categoriaAuxilar2 = new Categoria(); categoriaAuxilar2.setId(Categoria.INDUSTRIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("12"), new Integer("111"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, categoriaAuxilar1, categoriaAuxilar2, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 26, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 26 * Raz�o Cont�bil = 12 e Conta Cont�bil = 112 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(DEBITOS_ANTERIORES_PARA_RECOBRANCA) + PUBLICO */ else { //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.DEBITOS_ANTERIORES_PARA_RECOBRANCA); categoria.setId(Categoria.PUBLICO); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("12"), new Integer("112"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_CREDITO); } break; case LancamentoTipo.PARCELAMENTOS_REALIZADOS_LONGO_PRAZO_INT: /* * ETAPA N� 01 * Raz�o Cont�bil = 13 e Conta Cont�bil = 121 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(DOCUMENTOS_EMITIDOS) * + RESIDENCIAL + COMERCIAL + INDUSTRIAL */ if (etapa == 1){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.DOCUMENTOS_EMITIDOS); categoria.setId(Categoria.RESIDENCIAL); //Para os casos que trabalham com mais de uma categoria Categoria categoriaAuxilar1 = new Categoria(); categoriaAuxilar1.setId(Categoria.COMERCIAL); Categoria categoriaAuxilar2 = new Categoria(); categoriaAuxilar2.setId(Categoria.INDUSTRIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("13"), new Integer("121"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, categoriaAuxilar1, categoriaAuxilar2, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 2, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 02 * Raz�o Cont�bil = 13 e Conta Cont�bil = 122 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(DOCUMENTOS_EMITIDOS) + PUBLICO */ else if (etapa == 2){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.DOCUMENTOS_EMITIDOS); categoria.setId(Categoria.PUBLICO); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("13"), new Integer("122"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 3, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 03 * Raz�o Cont�bil = 12 e Conta Cont�bil = 111 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(DOCUMENTOS_EMITIDOS) * + RESIDENCIAL + COMERCIAL + INDUSTRIAL */ else if (etapa == 3){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.DOCUMENTOS_EMITIDOS); categoria.setId(Categoria.RESIDENCIAL); //Para os casos que trabalham com mais de uma categoria Categoria categoriaAuxilar1 = new Categoria(); categoriaAuxilar1.setId(Categoria.COMERCIAL); Categoria categoriaAuxilar2 = new Categoria(); categoriaAuxilar2.setId(Categoria.INDUSTRIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("12"), new Integer("111"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, categoriaAuxilar1, categoriaAuxilar2, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 4, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 04 * Raz�o Cont�bil = 12 e Conta Cont�bil = 112 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(DOCUMENTOS_EMITIDOS) + PUBLICO */ else if (etapa == 4){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.DOCUMENTOS_EMITIDOS); categoria.setId(Categoria.PUBLICO); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("12"), new Integer("112"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 5, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 05 * Raz�o Cont�bil = 13 e Conta Cont�bil = 121 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(FINANCIAMENTOS_A_COBRAR_CURTO_PRAZO) * + RESIDENCIAL + COMERCIAL + INDUSTRIAL */ else if (etapa == 5){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.FINANCIAMENTOS_A_COBRAR_CURTO_PRAZO); categoria.setId(Categoria.RESIDENCIAL); //Para os casos que trabalham com mais de uma categoria Categoria categoriaAuxilar1 = new Categoria(); categoriaAuxilar1.setId(Categoria.COMERCIAL); Categoria categoriaAuxilar2 = new Categoria(); categoriaAuxilar2.setId(Categoria.INDUSTRIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("13"), new Integer("121"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, categoriaAuxilar1, categoriaAuxilar2, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 6, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 06 * Raz�o Cont�bil = 13 e Conta Cont�bil = 122 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(FINANCIAMENTOS_A_COBRAR_CURTO_PRAZO) + PUBLICO */ else if (etapa == 6){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.FINANCIAMENTOS_A_COBRAR_CURTO_PRAZO); categoria.setId(Categoria.PUBLICO); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("13"), new Integer("122"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 7, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 07 * Raz�o Cont�bil = 12 e Conta Cont�bil = 151 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(FINANCIAMENTOS_A_COBRAR_CURTO_PRAZO) * + RESIDENCIAL + COMERCIAL + INDUSTRIAL */ else if (etapa == 7){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.FINANCIAMENTOS_A_COBRAR_CURTO_PRAZO); categoria.setId(Categoria.RESIDENCIAL); //Para os casos que trabalham com mais de uma categoria Categoria categoriaAuxilar1 = new Categoria(); categoriaAuxilar1.setId(Categoria.COMERCIAL); Categoria categoriaAuxilar2 = new Categoria(); categoriaAuxilar2.setId(Categoria.INDUSTRIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("12"), new Integer("151"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, categoriaAuxilar1, categoriaAuxilar2, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 8, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 08 * Raz�o Cont�bil = 12 e Conta Cont�bil = 152 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(FINANCIAMENTOS_A_COBRAR_CURTO_PRAZO) + PUBLICO */ else if (etapa == 8){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.FINANCIAMENTOS_A_COBRAR_CURTO_PRAZO); categoria.setId(Categoria.PUBLICO); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("12"), new Integer("152"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 9, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 09 * Raz�o Cont�bil = 13 e Conta Cont�bil = 121 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(FINANCIAMENTOS_A_COBRAR_LONGO_PRAZO) * + RESIDENCIAL + COMERCIAL + INDUSTRIAL */ else if (etapa == 9){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.FINANCIAMENTOS_A_COBRAR_LONGO_PRAZO); categoria.setId(Categoria.RESIDENCIAL); //Para os casos que trabalham com mais de uma categoria Categoria categoriaAuxilar1 = new Categoria(); categoriaAuxilar1.setId(Categoria.COMERCIAL); Categoria categoriaAuxilar2 = new Categoria(); categoriaAuxilar2.setId(Categoria.INDUSTRIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("13"), new Integer("121"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, categoriaAuxilar1, categoriaAuxilar2, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 10, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 10 * Raz�o Cont�bil = 13 e Conta Cont�bil = 122 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(FINANCIAMENTOS_A_COBRAR_LONGO_PRAZO) + PUBLICO */ else if (etapa == 10){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.FINANCIAMENTOS_A_COBRAR_LONGO_PRAZO); categoria.setId(Categoria.PUBLICO); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("13"), new Integer("122"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 11, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 11 * Raz�o Cont�bil = 13 e Conta Cont�bil = 151 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(FINANCIAMENTOS_A_COBRAR_LONGO_PRAZO) * + RESIDENCIAL + COMERCIAL + INDUSTRIAL */ else if (etapa == 11){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.FINANCIAMENTOS_A_COBRAR_LONGO_PRAZO); categoria.setId(Categoria.RESIDENCIAL); //Para os casos que trabalham com mais de uma categoria Categoria categoriaAuxilar1 = new Categoria(); categoriaAuxilar1.setId(Categoria.COMERCIAL); Categoria categoriaAuxilar2 = new Categoria(); categoriaAuxilar2.setId(Categoria.INDUSTRIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("13"), new Integer("151"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, categoriaAuxilar1, categoriaAuxilar2, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 12, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 12 * Raz�o Cont�bil = 13 e Conta Cont�bil = 152 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(FINANCIAMENTOS_A_COBRAR_LONGO_PRAZO) + PUBLICO */ else if (etapa == 12){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.FINANCIAMENTOS_A_COBRAR_LONGO_PRAZO); categoria.setId(Categoria.PUBLICO); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("13"), new Integer("152"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 13, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 13 * Raz�o Cont�bil = 13 e Conta Cont�bil = 121 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(PARCELAMENTO_A_COBRAR_CURTO_PRAZO) * + RESIDENCIAL + COMERCIAL + INDUSTRIAL */ else if (etapa == 13){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.PARCELAMENTOS_A_COBRAR_CURTO_PRAZO); categoria.setId(Categoria.RESIDENCIAL); //Para os casos que trabalham com mais de uma categoria Categoria categoriaAuxilar1 = new Categoria(); categoriaAuxilar1.setId(Categoria.COMERCIAL); Categoria categoriaAuxilar2 = new Categoria(); categoriaAuxilar2.setId(Categoria.INDUSTRIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("13"), new Integer("121"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, categoriaAuxilar1, categoriaAuxilar2, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 14, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 14 * Raz�o Cont�bil = 13 e Conta Cont�bil = 122 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(PARCELAMENTO_A_COBRAR_LONGO_PRAZO) + PUBLICO */ else if (etapa == 14){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.PARCELAMENTOS_A_COBRAR_CURTO_PRAZO); categoria.setId(Categoria.PUBLICO); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("13"), new Integer("122"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 15, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 15 * Raz�o Cont�bil = 12 e Conta Cont�bil = 121 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(PARCELAMENTO_A_COBRAR_CURTO_PRAZO) * + RESIDENCIAL + COMERCIAL + INDUSTRIAL */ else if (etapa == 15){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.PARCELAMENTOS_A_COBRAR_CURTO_PRAZO); categoria.setId(Categoria.RESIDENCIAL); //Para os casos que trabalham com mais de uma categoria Categoria categoriaAuxilar1 = new Categoria(); categoriaAuxilar1.setId(Categoria.COMERCIAL); Categoria categoriaAuxilar2 = new Categoria(); categoriaAuxilar2.setId(Categoria.INDUSTRIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("12"), new Integer("121"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, categoriaAuxilar1, categoriaAuxilar2, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 16, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 16 * Raz�o Cont�bil = 12 e Conta Cont�bil = 122 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(PARCELAMENTO_A_COBRAR_LONGO_PRAZO) + PUBLICO */ else if (etapa == 16){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.PARCELAMENTOS_A_COBRAR_CURTO_PRAZO); categoria.setId(Categoria.PUBLICO); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("12"), new Integer("122"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 17, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 17 * Raz�o Cont�bil = 13 e Conta Cont�bil = 121 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(JUROS_COBRADOS) * + RESIDENCIAL + COMERCIAL + INDUSTRIAL */ else if (etapa == 17){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.JUROS_COBRADOS); categoria.setId(Categoria.RESIDENCIAL); //Para os casos que trabalham com mais de uma categoria Categoria categoriaAuxilar1 = new Categoria(); categoriaAuxilar1.setId(Categoria.COMERCIAL); Categoria categoriaAuxilar2 = new Categoria(); categoriaAuxilar2.setId(Categoria.INDUSTRIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("13"), new Integer("121"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, categoriaAuxilar1, categoriaAuxilar2, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 18, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 18 * Raz�o Cont�bil = 13 e Conta Cont�bil = 122 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(JUROS_COBRADOS) + PUBLICO */ else if (etapa == 18){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.JUROS_COBRADOS); categoria.setId(Categoria.PUBLICO); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("13"), new Integer("122"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 19, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 19 * Raz�o Cont�bil = 31 e Conta Cont�bil = 122 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(JUROS_COBRADOS) */ else if (etapa == 19){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.JUROS_COBRADOS); this.inserirLancamentoContabilItemAcumulandoItemEspecifico(lancamentoContabil, new Short("31"), new Integer("122"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 20, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 20 * Raz�o Cont�bil = 31 e Conta Cont�bil = 122 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(JUROS_CANCELADOS) */ else if (etapa == 20){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.JUROS_CANCELADOS); this.inserirLancamentoContabilItemAcumulandoItemEspecifico(lancamentoContabil, new Short("31"), new Integer("122"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 21, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 21 * Raz�o Cont�bil = 13 e Conta Cont�bil = 121 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(JUROS_CANCELADOS) * + RESIDENCIAL + COMERCIAL + INDUSTRIAL */ else if (etapa == 21){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.JUROS_CANCELADOS); categoria.setId(Categoria.RESIDENCIAL); //Para os casos que trabalham com mais de uma categoria Categoria categoriaAuxilar1 = new Categoria(); categoriaAuxilar1.setId(Categoria.COMERCIAL); Categoria categoriaAuxilar2 = new Categoria(); categoriaAuxilar2.setId(Categoria.INDUSTRIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("13"), new Integer("121"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, categoriaAuxilar1, categoriaAuxilar2, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 22, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 22 * Raz�o Cont�bil = 13 e Conta Cont�bil = 122 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(JUROS_CANCELADOS) + PUBLICO */ else { //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.JUROS_COBRADOS); categoria.setId(Categoria.PUBLICO); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("13"), new Integer("122"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_CREDITO); } break; case LancamentoTipo.PARCELAMENTOS_CANCELADOS_CURTO_PRAZO_INT: /* * ETAPA N� 01 * Raz�o Cont�bil = 31 e Conta Cont�bil = 111 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(AGUA) + RESIDENCIAL */ if (etapa == 1){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.AGUA); categoria.setId(Categoria.RESIDENCIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("31"), new Integer("111"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 2, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 02 * Raz�o Cont�bil = 31 e Conta Cont�bil = 112 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(AGUA) + COMERCIAL */ else if (etapa == 2){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.AGUA); categoria.setId(Categoria.COMERCIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("31"), new Integer("112"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 3, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 03 * Raz�o Cont�bil = 31 e Conta Cont�bil = 113 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(AGUA) + INDUSTRIAL */ else if (etapa == 3){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.AGUA); categoria.setId(Categoria.INDUSTRIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("31"), new Integer("113"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 4, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 04 * Raz�o Cont�bil = 31 e Conta Cont�bil = 114 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(AGUA) + PUBLICO */ else if (etapa == 4){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.AGUA); categoria.setId(Categoria.PUBLICO); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("31"), new Integer("114"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 5, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 05 * Raz�o Cont�bil = 12 e Conta Cont�bil = 121 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(AGUA) * + RESIDENCIAL + COMERCIAL + INDUSTRIAL */ else if (etapa == 5){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.AGUA); categoria.setId(Categoria.RESIDENCIAL); //Para os casos que trabalham com mais de uma categoria Categoria categoriaAuxilar1 = new Categoria(); categoriaAuxilar1.setId(Categoria.COMERCIAL); Categoria categoriaAuxilar2 = new Categoria(); categoriaAuxilar2.setId(Categoria.INDUSTRIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("12"), new Integer("121"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, categoriaAuxilar1, categoriaAuxilar2, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 6, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 06 * Raz�o Cont�bil = 12 e Conta Cont�bil = 122 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(AGUA) + PUBLICO */ else if (etapa == 6){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.AGUA); categoria.setId(Categoria.PUBLICO); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("12"), new Integer("122"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 7, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 07 * Raz�o Cont�bil = 31 e Conta Cont�bil = 211 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(ESGOTO) + RESIDENCIAL */ else if (etapa == 7){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.ESGOTO); categoria.setId(Categoria.RESIDENCIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("31"), new Integer("211"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 8, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 08 * Raz�o Cont�bil = 31 e Conta Cont�bil = 212 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(ESGOTO) + COMERCIAL */ else if (etapa == 8){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.ESGOTO); categoria.setId(Categoria.COMERCIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("31"), new Integer("212"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 9, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 09 * Raz�o Cont�bil = 31 e Conta Cont�bil = 213 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(ESGOTO) + INDUSTRIAL */ else if (etapa == 9){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.ESGOTO); categoria.setId(Categoria.INDUSTRIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("31"), new Integer("213"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 10, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 10 * Raz�o Cont�bil = 31 e Conta Cont�bil = 214 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(ESGOTO) + PUBLICO */ else if (etapa == 10){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.ESGOTO); categoria.setId(Categoria.PUBLICO); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("31"), new Integer("214"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 11, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 11 * Raz�o Cont�bil = 12 e Conta Cont�bil = 121 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(ESGOTO) * + RESIDENCIAL + COMERCIAL + INDUSTRIAL */ else if (etapa == 11){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.ESGOTO); categoria.setId(Categoria.RESIDENCIAL); //Para os casos que trabalham com mais de uma categoria Categoria categoriaAuxilar1 = new Categoria(); categoriaAuxilar1.setId(Categoria.COMERCIAL); Categoria categoriaAuxilar2 = new Categoria(); categoriaAuxilar2.setId(Categoria.INDUSTRIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("12"), new Integer("121"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, categoriaAuxilar1, categoriaAuxilar2, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 12, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 12 * Raz�o Cont�bil = 12 e Conta Cont�bil = 122 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(ESGOTO) + PUBLICO */ else if (etapa == 12){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.ESGOTO); categoria.setId(Categoria.PUBLICO); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("12"), new Integer("122"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 13, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 13 * contaContabil = CNCT_ID da tabela LANCAMENTO_ITEM_CONTABIL com LICT_ID = id do �tem de lan�amento cont�bil * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = Valor acumulado para cada �tem de lan�amento cont�bil */ else if (etapa == 13){ //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoItems(lancamentoContabil, colecaoAcumularValoresPorLancamentoItemContabil, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 14, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 14 * Raz�o Cont�bil = 12 e Conta Cont�bil = 121 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = RESIDENCIAL + COMERCIAL + INDUSTRIAL */ else if (etapa == 14){ //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoCategoria(lancamentoContabil, new Short("12"), new Integer("121"), valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, null, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 15, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 15 * Raz�o Cont�bil = 12 e Conta Cont�bil = 122 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = PUBLICO */ else if (etapa == 15){ //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoCategoria(lancamentoContabil, new Short("12"), new Integer("122"), null, null, null, valorTotalPublico, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 16, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 16 * Raz�o Cont�bil = 31 e Conta Cont�bil = 122 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(JUROS) */ else if (etapa == 16){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.JUROS); this.inserirLancamentoContabilItemAcumulandoItemEspecifico(lancamentoContabil, new Short("31"), new Integer("122"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 17, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 17 * Raz�o Cont�bil = 12 e Conta Cont�bil = 121 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(JUROS) * + RESIDENCIAL + COMERCIAL + INDUSTRIAL */ else if (etapa == 17){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.JUROS); categoria.setId(Categoria.RESIDENCIAL); //Para os casos que trabalham com mais de uma categoria Categoria categoriaAuxilar1 = new Categoria(); categoriaAuxilar1.setId(Categoria.COMERCIAL); Categoria categoriaAuxilar2 = new Categoria(); categoriaAuxilar2.setId(Categoria.INDUSTRIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("12"), new Integer("121"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, categoriaAuxilar1, categoriaAuxilar2, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 18, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 18 * Raz�o Cont�bil = 12 e Conta Cont�bil = 122 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(JUROS) + PUBLICO */ else { //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.JUROS); categoria.setId(Categoria.PUBLICO); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("12"), new Integer("122"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_CREDITO); } break; case LancamentoTipo.PARCELAMENTOS_CANCELADOS_LONGO_PRAZO_INT: /* * ETAPA N� 01 * Raz�o Cont�bil = 31 e Conta Cont�bil = 111 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(AGUA) + RESIDENCIAL */ if (etapa == 1) { //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.AGUA); categoria.setId(Categoria.RESIDENCIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("31"), new Integer("111"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 2, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 02 * Raz�o Cont�bil = 31 e Conta Cont�bil = 112 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(AGUA) + COMERCIAL */ else if (etapa == 2) { //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.AGUA); categoria.setId(Categoria.COMERCIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("31"), new Integer("112"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 3, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 03 * Raz�o Cont�bil = 31 e Conta Cont�bil = 113 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(AGUA) + INSDUSTRIAL */ else if (etapa == 3) { //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.AGUA); categoria.setId(Categoria.INDUSTRIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("31"), new Integer("113"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 4, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 04 * Raz�o Cont�bil = 31 e Conta Cont�bil = 114 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(AGUA) + PUBLICO */ else if (etapa == 4) { //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.AGUA); categoria.setId(Categoria.PUBLICO); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("31"), new Integer("114"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 5, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 05 * Raz�o Cont�bil = 13 e Conta Cont�bil = 121 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(AGUA) * + RESIDENCIAL + COMERCIAL + INDUSTRIAL */ else if (etapa == 5){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.AGUA); categoria.setId(Categoria.RESIDENCIAL); //Para os casos que trabalham com mais de uma categoria Categoria categoriaAuxilar1 = new Categoria(); categoriaAuxilar1.setId(Categoria.COMERCIAL); Categoria categoriaAuxilar2 = new Categoria(); categoriaAuxilar2.setId(Categoria.INDUSTRIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("13"), new Integer("121"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, categoriaAuxilar1, categoriaAuxilar2, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 6, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 06 * Raz�o Cont�bil = 13 e Conta Cont�bil = 122 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(AGUA) + PUBLICO */ else if (etapa == 6) { //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.AGUA); categoria.setId(Categoria.PUBLICO); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("13"), new Integer("122"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 7, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 07 * Raz�o Cont�bil = 31 e Conta Cont�bil = 211 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(ESGOTO) + RESIDENCIAL */ else if (etapa == 7) { //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.ESGOTO); categoria.setId(Categoria.RESIDENCIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("31"), new Integer("211"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 8, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 08 * Raz�o Cont�bil = 31 e Conta Cont�bil = 212 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(ESGOTO) + COMERCIAL */ else if (etapa == 8) { //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.ESGOTO); categoria.setId(Categoria.COMERCIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("31"), new Integer("212"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 9, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 09 * Raz�o Cont�bil = 31 e Conta Cont�bil = 213 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(ESGOTO) + INDUSTRIAL */ else if (etapa == 9) { //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.ESGOTO); categoria.setId(Categoria.INDUSTRIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("31"), new Integer("213"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 10, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 10 * Raz�o Cont�bil = 31 e Conta Cont�bil = 214 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(ESGOTO) + PUBLICO */ else if (etapa == 10) { //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.ESGOTO); categoria.setId(Categoria.PUBLICO); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("31"), new Integer("214"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 11, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 11 * Raz�o Cont�bil = 13 e Conta Cont�bil = 121 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(ESGOTO) * + RESIDENCIAL + COMERCIAL + INDUSTRIAL */ else if (etapa == 11){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.ESGOTO); categoria.setId(Categoria.RESIDENCIAL); //Para os casos que trabalham com mais de uma categoria Categoria categoriaAuxilar1 = new Categoria(); categoriaAuxilar1.setId(Categoria.COMERCIAL); Categoria categoriaAuxilar2 = new Categoria(); categoriaAuxilar2.setId(Categoria.INDUSTRIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("13"), new Integer("121"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, categoriaAuxilar1, categoriaAuxilar2, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 12, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 12 * Raz�o Cont�bil = 13 e Conta Cont�bil = 122 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(ESGOTO) + PUBLICO */ else if (etapa == 12) { //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.ESGOTO); categoria.setId(Categoria.PUBLICO); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("13"), new Integer("122"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 13, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 13 * contaContabil = CNCT_ID da tabela LANCAMENTO_ITEM_CONTABIL com LICT_ID = id do �tem de lan�amento cont�bil * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = Valor acumulado para cada �tem de lan�amento cont�bil */ else if (etapa == 13){ //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoItems(lancamentoContabil, colecaoAcumularValoresPorLancamentoItemContabil, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 14, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 14 * Raz�o Cont�bil = 13 e Conta Cont�bil = 121 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = RESIDENCIAL + COMERCIAL + INDUSTRIAL */ else if (etapa == 14){ //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoCategoria(lancamentoContabil, new Short("13"), new Integer("121"), valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, null, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 15, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 15 * Raz�o Cont�bil = 12 e Conta Cont�bil = 122 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = PUBLICO */ else if (etapa == 15){ //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoCategoria(lancamentoContabil, new Short("12"), new Integer("122"), null, null, null, valorTotalPublico, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 16, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 16 * Raz�o Cont�bil = 31 e Conta Cont�bil = 122 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = LANCAMENTO_ITEM(JUROS) */ else if (etapa == 16){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.JUROS); this.inserirLancamentoContabilItemAcumulandoItemEspecifico(lancamentoContabil, new Short("31"), new Integer("122"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 17, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 17 * Raz�o Cont�bil = 13 e Conta Cont�bil = 121 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(JUROS) * + RESIDENCIAL + COMERCIAL + INDUSTRIAL */ else if (etapa == 17){ //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.JUROS); categoria.setId(Categoria.RESIDENCIAL); //Para os casos que trabalham com mais de uma categoria Categoria categoriaAuxilar1 = new Categoria(); categoriaAuxilar1.setId(Categoria.COMERCIAL); Categoria categoriaAuxilar2 = new Categoria(); categoriaAuxilar2.setId(Categoria.INDUSTRIAL); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("13"), new Integer("121"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, categoriaAuxilar1, categoriaAuxilar2, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 18, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 18 * Raz�o Cont�bil = 13 e Conta Cont�bil = 122 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = LANCAMENTO_ITEM(JUROS) + PUBLICO */ else { //Inseri o registro de acordo com os dados passados lancamentoItem.setId(LancamentoItem.JUROS); categoria.setId(Categoria.PUBLICO); this.inserirLancamentoContabilItemAcumulandoItemsCategorias(lancamentoContabil, new Short("13"), new Integer("122"), colecaoAcumularValoresPorLancamentoItemCategoria, lancamentoItem, categoria, null, null, ConstantesSistema.INDICADOR_CREDITO); } break; case LancamentoTipo.PARCELAMENTOS_COBRADOS_INT: /* * ETAPA N� 01 * Raz�o Cont�bil = 12 e Conta Cont�bil = 111 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = RESIDENCIAL + COMERCIAL + INDUSTRIAL */ if (etapa == 1){ //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoCategoria(lancamentoContabil, new Short("12"), new Integer("111"), valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 2, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 02 * Raz�o Cont�bil = 12 e Conta Cont�bil = 112 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = PUBLICO */ else if (etapa == 2){ //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoCategoria(lancamentoContabil, new Short("12"), new Integer("112"), null, null, null, valorTotalPublico, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 3, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 03 * Raz�o Cont�bil = 12 e Conta Cont�bil = 121 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = RESIDENCIAL + COMERCIAL + INDUSTRIAL */ else if (etapa == 3){ //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoCategoria(lancamentoContabil, new Short("12"), new Integer("121"), valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, null, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 4, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 04 * Raz�o Cont�bil = 12 e Conta Cont�bil = 122 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = PUBLICO */ else { //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoCategoria(lancamentoContabil, new Short("12"), new Integer("122"), null, null, null, valorTotalPublico, ConstantesSistema.INDICADOR_CREDITO); } break; case LancamentoTipo.PARCELAMENTOS_TRASFERIDOS_PARA_CURTO_PRAZO_INT: /* * ETAPA N� 01 * Raz�o Cont�bil = 12 e Conta Cont�bil = 121 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = RESIDENCIAL + COMERCIAL + INDUSTRIAL */ if (etapa == 1){ //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoCategoria(lancamentoContabil, new Short("12"), new Integer("121"), valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 2, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 02 * Raz�o Cont�bil = 12 e Conta Cont�bil = 122 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = PUBLICO */ else if (etapa == 2){ //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoCategoria(lancamentoContabil, new Short("12"), new Integer("122"), null, null, null, valorTotalPublico, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 3, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 03 * Raz�o Cont�bil = 13 e Conta Cont�bil = 121 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = RESIDENCIAL + COMERCIAL + INDUSTRIAL */ else if (etapa == 3){ //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoCategoria(lancamentoContabil, new Short("13"), new Integer("121"), valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, null, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 4, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 04 * Raz�o Cont�bil = 13 e Conta Cont�bil = 122 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = PUBLICO */ else { //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoCategoria(lancamentoContabil, new Short("13"), new Integer("122"), null, null, null, valorTotalPublico, ConstantesSistema.INDICADOR_CREDITO); } break; case LancamentoTipo.DEBITOS_ANTERIORES_COBRADOS_INT: /* * ETAPA N� 01 * Raz�o Cont�bil = 12 e Conta Cont�bil = 111 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = RESIDENCIAL + COMERCIAL + INDUSTRIAL */ if (etapa == 1){ //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoCategoria(lancamentoContabil, new Short("12"), new Integer("111"), valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, null, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 2, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 02 * Raz�o Cont�bil = 12 e Conta Cont�bil = 112 * Indicador D�bito/Cr�dito = D�bito (2) * ValorItemFaturamento = PUBLICO */ else if (etapa == 2){ //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoCategoria(lancamentoContabil, new Short("12"), new Integer("112"), null, null, null, valorTotalPublico, ConstantesSistema.INDICADOR_DEBITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 3, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 03 * Raz�o Cont�bil = 12 e Conta Cont�bil = 121 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = RESIDENCIAL + COMERCIAL + INDUSTRIAL */ else if (etapa == 3){ //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoCategoria(lancamentoContabil, new Short("12"), new Integer("121"), valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, null, ConstantesSistema.INDICADOR_CREDITO); //Direciona para pr�xima ETAPA this.inserirLancamentoContabilItem(lancamentoContabil, 4, valorTotalResidencial, valorTotalComercial, valorTotalIndustrial, valorTotalPublico, colecaoAcumularValoresPorLancamentoItemContabil, colecaoAcumularValoresPorLancamentoItemCategoria); } /* * ETAPA N� 04 * Raz�o Cont�bil = 12 e Conta Cont�bil = 122 * Indicador D�bito/Cr�dito = Cr�dito (1) * ValorItemFaturamento = PUBLICO */ else { //Inseri o registro de acordo com os dados passados this.inserirLancamentoContabilItemAcumulandoCategoria(lancamentoContabil, new Short("12"), new Integer("122"), null, null, null, valorTotalPublico, ConstantesSistema.INDICADOR_CREDITO); } break; default: break; } } /** * [UC00175] - Gerar Lan�amentos Cont�beis * Author: Raphael Rossiter * Data: 17/01/2006 * * Auxilia no cadastramento de um objeto do tipo LANCAMENTO_CONTABIL_ITEM quando a situa��o * exige que o valor do faturamento seja acumulado por CATEGORIA. * * @param lancamentoContabil * @param numeroRazao * @param numeroConta * @param valorTotalResidencial * @param valorTotalComercial * @param valorTotalIndustrial * @param valorTotalPublico * @param indicadorDebitoCredito * @throws ControladorException */ protected void inserirLancamentoContabilItemAcumulandoCategoria(LancamentoContabil lancamentoContabil, Short numeroRazao, Integer numeroConta, BigDecimal valorTotalResidencial, BigDecimal valorTotalComercial, BigDecimal valorTotalIndustrial, BigDecimal valorTotalPublico, Short indicadorDebitoCredito) throws ControladorException { LancamentoContabilItem lancamentoContabilItem = new LancamentoContabilItem(); lancamentoContabilItem.setLancamentoContabil(lancamentoContabil); ContaContabil contaContabil = null; BigDecimal valorItemFaturamento = new BigDecimal("0.00"); try { contaContabil = repositorioFinanceiro.obterContaContabil(numeroRazao, numeroConta); } catch (ErroRepositorioException ex) { sessionContext.setRollbackOnly(); throw new ControladorException("erro.sistema", ex); } if (valorTotalResidencial != null){ valorItemFaturamento = valorItemFaturamento.add(valorTotalResidencial); } if (valorTotalComercial != null){ valorItemFaturamento = valorItemFaturamento.add(valorTotalComercial); } if (valorTotalIndustrial != null){ valorItemFaturamento = valorItemFaturamento.add(valorTotalIndustrial); } if (valorTotalPublico != null){ valorItemFaturamento = valorItemFaturamento.add(valorTotalPublico); } lancamentoContabilItem.setContaContabil(contaContabil); lancamentoContabilItem.setValorLancamento(valorItemFaturamento); lancamentoContabilItem.setIndicadorDebitoCredito(indicadorDebitoCredito); this.getControladorUtil().inserir(lancamentoContabilItem); } /** * [UC00175] - Gerar Lan�amentos Cont�beis * Author: Raphael Rossiter * Data: 17/01/2006 * * Auxilia no cadastramento de um ou v�rios objetos do tipo LANCAMENTO_CONTABIL_ITEM quando a situa��o * exige que o valor do faturamento seja acumulado por LANCAMENTO_ITEM_CONTABIL. * * @param lancamentoContabil * @param colecaoAcumularValoresPorLancamentoItemContabil * @param indicadorCreditoDebito * @throws ControladorException */ @SuppressWarnings("rawtypes") protected void inserirLancamentoContabilItemAcumulandoItems(LancamentoContabil lancamentoContabil, Collection<AcumularValoresHelper> colecaoAcumularValoresPorLancamentoItemContabil, Short indicadorDebitoCredito) throws ControladorException { LancamentoContabilItem lancamentoContabilItem = new LancamentoContabilItem(); lancamentoContabilItem.setLancamentoContabil(lancamentoContabil); ContaContabil contaContabil = null; Iterator colecaoAcumularValoresPorLancamentoItemContabilIt = colecaoAcumularValoresPorLancamentoItemContabil.iterator(); AcumularValoresHelper acumularValoresPorLancamentoItemContabil = null; LancamentoItemContabil lancamentoItemContabil = new LancamentoItemContabil(); while (colecaoAcumularValoresPorLancamentoItemContabilIt.hasNext()){ acumularValoresPorLancamentoItemContabil = (AcumularValoresHelper) colecaoAcumularValoresPorLancamentoItemContabilIt.next(); lancamentoItemContabil.setId(acumularValoresPorLancamentoItemContabil .getIdLancamentoItemContabil()); try { contaContabil = repositorioFinanceiro.obterContaContabil(lancamentoItemContabil); } catch (ErroRepositorioException ex) { sessionContext.setRollbackOnly(); throw new ControladorException("erro.sistema", ex); } lancamentoContabilItem.setContaContabil(contaContabil); lancamentoContabilItem.setValorLancamento(acumularValoresPorLancamentoItemContabil .getValorItemFaturamento()); lancamentoContabilItem.setIndicadorDebitoCredito(indicadorDebitoCredito); this.getControladorUtil().inserir(lancamentoContabilItem); } } /** * * @param lancamentoContabil * @param numeroRazao * @param numeroConta * @param colecaoAcumularValoresPorLancamentoItemContabilCategoria * @param lancamentoItem * @param categoria1 * @param categoria2 * @param categoria3 * @param indicadorDebitoCredito * @throws ControladorException */ @SuppressWarnings("rawtypes") protected void inserirLancamentoContabilItemAcumulandoItemsCategorias(LancamentoContabil lancamentoContabil, Short numeroRazao, Integer numeroConta, Collection<AcumularValoresHelper> colecaoAcumularValoresPorLancamentoItemContabilCategoria, LancamentoItem lancamentoItem, Categoria categoria1, Categoria categoria2, Categoria categoria3, Short indicadorDebitoCredito) throws ControladorException { LancamentoContabilItem lancamentoContabilItem = new LancamentoContabilItem(); lancamentoContabilItem.setLancamentoContabil(lancamentoContabil); ContaContabil contaContabil = null; try { contaContabil = repositorioFinanceiro.obterContaContabil(numeroRazao, numeroConta); } catch (ErroRepositorioException ex) { sessionContext.setRollbackOnly(); throw new ControladorException("erro.sistema", ex); } Iterator colecaoAcumularValoresPorLancamentoItemContabilCategoriaIt = colecaoAcumularValoresPorLancamentoItemContabilCategoria.iterator(); AcumularValoresHelper acumularValoresPorLancamentoItemContabilCategoria = null; //Para os casos que trabalham com mais de uma categoria BigDecimal valorAcumuladoLancamentoItemCategoria = new BigDecimal("0.00"); while (colecaoAcumularValoresPorLancamentoItemContabilCategoriaIt.hasNext()){ acumularValoresPorLancamentoItemContabilCategoria = (AcumularValoresHelper) colecaoAcumularValoresPorLancamentoItemContabilCategoriaIt.next(); //Para acumular com tr�s categorias if (categoria2 != null && categoria3 != null){ if (acumularValoresPorLancamentoItemContabilCategoria.getIdLancamentoItem().equals( lancamentoItem.getId()) && (acumularValoresPorLancamentoItemContabilCategoria.getIdCategoria().equals( categoria1.getId()) || acumularValoresPorLancamentoItemContabilCategoria.getIdCategoria().equals( categoria2.getId()) || acumularValoresPorLancamentoItemContabilCategoria.getIdCategoria().equals( categoria3.getId()))){ valorAcumuladoLancamentoItemCategoria.add(acumularValoresPorLancamentoItemContabilCategoria .getValorItemFaturamento()); } } //Para acumular com apenas uma categoria else{ if (acumularValoresPorLancamentoItemContabilCategoria.getIdLancamentoItem().equals( lancamentoItem.getId()) && acumularValoresPorLancamentoItemContabilCategoria.getIdCategoria().equals( categoria1.getId())){ lancamentoContabilItem.setContaContabil(contaContabil); lancamentoContabilItem.setValorLancamento(acumularValoresPorLancamentoItemContabilCategoria .getValorItemFaturamento()); lancamentoContabilItem.setIndicadorDebitoCredito(indicadorDebitoCredito); this.getControladorUtil().inserir(lancamentoContabilItem); break; } } } //Para os casos que trabalham com mais de uma categoria if (categoria2 != null && categoria3 != null){ lancamentoContabilItem.setContaContabil(contaContabil); lancamentoContabilItem.setValorLancamento(valorAcumuladoLancamentoItemCategoria); lancamentoContabilItem.setIndicadorDebitoCredito(indicadorDebitoCredito); this.getControladorUtil().inserir(lancamentoContabilItem); } } @SuppressWarnings("rawtypes") protected void inserirLancamentoContabilItemAcumulandoItemEspecifico(LancamentoContabil lancamentoContabil, Short numeroRazao, Integer numeroConta, Collection<AcumularValoresHelper> colecaoAcumularValoresPorLancamentoItemContabil, LancamentoItem lancamentoItem, Short indicadorDebitoCredito) throws ControladorException { LancamentoContabilItem lancamentoContabilItem = new LancamentoContabilItem(); lancamentoContabilItem.setLancamentoContabil(lancamentoContabil); ContaContabil contaContabil = null; try { contaContabil = repositorioFinanceiro.obterContaContabil(numeroRazao, numeroConta); } catch (ErroRepositorioException ex) { sessionContext.setRollbackOnly(); throw new ControladorException("erro.sistema", ex); } Iterator colecaoAcumularValoresPorLancamentoItemContabilIt = colecaoAcumularValoresPorLancamentoItemContabil.iterator(); AcumularValoresHelper acumularValoresPorLancamentoItemContabil = null; BigDecimal valorItemFaturamento = new BigDecimal("0.00"); while (colecaoAcumularValoresPorLancamentoItemContabilIt.hasNext()){ acumularValoresPorLancamentoItemContabil = (AcumularValoresHelper) colecaoAcumularValoresPorLancamentoItemContabilIt.next(); if (acumularValoresPorLancamentoItemContabil.getIdLancamentoItem().equals( lancamentoItem.getId())){ valorItemFaturamento.add(acumularValoresPorLancamentoItemContabil .getValorItemFaturamento()); } } if (!valorItemFaturamento.equals(new BigDecimal("0.00"))){ lancamentoContabilItem.setContaContabil(contaContabil); lancamentoContabilItem.setValorLancamento(valorItemFaturamento); lancamentoContabilItem.setIndicadorDebitoCredito(indicadorDebitoCredito); this.getControladorUtil().inserir(lancamentoContabilItem); } } /** * Pesquisa uma cole��o de lan�amento de item cont�bil * * @return Cole��o de Lan�amentos de Item Cont�bil * @exception ErroRepositorioException Erro no hibernate */ public Collection<LancamentoItemContabil> pesquisarLancamentoItemContabil() throws ControladorException{ try{ //pesquisa os lan�amentos de item cont�bil existentes no sisitema return repositorioLancamentoItemContabil.pesquisarLancamentoItemContabil(); //erro no hibernate } catch (ErroRepositorioException ex) { //levanta a exce��o para a pr�xima camada throw new ControladorException("erro.sistema", ex); } } /** * Gera Lan�amentos Cont�beis do Faturamento * * [UC000348] - Gerar Lan�amento Cont�beis da Arrecada��o * * @author Rafael Santos, Pedro Alexandre * @date 22/05/2006, 25/05/2007 * * @param anoMesArrecadacao * @throws ControladorException */ @SuppressWarnings({ "unchecked", "rawtypes" }) public void gerarLancamentoContabeisArrecadacao(Integer anoMesReferenciaArrecadacao, Integer idLocalidade, int idFuncionalidadeIniciada) throws ControladorException { int idUnidadeIniciada = 0; /* * Registrar o in�cio do processamento da Unidade de * Processamento do Batch * */ idUnidadeIniciada = getControladorBatch().iniciarUnidadeProcessamentoBatch(idFuncionalidadeIniciada,UnidadeProcessamento.LOCALIDADE,(idLocalidade)); try { Integer anoMesArrecadacaoAtual = getControladorUtil().pesquisarParametrosDoSistema().getAnoMesArrecadacao(); if(anoMesReferenciaArrecadacao.intValue() >anoMesArrecadacaoAtual.intValue()){ //levanta a exce��o para a pr�xima camada throw new ControladorException("atencao.mes_ano.arrecadacao.inferior",null,Util.formatarAnoMesParaMesAno(anoMesArrecadacaoAtual.toString())); } /* * Pesquisa os dados do resumo da arrecada��o para o ano/m�s de refer�ncia atual e * para a localidade informada. * * 0 - id da localidade * 1 - id do tipo de recebimento * 2 - id do tipo de lan�amento * 3 - id do item de lan�amento * 4 - id do item de lan�amento cont�bil * 5 - id da categoria * 6 - soma do valor do resumo da arrecada��o */ Collection<Object[]> colecaoDadosResumoArrecadacao = repositorioFinanceiro.obterDadosResumoArrecadacao(anoMesReferenciaArrecadacao, idLocalidade); /* * Caso exista resumo da arrecada��o para a localidade e o ano/m�s * cria o lan�amento cont�bil junto com seus items * para cada conjunto de mesmo tipo de lan�amento */ if (colecaoDadosResumoArrecadacao != null && !colecaoDadosResumoArrecadacao.isEmpty()){ //flag utilizada somente quando for a primeira entrada boolean flagPrimeiraVez = true; int idTipoLancamentoTemp = -1; Collection<Object[]> colecaoDadosResumoPorTipoLancamento = new ArrayList(); // defini��o da origem do lan�amento LancamentoOrigem lancamentoOrigem = new LancamentoOrigem(); lancamentoOrigem.setId(LancamentoOrigem.ARRECADACAO); //Cria a vari�vel que vai armazenar o lan�amento cont�bil LancamentoContabil lancamentoContabilInsert = null; //la�o para gerar os lan�amentos por grupo de tipo de lan�amento for(Object[] dadosResumoArrecadacao : colecaoDadosResumoArrecadacao){ //recupera o id do tipo de recebimento Integer idRecebimentoTipo = (Integer) dadosResumoArrecadacao[1]; //recupera o tipo de lan�amento atual Integer idTipoLancamento = (Integer) dadosResumoArrecadacao[2]; /* * Caso seja a primeira entrada do "for" * adiciona os dados a cole��o e atualiza o item temporario * criando tamb�m o lan�amento contabil que ira ser inserindo * junto com seus items. * * Caso contr�rio (n�o seja a primeira entrada do la�o "for") * verifica se o item de lan�amento mudou, caso n�o tenha mudado * adiciona os dados ao conjunto do mesmo item * caso contr�rio, se mudou o item de lan�amento o conjunto est� fechado * para o lan�amento cont�bil e chama o m�todo para inserir o * lan�amento cont�bil junto com seus itens. */ if(flagPrimeiraVez){ colecaoDadosResumoPorTipoLancamento.add(dadosResumoArrecadacao); flagPrimeiraVez = false; idTipoLancamentoTemp = idTipoLancamento; RecebimentoTipo recebimentoTipo = new RecebimentoTipo(); recebimentoTipo.setId(idRecebimentoTipo); LancamentoTipo tipoLancamento = new LancamentoTipo(); tipoLancamento.setId(idTipoLancamento); Localidade localidade = new Localidade(); localidade.setId(idLocalidade); //cri o lan�amento cont�bil que vai ser inserido lancamentoContabilInsert = new LancamentoContabil(); lancamentoContabilInsert.setAnoMes(anoMesReferenciaArrecadacao); lancamentoContabilInsert.setLancamentoOrigem(lancamentoOrigem); lancamentoContabilInsert.setLancamentoTipo(tipoLancamento); lancamentoContabilInsert.setLocalidade(localidade); lancamentoContabilInsert.setRecebimentoTipo(recebimentoTipo); lancamentoContabilInsert.setUltimaAlteracao(new Date()); }else{ /* * Caso ainda seja o mesmo item adicona os dados para * ser gerado os itens do lan�amento para o mesmo lan�amento. * Caso contr�rio chama o met�do para inseri os itens e o lan�amento cont�bil. */ if(idTipoLancamento == idTipoLancamentoTemp){ colecaoDadosResumoPorTipoLancamento.add(dadosResumoArrecadacao); }else{ /* met�do para inserir o lan�amento cont�bil assim como seus itens */ this.inserirLancamentoContabilItemArrecadacao(lancamentoContabilInsert, colecaoDadosResumoPorTipoLancamento); //limpaa cole��o e adiciona os dados do resumo atual colecaoDadosResumoPorTipoLancamento.clear(); colecaoDadosResumoPorTipoLancamento.add(dadosResumoArrecadacao); RecebimentoTipo recebimentoTipo = new RecebimentoTipo(); recebimentoTipo.setId(idRecebimentoTipo); LancamentoTipo tipoLancamento = new LancamentoTipo(); tipoLancamento.setId(idTipoLancamento); Localidade localidade = new Localidade(); localidade.setId(idLocalidade); //cria o lan�amento cont�bil que vai ser inserido lancamentoContabilInsert = new LancamentoContabil(); lancamentoContabilInsert.setAnoMes(anoMesReferenciaArrecadacao); lancamentoContabilInsert.setLancamentoOrigem(lancamentoOrigem); lancamentoContabilInsert.setLancamentoTipo(tipoLancamento); lancamentoContabilInsert.setLocalidade(localidade); lancamentoContabilInsert.setRecebimentoTipo(recebimentoTipo); lancamentoContabilInsert.setUltimaAlteracao(new Date()); //atualiza o tipo de lan�amento tempor�rio com o novo valor idTipoLancamentoTemp = idTipoLancamento; } } } /* * �ltimo registro * Esse "if" � para verificar se ainda existe um �ltimo registro na cole��o * caso exista algum item, adiciona o lan�amento cont�bil junto com o item. */ if(colecaoDadosResumoPorTipoLancamento != null && colecaoDadosResumoPorTipoLancamento.size() > 0 ){ this.inserirLancamentoContabilItemArrecadacao(lancamentoContabilInsert, colecaoDadosResumoPorTipoLancamento); colecaoDadosResumoPorTipoLancamento = null; } } getControladorBatch().encerrarUnidadeProcessamentoBatch(null,idUnidadeIniciada, false); } catch (Exception ex) { ex.printStackTrace(); getControladorBatch().encerrarUnidadeProcessamentoBatch(ex,idUnidadeIniciada, true); throw new EJBException(ex); } } /** * Este metodo � utilizado para pesquisar os registros q ser�o * usados para contru��o do txt do caso de uso * * [UC0469] Gerar Integra��o para a Contabilidade * * @author Pedro Alexandre * @date 28/05/2007 * * @param idLancamentoOrigem * @param anoMes * @return * @throws ControladorException */ @SuppressWarnings({ "rawtypes", "unchecked" }) public Collection pesquisarGerarIntegracaoContabilidade(String idLancamentoOrigem, String anoMes) throws ControladorException{ Collection colecaoObjetoGerar = null; Collection colecaoGerarIntegracaoContabilidade = null; try { colecaoObjetoGerar = repositorioFinanceiro.pesquisarGerarIntegracaoContabilidade(idLancamentoOrigem, anoMes); if(!colecaoObjetoGerar.isEmpty()){ Iterator iteratorPesquisa = colecaoObjetoGerar.iterator(); colecaoGerarIntegracaoContabilidade = new ArrayList(); GerarIntegracaoContabilidadeHelper gerarIntegracaoContabilidadeHelper = null; Object[] objetoGerar = null; while(iteratorPesquisa.hasNext()){ gerarIntegracaoContabilidadeHelper = new GerarIntegracaoContabilidadeHelper(); objetoGerar = (Object[]) iteratorPesquisa.next(); //numero cartao if(objetoGerar[0] != null){ gerarIntegracaoContabilidadeHelper.setNumeroCartao((Short)objetoGerar[0]); } //lancamento tipo if(objetoGerar[1] != null){ gerarIntegracaoContabilidadeHelper.setIdTipoLancamento((Integer) objetoGerar[1]); } //folha if(objetoGerar[2] != null){ gerarIntegracaoContabilidadeHelper.setFolha((Integer) objetoGerar[2]); } //linha if(objetoGerar[3] != null){ gerarIntegracaoContabilidadeHelper.setIndicadorLinha((Integer)objetoGerar[3]); } //prefixo contabil if(objetoGerar[4] != null){ gerarIntegracaoContabilidadeHelper.setNumeroPrefixoContabil((String) objetoGerar[4]); } //conta if(objetoGerar[5] != null){ gerarIntegracaoContabilidadeHelper.setCont((Integer) objetoGerar[5]); } //analise if(objetoGerar[6] != null){ gerarIntegracaoContabilidadeHelper.setAnalise((Integer) objetoGerar[6]); } //digito if(objetoGerar[7] != null){ gerarIntegracaoContabilidadeHelper.setDigito((Integer) objetoGerar[7]); } //terceiros if(objetoGerar[8] != null){ gerarIntegracaoContabilidadeHelper.setTerceiros((Integer) objetoGerar[8]); } //referencia if(objetoGerar[9] != null){ gerarIntegracaoContabilidadeHelper.setReferencial((Integer) objetoGerar[9]); } //valor lancamento if(objetoGerar[10] != null){ gerarIntegracaoContabilidadeHelper.setValorLancamento((BigDecimal)objetoGerar[10]); } //indicador debito credito if(objetoGerar[11] != null){ gerarIntegracaoContabilidadeHelper.setIndicadorDebitoConta((Integer) objetoGerar[11]); } //indicador debito credito if(objetoGerar[12] != null){ gerarIntegracaoContabilidadeHelper.setCartao2((Integer) objetoGerar[12]); } //id localidade if(objetoGerar[13] != null){ gerarIntegracaoContabilidadeHelper.setIdLocalidade((Integer) objetoGerar[13]); } colecaoGerarIntegracaoContabilidade.add(gerarIntegracaoContabilidadeHelper); } } } catch (ErroRepositorioException ex) { sessionContext.setRollbackOnly(); throw new ControladorException("erro.sistema", ex); } return colecaoGerarIntegracaoContabilidade; } /** * este caso de uso gera a integra��o para a contabilidade * * [UC0469] Gerar Integra��o para a Contabilidade * * @author Pedro Alexandre * @date 28/05/2007 * * @param idLancamentoOrigem * @param anoMes * @param data * @throws ControladorException */ @SuppressWarnings("unchecked") public void gerarIntegracaoContabilidade( String idLancamentoOrigem, String anoMes, String data) throws ControladorException { Collection<Object[]> colecaoDadosGerarIntegracao = null; try { colecaoDadosGerarIntegracao = repositorioFinanceiro.pesquisarGerarIntegracaoContabilidade(idLancamentoOrigem, anoMes); } catch (ErroRepositorioException ex) { sessionContext.setRollbackOnly(); throw new ControladorException("erro.sistema", ex); } StringBuilder gerarIntegracaoTxt = new StringBuilder(); String ano = data.substring(6,10); String mes = data.substring(3,5); String dia = data.substring(0,2); String anoMesDia = ano + "/" + mes + "/" + dia; String descricaoMes = Util.retornaDescricaoMes(new Integer(mes).intValue()); String descricaoLancamento = ""; String historico = "VALOR "; if (idLancamentoOrigem.equals(LancamentoOrigem.FATURAMENTO + "")) { descricaoLancamento = "FATURAMENTO"; historico += "FATURAMENTO DO MES DE " + descricaoMes + "/" + ano; } else if (idLancamentoOrigem.equals(LancamentoOrigem.ARRECADACAO + "")) { descricaoLancamento = "ARRECADACAO"; historico += "ARRECADACAO DO MES DE " + descricaoMes + "/" + ano; } else if (idLancamentoOrigem.equals(LancamentoOrigem.DEVEDORES_DUVIDOSOS + "")) { descricaoLancamento = "DEVEDORES_DUVIDOSOS"; historico += "DEVEDORES DUVIDOSOS DO MES DE " + descricaoMes + "/" + ano; } if(colecaoDadosGerarIntegracao != null && !colecaoDadosGerarIntegracao.isEmpty()) { String numeroConta = null; String centroCusto = null; BigDecimal valorDebito = null; BigDecimal valorCredito = null; String moeda = "BRL"; // La�o para gerar o txt for(Object[] dadosGerarIntegracao : colecaoDadosGerarIntegracao){ numeroConta = (String) dadosGerarIntegracao[0]; centroCusto = (String) dadosGerarIntegracao[1]; valorDebito = (BigDecimal) dadosGerarIntegracao[2]; valorCredito = (BigDecimal) dadosGerarIntegracao[3]; /* * Inicio da gera��o do txt */ // SEQ = 1 // CAMPO = DISPONIVEL // INICIO = 1 FIM = 1 // TAMANHO = 1 gerarIntegracaoTxt.append(";"); // SEQ = 2 // CAMPO = ANO // INICIO = 2 FIM = 5 // TAMANHO = 4 gerarIntegracaoTxt.append(Util.truncarString(ano, 4)); gerarIntegracaoTxt.append(";"); // SEQ = 3 // CAMPO = CONTA CONTABIL // INICIO = 6 FIM = 13 // TAMANHO = 8 gerarIntegracaoTxt.append(Util.truncarString(numeroConta, 8)); gerarIntegracaoTxt.append(";"); // SEQ = 4 // CAMPO = CENTRO CUSTO // INICIO = 14 FIM = 23 // TAMANHO = 10 if(centroCusto!=null) { gerarIntegracaoTxt.append(centroCusto); } gerarIntegracaoTxt.append(";"); // SEQ = 5 // CAMPO = LOCALIDADE // INICIO = 24 FIM = 73 // TAMANHO = 50 gerarIntegracaoTxt.append(";"); // SEQ = 6 // CAMPO = MUNICIPIO // INICIO = 74 FIM = 123 // TAMANHO = 50 // } gerarIntegracaoTxt.append(";"); // SEQ = 7 // CAMPO = DISPONIVEL // INICIO = 124 FIM = 129 // TAMANHO = 6 gerarIntegracaoTxt.append(";"); gerarIntegracaoTxt.append(";"); gerarIntegracaoTxt.append(";"); gerarIntegracaoTxt.append(";"); gerarIntegracaoTxt.append(";"); gerarIntegracaoTxt.append(";"); // SEQ = 8 // CAMPO = MOEDA // INICIO = 130 FIM = 132 // TAMANHO = 3 gerarIntegracaoTxt.append(moeda); gerarIntegracaoTxt.append(";"); // SEQ = 9 // CAMPO = VALOR DEBITO // INICIO = 133 FIM = 143 // TAMANHO = 11 if(valorDebito!= null) { gerarIntegracaoTxt.append(valorDebito.toString()); } gerarIntegracaoTxt.append(";"); // SEQ = 10 // CAMPO = VALOR CREDITO // INICIO = 144 FIM = 154 // TAMANHO = 11 if(valorCredito!=null) { gerarIntegracaoTxt.append(valorCredito.toString()); } gerarIntegracaoTxt.append(";"); // SEQ = 11 // CAMPO = DISPONIVEL // INICIO = 155 FIM = 155 // TAMANHO = 1 gerarIntegracaoTxt.append(";"); // SEQ = 12 // CAMPO = VALOR DEBITO // INICIO = 156 FIM = 166 // TAMANHO = 11 if(valorDebito!= null) { gerarIntegracaoTxt.append(valorDebito.toString()); } gerarIntegracaoTxt.append(";"); // SEQ = 13 // CAMPO = VALOR CREDITO // INICIO = 167 FIM = 177 // TAMANHO = 11 if(valorCredito!=null) { gerarIntegracaoTxt.append(valorCredito.toString()); } gerarIntegracaoTxt.append(";"); // SEQ = 14 // CAMPO = DISPONIVEL // INICIO = 178 FIM = 182 // TAMANHO = 5 gerarIntegracaoTxt.append(";"); gerarIntegracaoTxt.append(";"); gerarIntegracaoTxt.append(";"); gerarIntegracaoTxt.append(";"); gerarIntegracaoTxt.append(";"); // SEQ = 15 // CAMPO = HISTORICO // INICIO = 183 FIM = 438 // TAMANHO = 255 gerarIntegracaoTxt.append(historico); gerarIntegracaoTxt.append(";"); // SEQ = 16 // CAMPO = DISPONIVEL // INICIO = 439 FIM = 443 // TAMANHO = 5 gerarIntegracaoTxt.append(";"); gerarIntegracaoTxt.append(";"); gerarIntegracaoTxt.append(";"); gerarIntegracaoTxt.append(";"); gerarIntegracaoTxt.append(";"); gerarIntegracaoTxt.append(";"); // SEQ = 16 // CAMPO = DATA // INICIO = 444 FIM = 453 // TAMANHO = 10 gerarIntegracaoTxt.append(anoMesDia); gerarIntegracaoTxt.append(System.getProperty("line.separator")); } // Gerando o arquivo zip String nomeZip = "CONTABILIDADE_" + descricaoLancamento + "_" + (data.replace("/","_")); BufferedWriter out = null; ZipOutputStream zos = null; File compactadoTipo = new File(nomeZip + ".zip"); File leituraTipo = new File(nomeZip + ".txt"); if (gerarIntegracaoTxt != null && gerarIntegracaoTxt.length() != 0) { try { System.out.println("CRIANDO ZIP"); zos = new ZipOutputStream(new FileOutputStream(compactadoTipo)); out = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(leituraTipo.getAbsolutePath()))); out.write(gerarIntegracaoTxt.toString()); out.flush(); ZipUtil.adicionarArquivo(zos, leituraTipo); zos.close(); leituraTipo.delete(); out.close(); } catch (IOException ex) { throw new ControladorException("erro.sistema", ex); } try { // Envia de Arquivo por email EnvioEmail envioEmail = this.getControladorCadastro().pesquisarEnvioEmail( EnvioEmail.GERAR_INTEGRACAO_PARA_CONTABILIDADE); String emailRemetente = envioEmail.getEmailRemetente(); String tituloMensagem = envioEmail.getTituloMensagem(); String corpoMensagem = envioEmail.getCorpoMensagem(); String emailReceptor = envioEmail.getEmailReceptor(); ServicosEmail.enviarMensagemArquivoAnexado(emailReceptor, emailRemetente, tituloMensagem, corpoMensagem, compactadoTipo); } catch (Exception e) { System.out.println("Erro ao enviar email."); } } }else { if (idLancamentoOrigem.equals(LancamentoOrigem.FATURAMENTO + "")) { throw new ControladorException("atencao.pesquisa.nenhum_registro_tabela", null, "Resumo Faturamento"); } else if (idLancamentoOrigem.equals(LancamentoOrigem.ARRECADACAO + "")) { throw new ControladorException("atencao.pesquisa.nenhum_registro_tabela", null,"Resumo Arrecada��o"); } else if (idLancamentoOrigem.equals(LancamentoOrigem.DEVEDORES_DUVIDOSOS + "")) { throw new ControladorException("atencao.pesquisa.nenhum_registro_tabela", null,"Resumo Devedores Duvidosos"); } } } /** * * @author Arthur Carvalho * @date 25/10/2010 * @param anoMesReferenciaContabil * @param idLocalidade * @param idFuncionalidadeIniciada * @throws ControladorException */ @SuppressWarnings("rawtypes") public void apagarResumoDevedoresDuvidosos(int anoMesReferenciaContabil, Integer idLocalidade, int idFuncionalidadeIniciada) throws ControladorException { System.out.println("Localidade " + idLocalidade); int idUnidadeIniciada = 0; /* * Registrar o in�cio do processamento da Unidade de * Processamento do Batch */ idUnidadeIniciada = getControladorBatch().iniciarUnidadeProcessamentoBatch(idFuncionalidadeIniciada,UnidadeProcessamento.LOCALIDADE,(idLocalidade)); try { //Recupera os par�metros dos devedores duvidosos. ParametrosDevedoresDuvidosos parametrosDevedoresDuvidosos = this.repositorioFinanceiro.pesquisarParametrosDevedoresDuvidosos(anoMesReferenciaContabil); //[FS0001] - Verificar exist�ncia dos par�metros if(parametrosDevedoresDuvidosos == null){ throw new ControladorException("atencao.naocadastrado.referencia_contabil"); } // 2-Caso seja um reprocessamento if ( parametrosDevedoresDuvidosos.getDataProcessamento() != null ) { Collection colecaoQuadraId = this.repositorioFinanceiro.pesquisarIdsQuadrasParaGerarResumoDevedoresDuvidosos(idLocalidade); if ( colecaoQuadraId != null ) { Iterator iteratorIdsQuadra = colecaoQuadraId.iterator(); while ( iteratorIdsQuadra.hasNext() ) { Integer idQuadra = (Integer) iteratorIdsQuadra.next(); //o sistema atualiza com o valor nulo o ano/m�s refer�ncia cont�bil das contas baixadas //contabilmente no ano/m�s refer�ncia cont�bil this.repositorioFinanceiro.atualizaContaAnoMesReferenciaContabil(anoMesReferenciaContabil, idLocalidade, idQuadra); } } //exclui o resumo dos devedores duvidosos,referente ao ano/m�s refer�ncia cont�bil this.repositorioFinanceiro.removeResumoDevedoresDuvidososPorAnoMesReferenciaContabil(anoMesReferenciaContabil,idLocalidade); parametrosDevedoresDuvidosos.setValorBaixado(BigDecimal.ZERO); getControladorUtil().atualizar(parametrosDevedoresDuvidosos); } getControladorBatch().encerrarUnidadeProcessamentoBatch(null,idUnidadeIniciada, false); } catch (Exception ex) { ex.printStackTrace(); getControladorBatch().encerrarUnidadeProcessamentoBatch(ex, idUnidadeIniciada, true); throw new EJBException(ex); } } /** * [UC0485] - Gerar Resumo dos Devedores Duvidosos * Esse caso de uso foi dividido em 3 steps: * * 1 - apagarResumoDevedoresDuvidosos * 2 - gerarResumoDevedoresDuvidosos * 3 - atualiza * * Gera o resumo dos devedores duvidosos e marca as contas baixadas contabilmente. * * @author Rafael Pinto, Pedro Alexandre,Vivianne Sousa, Arthur Carvalho * @date 22/11/2006, 06/06/2007,09/09/2009 , 30/11/2010 * * @param anoMesReferenciaContabil * @param idLocalidade * @param idFuncionalidadeIniciada * @throws ControladorException */ @SuppressWarnings({ "unchecked", "rawtypes", "unused" }) public void gerarResumoDevedoresDuvidosos(int anoMesReferenciaContabil, Integer idLocalidade, int idFuncionalidadeIniciada) throws ControladorException { int idUnidadeIniciada = 0; /* * Registrar o in?cio do processamento da Unidade de * Processamento do Batch */ idUnidadeIniciada = getControladorBatch().iniciarUnidadeProcessamentoBatch(idFuncionalidadeIniciada,UnidadeProcessamento.LOCALIDADE,(idLocalidade)); try { Collection<GerarResumoDevedoresDuvidososHelper> colecaoGerarResumoDevedoresHelperTemp = null; List<GerarResumoDevedoresDuvidososHelper> colecaoGerarResumoDevedoresHelperPrincipal = new ArrayList(); Integer anoMesArrecadacao = null; //Recupera os par?metros dos devedores duvidosos. ParametrosDevedoresDuvidosos parametrosDevedoresDuvidosos = this.repositorioFinanceiro.pesquisarParametrosDevedoresDuvidosos(anoMesReferenciaContabil); BigDecimal valorLimiteBaixado = parametrosDevedoresDuvidosos.getValorABaixar(); BigDecimal valorTotalJaBaixado = parametrosDevedoresDuvidosos.getValorBaixado(); BigDecimal valorTotalValoresBaixados = BigDecimal.ZERO; //5.4-Caso o valor total dos valores baixados seja maior //5.5-Caso contr?rio,processar o grupo de contas do pr?ximo im?vel if(valorTotalJaBaixado.compareTo(valorLimiteBaixado) != 1) { //[FS0001] - Verificar exist?ncia dos par?metros if(parametrosDevedoresDuvidosos == null){ throw new ControladorException("atencao.naocadastrado.referencia_contabil"); } String anoMesString = ""+ parametrosDevedoresDuvidosos.getAnoMesReferenciaContabil(); Collection colecaoQuadraId = this.repositorioFinanceiro.pesquisarIdsQuadrasParaGerarResumoDevedoresDuvidosos(idLocalidade); //ATUALIZA AS CONTAS if ( colecaoQuadraId != null ) { Iterator iteratorIdsQuadra = colecaoQuadraId.iterator(); while ( iteratorIdsQuadra.hasNext() ) { Integer idQuadra = (Integer) iteratorIdsQuadra.next(); ////Pesquisa o valor total das contas que est?o na situa??o de Devedor Duvidosos valorTotalValoresBaixados = this.repositorioFinanceiro.obterValorTotalContasDevedoresDuvidosos( anoMesReferenciaContabil, idLocalidade, idQuadra, anoMesString, parametrosDevedoresDuvidosos.getId() ) ; //Recupera o percentual permitido e calcula o valor limite permitido de estouro BigDecimal percentualPermitido = new BigDecimal(0.10); BigDecimal valorLimiteBaixadoComPercentual = valorLimiteBaixado.add(valorLimiteBaixado.multiply(percentualPermitido)); if ( valorTotalValoresBaixados == null ) { valorTotalValoresBaixados = BigDecimal.ZERO; } parametrosDevedoresDuvidosos = this.repositorioFinanceiro.pesquisarParametrosDevedoresDuvidosos(anoMesReferenciaContabil); valorTotalJaBaixado = parametrosDevedoresDuvidosos.getValorBaixado().add(valorTotalValoresBaixados); if(valorTotalJaBaixado.compareTo(valorLimiteBaixadoComPercentual) != 1){ //7.Atualiza nos par?metros para baixa das contas dos devedores duvidosos a data e hora //do processamento e o valor total baixado this.repositorioFinanceiro.atualizarValorBaixadoParametrosDevedoresDuvidosos(anoMesReferenciaContabil ,valorTotalValoresBaixados); this.repositorioFinanceiro.atualizaContaAnoMesReferenciaContabilDevedoresDuvidosos(anoMesReferenciaContabil, idLocalidade, idQuadra ,parametrosDevedoresDuvidosos.getId() ); //[SB0001] - Acumular o resumo dos devedores duvidosos colecaoGerarResumoDevedoresHelperTemp = this.acumularResumoDevedoresDuvidosos(anoMesReferenciaContabil,idLocalidade, idQuadra , parametrosDevedoresDuvidosos.getId()); //Caso a cole??o temporaria n?o esteja vazia //acumula os registros que est?o na mesma quebra //e adiciona os novos registros. if(colecaoGerarResumoDevedoresHelperTemp != null && !colecaoGerarResumoDevedoresHelperTemp.isEmpty()){ if(colecaoGerarResumoDevedoresHelperPrincipal.isEmpty()){ colecaoGerarResumoDevedoresHelperPrincipal.addAll(colecaoGerarResumoDevedoresHelperTemp); colecaoGerarResumoDevedoresHelperTemp = null; }else{ for(GerarResumoDevedoresDuvidososHelper gerarResumoDevedoresDuvidososHelperTemp : colecaoGerarResumoDevedoresHelperTemp ){ if(colecaoGerarResumoDevedoresHelperPrincipal.contains(gerarResumoDevedoresDuvidososHelperTemp)){ int posicao = colecaoGerarResumoDevedoresHelperPrincipal.indexOf(gerarResumoDevedoresDuvidososHelperTemp); GerarResumoDevedoresDuvidososHelper jaCadastrado = colecaoGerarResumoDevedoresHelperPrincipal.get(posicao); if ( gerarResumoDevedoresDuvidososHelperTemp.getValorBaixado() != null && !gerarResumoDevedoresDuvidososHelperTemp.getValorBaixado().equals("") && !gerarResumoDevedoresDuvidososHelperTemp.getValorBaixado().equals("0") && jaCadastrado.getValorBaixado() != null ) { jaCadastrado.setValorBaixado(jaCadastrado.getValorBaixado().add(gerarResumoDevedoresDuvidososHelperTemp.getValorBaixado())); } }else{ if ( gerarResumoDevedoresDuvidososHelperTemp.getValorBaixado() != null && !gerarResumoDevedoresDuvidososHelperTemp.getValorBaixado().equals("") && !gerarResumoDevedoresDuvidososHelperTemp.getValorBaixado().equals("0") ) { colecaoGerarResumoDevedoresHelperPrincipal.add(gerarResumoDevedoresDuvidososHelperTemp); } } } colecaoGerarResumoDevedoresHelperTemp = null; } } } } Collection colecaoDevedoresDuvidosos = new ArrayList(); GerenciaRegional gerenciaRegional = new GerenciaRegional(); Integer idGerenciaRegional = this.getControladorLocalidade().pesquisarIdGerenciaParaLocalidade(idLocalidade); gerenciaRegional.setId(idGerenciaRegional); Localidade localidade = new Localidade(); localidade.setId(idLocalidade); //6.Inserir as linhas acumuladas do resumo dos devedores duvidosos if(colecaoGerarResumoDevedoresHelperPrincipal != null && !colecaoGerarResumoDevedoresHelperPrincipal.isEmpty()){ for(GerarResumoDevedoresDuvidososHelper temp : colecaoGerarResumoDevedoresHelperPrincipal){ //Caso o valor seja maior que zero o resumo vai ser inserido //caso contr?rio passar para o pr?ximo registro. if(temp.getValorBaixado() != null && temp.getValorBaixado().compareTo(BigDecimal.ZERO) == 1){ LancamentoItem lancamentoItem = null ; LancamentoTipo lancamentoTipo = null; LancamentoItemContabil lancamentoItemContabil = null; Categoria categoria = null; if(temp.getIdCategoria() != null){ categoria = new Categoria(); categoria.setId(temp.getIdCategoria()); } if(temp.getIdLancamentoItem() != null ){ lancamentoItem = new LancamentoItem(); lancamentoItem.setId(temp.getIdLancamentoItem()); } if(temp.getIdLancamentoTipo() != null ){ lancamentoTipo = new LancamentoTipo(); lancamentoTipo.setId(temp.getIdLancamentoTipo()); } if(temp.getIdLancamentoItemContabil() != null ){ lancamentoItemContabil = new LancamentoItemContabil(); lancamentoItemContabil.setId(temp.getIdLancamentoItemContabil()); } SistemaParametro sistemaParametro = getControladorUtil().pesquisarParametrosDoSistema(); if ( sistemaParametro != null ) { anoMesArrecadacao = sistemaParametro.getAnoMesArrecadacao(); } ResumoDevedoresDuvidosos resumoDevedoresDuvidosos = new ResumoDevedoresDuvidosos( anoMesReferenciaContabil, anoMesArrecadacao, temp.getNumeroSequenciaTipoLancamento(), temp.getNumeroSequencialItemTipoLancamento(), temp.getValorBaixado(), new Date(), gerenciaRegional, localidade, categoria, lancamentoItemContabil, lancamentoTipo, lancamentoItem); colecaoDevedoresDuvidosos.add(resumoDevedoresDuvidosos); } } } if ( colecaoDevedoresDuvidosos != null ) { //Inserindo o resumo getControladorBatch().inserirColecaoObjetoParaBatch(colecaoDevedoresDuvidosos); colecaoDevedoresDuvidosos = null; } } getControladorBatch().encerrarUnidadeProcessamentoBatch(null,idUnidadeIniciada, false); }else{ getControladorBatch().encerrarUnidadeProcessamentoBatch(null,idUnidadeIniciada, false); } } catch (Exception ex) { ex.printStackTrace(); getControladorBatch().encerrarUnidadeProcessamentoBatch(ex, idUnidadeIniciada, true); throw new EJBException(ex); } } /** * * [SB0001] - Acumular o resumo dos devedores duvidosos * * * @author Arthur Carvalho * @date 30/11/2010 * @param anoMesReferenciaContabil * @param idLocalidade * @param idParametrosDevedoresDuvidosos * @return * @throws ControladorException */ @SuppressWarnings({ "rawtypes", "unchecked" }) protected Collection<GerarResumoDevedoresDuvidososHelper> acumularResumoDevedoresDuvidosos(int anoMesReferenciaContabil, Integer idLocalidade, Integer idQuadra, Integer idParametrosDevedoresDuvidosos) throws ControladorException { Collection<GerarResumoDevedoresDuvidososHelper> colecaoRetorno = new ArrayList(); GerarResumoDevedoresDuvidososHelper gerarResumoDevedoresDuvidososHelper = null; Collection<Object[]> colecaoDadosTemporaria = null; final Short ZERO = 0; Short maxSequencialImpressaoMais10 = this.getControladorFaturamento().recuperarValorMaximoSequencialImpressaoMais10(); try { Integer idGerenciaRegional = this.getControladorLocalidade().pesquisarIdGerenciaParaLocalidade(idLocalidade); //TIPO DE FINANCIAMENTO = AGUA Collection<Object[]> valorAguaDevedoresDuvidosos = this.repositorioFinanceiro. pesquisarValorAguaAgrupadoPorCategoriaDevedoresDuvidosos( anoMesReferenciaContabil, idLocalidade, idQuadra , idParametrosDevedoresDuvidosos); if ( valorAguaDevedoresDuvidosos != null ) { Iterator iteratorValorAguaCategoria = valorAguaDevedoresDuvidosos.iterator(); while (iteratorValorAguaCategoria.hasNext()) { Object[] objeto = (Object[]) iteratorValorAguaCategoria.next(); BigDecimal valorAgua = (BigDecimal) objeto[0]; Integer categoriaId = (Integer) objeto[1]; gerarResumoDevedoresDuvidososHelper = new GerarResumoDevedoresDuvidososHelper(idLocalidade, idGerenciaRegional, categoriaId, LancamentoTipo.AGUA, LancamentoItem.AGUA, null, new Short("100"), ZERO, valorAgua); colecaoRetorno.add(gerarResumoDevedoresDuvidososHelper); } } //TIPO DE FINANCIAMENTO = ESGOTO Collection<Object[]> valorEsgotoDevedoresDuvidosos = this.repositorioFinanceiro. pesquisarValorEsgotoAgrupadoPorCategoriaDevedoresDuvidosos( anoMesReferenciaContabil, idLocalidade, idQuadra, idParametrosDevedoresDuvidosos); if ( valorEsgotoDevedoresDuvidosos != null ) { Iterator iteratorValorEsgotoCategoria = valorEsgotoDevedoresDuvidosos.iterator(); while (iteratorValorEsgotoCategoria.hasNext()) { Object[] objeto = (Object[]) iteratorValorEsgotoCategoria.next(); BigDecimal valorEsgoto = (BigDecimal) objeto[0]; Integer categoriaId = (Integer) objeto[1]; gerarResumoDevedoresDuvidososHelper = new GerarResumoDevedoresDuvidososHelper(idLocalidade, idGerenciaRegional, categoriaId, LancamentoTipo.ESGOTO, LancamentoItem.ESGOTO, null, new Short("200"), ZERO, valorEsgoto); colecaoRetorno.add(gerarResumoDevedoresDuvidososHelper); } } //TIPO DE FINANCIAMENTO = PARCELAMENTOS COBRADOS ( agua ) Collection<Object[]> valorAguaParcelamentoDevedoresDuvidosos = this.repositorioFinanceiro. pesquisarValorAguaParcelamentoAgrupadoPorCategoriaDevedoresDuvidosos( anoMesReferenciaContabil, idLocalidade, idQuadra, idParametrosDevedoresDuvidosos); if ( valorAguaParcelamentoDevedoresDuvidosos != null ) { Iterator iteratorValorAguaParcelamentoCategoria = valorAguaParcelamentoDevedoresDuvidosos.iterator(); while (iteratorValorAguaParcelamentoCategoria.hasNext()) { Object[] objeto = (Object[]) iteratorValorAguaParcelamentoCategoria.next(); BigDecimal valorAguaParcelamento = (BigDecimal) objeto[0]; Integer categoriaId = (Integer) objeto[1]; gerarResumoDevedoresDuvidososHelper = new GerarResumoDevedoresDuvidososHelper(idLocalidade, idGerenciaRegional, categoriaId, LancamentoTipo.PARCELAMENTOS_COBRADOS, LancamentoItem.AGUA, null, new Short("1000"), new Short("10"), valorAguaParcelamento); colecaoRetorno.add(gerarResumoDevedoresDuvidososHelper); } } //TIPO DE FINANCIAMENTO = PARCELAMENTOS COBRADOS ( esgoto ) Collection<Object[]> valorEsgotoParcelamentoDevedoresDuvidosos = this.repositorioFinanceiro. pesquisarValorEsgotoParcelamentoAgrupadoPorCategoriaDevedoresDuvidosos( anoMesReferenciaContabil, idLocalidade, idQuadra, idParametrosDevedoresDuvidosos); if ( valorEsgotoParcelamentoDevedoresDuvidosos != null ) { Iterator iteratorValorEsgotoParcelamentoCategoria = valorEsgotoParcelamentoDevedoresDuvidosos.iterator(); while (iteratorValorEsgotoParcelamentoCategoria.hasNext()) { Object[] objeto = (Object[]) iteratorValorEsgotoParcelamentoCategoria.next(); BigDecimal valorEsgotoParcelamento = (BigDecimal) objeto[0]; Integer categoriaId = (Integer) objeto[1]; gerarResumoDevedoresDuvidososHelper = new GerarResumoDevedoresDuvidososHelper(idLocalidade, idGerenciaRegional, categoriaId, LancamentoTipo.PARCELAMENTOS_COBRADOS, LancamentoItem.ESGOTO, null, new Short("1000"), new Short("20"), valorEsgotoParcelamento); colecaoRetorno.add(gerarResumoDevedoresDuvidososHelper); } } //TIPO DE FINANCIAMENTO = PARCELAMENTOS COBRADOS ( grupo contabil ) colecaoDadosTemporaria = repositorioFinanceiro.pesquisarValorServicoParceladoDevedoresDuvidosos(anoMesReferenciaContabil,idLocalidade, idQuadra, idParametrosDevedoresDuvidosos); if (colecaoDadosTemporaria != null && !colecaoDadosTemporaria.isEmpty()) { for (Object[] dadosDebitoCobrado : colecaoDadosTemporaria) { BigDecimal valorDebito =(BigDecimal) dadosDebitoCobrado[0]; Short numeroSequencialImpressao = (Short) dadosDebitoCobrado[1]; Integer idLancamentoItemContabil = (Integer) dadosDebitoCobrado[2]; Integer categoriaId = (Integer) dadosDebitoCobrado[3]; if(valorDebito != null && valorDebito.compareTo(BigDecimal.ZERO) == 1){ gerarResumoDevedoresDuvidososHelper = new GerarResumoDevedoresDuvidososHelper(idLocalidade, idGerenciaRegional, categoriaId, LancamentoTipo.PARCELAMENTOS_COBRADOS, LancamentoItem.GRUPO_CONTABIL, idLancamentoItemContabil, new Short("1000"), numeroSequencialImpressao, valorDebito); colecaoRetorno.add(gerarResumoDevedoresDuvidososHelper); } } } //TIPO DE FINANCIAMENTO = PARCELAMENTOS COBRADOS ( juros ) Collection<Object[]> valorJurosParcelamentoDevedoresDuvidosos = this.repositorioFinanceiro. pesquisarValorJurosDoParcelamentoDevedoresDuvidosos( anoMesReferenciaContabil, idLocalidade, idQuadra, idParametrosDevedoresDuvidosos); if ( valorJurosParcelamentoDevedoresDuvidosos != null ) { Iterator iteratorValorJurosParcelamentoCategoria = valorJurosParcelamentoDevedoresDuvidosos.iterator(); while (iteratorValorJurosParcelamentoCategoria.hasNext()) { Object[] objeto = (Object[]) iteratorValorJurosParcelamentoCategoria.next(); BigDecimal valorJurosParcelamento = (BigDecimal) objeto[0]; Integer categoriaId = (Integer) objeto[1]; gerarResumoDevedoresDuvidososHelper = new GerarResumoDevedoresDuvidososHelper(idLocalidade, idGerenciaRegional, categoriaId, LancamentoTipo.PARCELAMENTOS_COBRADOS, LancamentoItem.JUROS, null, new Short("1000"), maxSequencialImpressaoMais10, valorJurosParcelamento); colecaoRetorno.add(gerarResumoDevedoresDuvidososHelper); } } //TIPO DE FINANCIAMENTO = FINANCIAMENTOS COBRADOS ( grupo contabil ) colecaoDadosTemporaria = repositorioFinanceiro.pesquisarValorPorTipoFinanciamentoDevedoresDuvidosos( anoMesReferenciaContabil, idLocalidade, idQuadra, idParametrosDevedoresDuvidosos); if (colecaoDadosTemporaria != null && !colecaoDadosTemporaria.isEmpty()) { for (Object[] dadosDebitoCobrado : colecaoDadosTemporaria) { BigDecimal valorDebito =(BigDecimal) dadosDebitoCobrado[0]; Short numeroSequencialImpressao = (Short) dadosDebitoCobrado[1]; Integer idLancamentoItemContabil = (Integer) dadosDebitoCobrado[2]; Integer categoriaId = (Integer) dadosDebitoCobrado[3]; if(valorDebito != null && valorDebito.compareTo(BigDecimal.ZERO) == 1){ gerarResumoDevedoresDuvidososHelper = new GerarResumoDevedoresDuvidososHelper(idLocalidade, idGerenciaRegional, categoriaId, LancamentoTipo.FINANCIAMENTOS_COBRADOS, LancamentoItem.GRUPO_CONTABIL, idLancamentoItemContabil, new Short("1300"), numeroSequencialImpressao, valorDebito); colecaoRetorno.add(gerarResumoDevedoresDuvidososHelper); } } } //TIPO DE FINANCIAMENTO = DEVOLUCAO Collection<Object[]> colecaoDevolucoes = repositorioFinanceiro.pesquisarDevolucoesValoresContaDevedoresDuvidosos( anoMesReferenciaContabil, idLocalidade, idQuadra, idParametrosDevedoresDuvidosos); if (colecaoDevolucoes != null && !colecaoDevolucoes.isEmpty()) { for (Object[] dadosDebitoCobrado : colecaoDevolucoes) { BigDecimal valorCredito =(BigDecimal) dadosDebitoCobrado[0]; Short numeroSequencialImpressao = (Short) dadosDebitoCobrado[1]; Integer idLancamentoItemContabil = (Integer) dadosDebitoCobrado[2]; Integer categoriaId = (Integer) dadosDebitoCobrado[3]; if(valorCredito != null ){ gerarResumoDevedoresDuvidososHelper = new GerarResumoDevedoresDuvidososHelper(idLocalidade, idGerenciaRegional, categoriaId, LancamentoTipo.DEVOLUCAO__VALORES_EM_CONTA_INT, LancamentoItem.CREDITOS_PARA_COBRANCA_INDEVIDA, idLancamentoItemContabil, new Short("1400"), numeroSequencialImpressao, valorCredito); colecaoRetorno.add(gerarResumoDevedoresDuvidososHelper); } } } } catch (ErroRepositorioException ex) { throw new ControladorException("erro.sistema", ex); } return colecaoRetorno; } /** * [UC0485] - Gerar Resumo dos Devedores Duvidosos * * Gera o resumo dos devedores duvidosos e marca as contas baixadas contabilmente. * * @author Arthur Carvalho * @date 08/11/2010 * * @param anoMesReferenciaContabil * @param idLocalidade * @param idFuncionalidadeIniciada * @throws ControladorException */ public void atualizarResumoDevedoresDuvidosos(int anoMesReferenciaContabil, int idFuncionalidadeIniciada) throws ControladorException { int idUnidadeIniciada = 0; /* * Registrar o in�cio do processamento da Unidade de * Processamento do Batch */ idUnidadeIniciada = getControladorBatch().iniciarUnidadeProcessamentoBatch(idFuncionalidadeIniciada,UnidadeProcessamento.RELATORIO,(0)); try { BigDecimal valorUltrapassado = new BigDecimal(0); Object[] parametrosARemover = new Object[2]; boolean primeiraVez = true; // Recupera os par�metros dos devedores duvidosos. ParametrosDevedoresDuvidosos parametrosDevedoresDuvidosos = this.repositorioFinanceiro.pesquisarParametrosDevedoresDuvidosos(anoMesReferenciaContabil); if ( parametrosDevedoresDuvidosos.getValorBaixado().compareTo(parametrosDevedoresDuvidosos.getValorABaixar()) == 1 ) { Collection<Object[]> colecaoValorBaixadoELocalidade = repositorioFinanceiro.pesquisarValorBaixadoAgrupadoPorLocalidadeResumoDevedoresDuvidosos( anoMesReferenciaContabil ) ; if (colecaoValorBaixadoELocalidade != null && !colecaoValorBaixadoELocalidade.isEmpty()) { for (Object[] valorBaixadoELocalidade : colecaoValorBaixadoELocalidade) { BigDecimal valorBaixado =(BigDecimal) valorBaixadoELocalidade[0]; valorUltrapassado = parametrosDevedoresDuvidosos.getValorBaixado().subtract(parametrosDevedoresDuvidosos.getValorABaixar()); if ( (valorBaixado.compareTo(valorUltrapassado) == 1) && primeiraVez) { parametrosARemover = valorBaixadoELocalidade; primeiraVez = false; } else if ( valorBaixado.compareTo(valorUltrapassado) == 1 ) { BigDecimal valorBaixadoJaCadastrado =(BigDecimal) parametrosARemover[0]; if ( valorBaixado.compareTo(valorBaixadoJaCadastrado) == -1 ) { parametrosARemover = valorBaixadoELocalidade; } } } } //exclui o resumo dos devedores duvidosos,referente ao ano/m�s refer�ncia cont�bil BigDecimal valorBaixadoARemover = (BigDecimal) parametrosARemover[0]; Integer idLocalidade = (Integer) parametrosARemover[1]; this.repositorioFinanceiro.removeResumoDevedoresDuvidososPorAnoMesReferenciaContabil(anoMesReferenciaContabil, idLocalidade); this.repositorioFinanceiro.atualizaContaAnoMesReferenciaContabil(anoMesReferenciaContabil, idLocalidade); parametrosDevedoresDuvidosos.setValorBaixado(parametrosDevedoresDuvidosos.getValorBaixado().subtract(valorBaixadoARemover)); getControladorUtil().atualizar(parametrosDevedoresDuvidosos); } getControladorBatch().encerrarUnidadeProcessamentoBatch(null, idUnidadeIniciada, false); } catch (Exception ex) { ex.printStackTrace(); throw new EJBException(ex); } } /** * [UC0345] - Gerar Relatorio de Resumo da Arrecada��o * * @author Vivianne Sousa * @date 10/04/2007 * * @param idLancamentoTipo * @throws ErroRepositorioException */ public String obterDescricaoLancamentoTipo(Integer idLancamentoTipo) throws ControladorException{ try { return repositorioFinanceiro .obterDescricaoLancamentoTipo(idLancamentoTipo); } catch (ErroRepositorioException ex) { throw new ControladorException("erro.sistema", ex); } } /** * Pesquisa as localidades que tem resumo de faturamento * para o ano/m�s de faturamento informado. * * [UC00175] Gerar Lan�amentos Cont�beis do Faturamento * * @author Pedro Alexandre * @date 25/05/2007 * * @param anoMesFaturamento * @return * @throws ControladorException */ public Collection<Integer> pesquisarIdsLocalidadesParaGerarLancamentosContabeisFaturamento(Integer anoMesFaturamento) throws ControladorException{ try{ //pesquisa os lan�amentos de item cont�bil existentes no sisitema return this.repositorioFinanceiro.pesquisarIdsLocalidadesParaGerarLancamentosContabeisFaturamento( anoMesFaturamento); //erro no hibernate } catch (ErroRepositorioException ex) { //levanta a exce��o para a pr�xima camada throw new ControladorException("erro.sistema", ex); } } /** * Gera o lan�amento cont�bil junto com seus itens. * * [UC0348] - Gerar Lan�amentos Cont�beis da Arrecada��o * * @author Pedro Alexandre * @date 31/05/2007 * * @param lancamentoContabil * @param colecaoDadosResumoPorTipoLancamento * @throws ControladorException */ @SuppressWarnings({ "unchecked", "rawtypes" }) protected void inserirLancamentoContabilItemArrecadacao(LancamentoContabil lancamentoContabil,Collection<Object[]> colecaoDadosResumoPorTipoLancamento) throws ControladorException { try{ /* * Caso exista dados para os itens do resumo da arrecada��o * inseri os itens do lan�amento cont�bil. */ if(colecaoDadosResumoPorTipoLancamento != null && !colecaoDadosResumoPorTipoLancamento.isEmpty()){ Collection colecaoLancamentoContabilItem = new ArrayList(); //flaq que indica se o lan�amento cont�bil j� foi inserido boolean flagInseridoLancamentoContabil = false; /* * Dados do resumo da arrecada��o * * 0 - id da localidade * 1 - id do tipo de recebimento * 2 - id do tipo de lan�amento * 3 - id do item de lan�amento * 4 - id do item de lan�amento cont�bil * 5 - id da categoria * 6 - soma do valor do resumo da arrecada��o */ for(Object[] dadosResumoFaturamento : colecaoDadosResumoPorTipoLancamento){ //recupera os dados do resumo do faturamento Integer idTipoRecebimento = (Integer) dadosResumoFaturamento[1]; Integer idLancamentoTipo = (Integer) dadosResumoFaturamento[2]; Integer idLancamentoItem = (Integer) dadosResumoFaturamento[3]; Integer idLancamentoItemContabil = (Integer) dadosResumoFaturamento[4]; Integer idCategoria = (Integer) dadosResumoFaturamento[5]; BigDecimal valorLancamento = (BigDecimal) dadosResumoFaturamento[6]; /* * Verifica se existe conta cont�bil para o item que vai ser inserido * * 0 - id conta cont�bil do d�bito * 1 - id conta cont�bil cr�dito * 2 - descri��o do hist�rico do d�bito * 3 - descri��o do hist�rico do cr�dito */ Object[] dadosContaContabil = this.repositorioFinanceiro.obterParametrosContabilArrecadacao(idTipoRecebimento, idCategoria, idLancamentoItemContabil, idLancamentoItem, idLancamentoTipo); if(dadosContaContabil != null){ Integer idLancamentoContabil = null; /* * Caso exista dados para a conta cont�bil do item do resumo da arrecada��o * e o lan�amento cont�bil n�o foi inserido ainda * inseri o lan�amento cont�bil na base. */ if(!flagInseridoLancamentoContabil){ idLancamentoContabil = (Integer)getControladorUtil().inserir(lancamentoContabil); lancamentoContabil.setId(idLancamentoContabil); flagInseridoLancamentoContabil = true; } //recupera os dados da conta cont�bil. Integer idContaContabilDebito = (Integer) dadosContaContabil[0]; Integer idContaContabilCredito = (Integer) dadosContaContabil[1]; String descricaoHistoricoDebito = (String) dadosContaContabil[2]; String descricaoHistoricoCredito = (String) dadosContaContabil[3]; //cria os indicadores de d�bito e cr�dito. Short indicadorDebito = new Short("2"); Short indicadorCredito = new Short("1"); Date ultimaAlteracao = new Date(); //cria as contas de d�bito e cr�dito. ContaContabil contaContabilCredito = new ContaContabil(); contaContabilCredito.setId(idContaContabilCredito); ContaContabil contaContabilDebito = new ContaContabil(); contaContabilDebito.setId(idContaContabilDebito); /** Item de cr�dito */ LancamentoContabilItem lancamentoContabilItemCredito = new LancamentoContabilItem(indicadorCredito, valorLancamento, descricaoHistoricoCredito, ultimaAlteracao, lancamentoContabil, contaContabilCredito); colecaoLancamentoContabilItem.add(lancamentoContabilItemCredito); /** Item de d�bito */ LancamentoContabilItem lancamentoContabilItemDebito = new LancamentoContabilItem(indicadorDebito, valorLancamento, descricaoHistoricoDebito, ultimaAlteracao, lancamentoContabil, contaContabilDebito); colecaoLancamentoContabilItem.add(lancamentoContabilItemDebito); } } getControladorBatch().inserirColecaoObjetoParaBatch(colecaoLancamentoContabilItem); } } catch (Exception ex) { throw new EJBException(ex); } } /** * Pesquisa as localidades que tem resumo de arrecada��o * para o ano/m�s de arrecada��o informado. * * [UC00348] Gerar Lan�amentos Cont�beis da arrecada��o * * @author Pedro Alexandre * @date 31/05/2007 * * @param anoMesArrecadacao * @return * @throws ControladorException */ public Collection<Integer> pesquisarIdsLocalidadesParaGerarLancamentosContabeisArrecadacao(Integer anoMesArrecadacao) throws ControladorException{ try{ return this.repositorioFinanceiro.pesquisarIdsLocalidadesParaGerarLancamentosContabeisArrecadacao(anoMesArrecadacao); //erro no hibernate } catch (ErroRepositorioException ex) { //levanta a exce��o para a pr�xima camada throw new ControladorException("erro.sistema", ex); } } /** * Pesquisa a cole��o de ids das localidades para processar o resumo * dos devedores duvidosos. * * [UC0485] Gerar Resumo dos Devedores Duvidosos * * @author Pedro Alexandre * @date 25/06/2007 * * @param anoMesReferenciaContabil * @return * @throws ControladorException */ public Collection<Integer> pesquisarIdsLocalidadesParaGerarResumoDevedoresDuvidosos(Integer anoMesReferenciaContabil) throws ControladorException{ try{ return this.repositorioFinanceiro.pesquisarIdsLocalidadesGerarResumoDevedoresDuvidosos(anoMesReferenciaContabil); //erro no hibernate } catch (ErroRepositorioException ex) { //levanta a exce��o para a pr�xima camada throw new ControladorException("erro.sistema", ex); } } // *********************************************************************************************************************** // ******************************** PARTE PARA SEER COLOCADA NO CONTROLADOR CAERN /** * Este metodo � utilizado para pesquisar os registros q ser�o * usados para contru��o do txt do caso de uso * * [UC0469] Gerar Integra��o para a Contabilidade * * @author Fl�vio Leonardo * @date 28/05/2007 * * @param idLancamentoOrigem * @param anoMes * @return * @throws ControladorException */ /*public Collection pesquisarGerarIntegracaoContabilidadeCaern(String idLancamentoOrigem, String anoMes) throws ControladorException{ Collection colecaoObjetoGerar = null; Collection colecaoGerarIntegracaoContabilidade = null; try { colecaoObjetoGerar = repositorioFinanceiro.pesquisarGerarIntegracaoContabilidadeCaern(idLancamentoOrigem, anoMes); if(!colecaoObjetoGerar.isEmpty()){ Iterator iteratorPesquisa = colecaoObjetoGerar.iterator(); colecaoGerarIntegracaoContabilidade = new ArrayList(); GerarIntegracaoContabilidadeHelper gerarIntegracaoContabilidadeHelper = null; Object[] objetoGerar = null; while(iteratorPesquisa.hasNext()){ gerarIntegracaoContabilidadeHelper = new GerarIntegracaoContabilidadeHelper(); objetoGerar = (Object[]) iteratorPesquisa.next(); //indicador debito credito if(objetoGerar[10] != null){ gerarIntegracaoContabilidadeHelper.setIndicadorDebitoConta(new Integer((Short) objetoGerar[10])); } //LCO_DEB_CRE if(gerarIntegracaoContabilidadeHelper.getIndicadorDebitoConta() != null && gerarIntegracaoContabilidadeHelper.getIndicadorDebitoConta().equals(1)){ gerarIntegracaoContabilidadeHelper.setCreditoDebito("C"); }else if(gerarIntegracaoContabilidadeHelper.getIndicadorDebitoConta() != null && gerarIntegracaoContabilidadeHelper.getIndicadorDebitoConta().equals(2)){ gerarIntegracaoContabilidadeHelper.setCreditoDebito("D"); } //numero cartao if(gerarIntegracaoContabilidadeHelper.getIndicadorDebitoConta() != null && gerarIntegracaoContabilidadeHelper.getIndicadorDebitoConta().equals(1)){ gerarIntegracaoContabilidadeHelper.setNumeroCartao(new Short("402")); }else if(gerarIntegracaoContabilidadeHelper.getIndicadorDebitoConta() != null && gerarIntegracaoContabilidadeHelper.getIndicadorDebitoConta().equals(2)){ gerarIntegracaoContabilidadeHelper.setNumeroCartao(new Short("401")); } //lancamento tipo if(objetoGerar[1] != null){ gerarIntegracaoContabilidadeHelper.setIdTipoLancamento(new Integer((Short) objetoGerar[1])); } //folha if(objetoGerar[2] != null){ gerarIntegracaoContabilidadeHelper.setFolha(new Integer((Short) objetoGerar[2])); } //linha if(objetoGerar[3] != null){ gerarIntegracaoContabilidadeHelper.setIndicadorLinha(new Integer((Short)objetoGerar[3])); } //prefixo contabil if(objetoGerar[4] != null){ gerarIntegracaoContabilidadeHelper.setNumeroPrefixoContabil((String) objetoGerar[4]); } //conta if(objetoGerar[5] != null && gerarIntegracaoContabilidadeHelper.getIndicadorDebitoConta().equals(1)){ String numero = ((String) objetoGerar[5]).trim(); gerarIntegracaoContabilidadeHelper.setNumeroContaCredito(numero); gerarIntegracaoContabilidadeHelper.setNumeroContaDebito(""); }else if(objetoGerar[5] != null && gerarIntegracaoContabilidadeHelper.getIndicadorDebitoConta() != null && gerarIntegracaoContabilidadeHelper.getIndicadorDebitoConta().equals(2)){ String numero = ((String) objetoGerar[5]).trim(); gerarIntegracaoContabilidadeHelper.setNumeroContaDebito(numero); gerarIntegracaoContabilidadeHelper.setNumeroContaCredito(""); } //digito if(objetoGerar[6] != null){ gerarIntegracaoContabilidadeHelper.setDigito(new Integer(((String) objetoGerar[6]).trim())); } //terceiros if(objetoGerar[7] != null){ gerarIntegracaoContabilidadeHelper.setTerceiros(new Integer(((String) objetoGerar[7]).trim())); } //referencia if(objetoGerar[8] != null){ gerarIntegracaoContabilidadeHelper.setReferencial(new Integer(((String) objetoGerar[8]).trim())); } //valor lancamento if(objetoGerar[9] != null){ gerarIntegracaoContabilidadeHelper.setValorLancamento((BigDecimal)objetoGerar[9]); } //Cartao2 if(objetoGerar[11] != null){ gerarIntegracaoContabilidadeHelper.setCartao2(new Integer((Short) objetoGerar[11])); } // Versao if(objetoGerar[12] != null){ gerarIntegracaoContabilidadeHelper.setVersao(new Integer((Short) objetoGerar[12])); } //id localidade if(objetoGerar[13] != null){ gerarIntegracaoContabilidadeHelper.setIdLocalidade((Integer)objetoGerar[13]); } //codigo centro custo if(objetoGerar[14] != null && gerarIntegracaoContabilidadeHelper.getIndicadorDebitoConta() != null && gerarIntegracaoContabilidadeHelper.getIndicadorDebitoConta().equals(1)){ gerarIntegracaoContabilidadeHelper.setCodigoCentroCustoCredito(new Integer(((String) objetoGerar[14]).trim())); gerarIntegracaoContabilidadeHelper.setCodigoCentroCustoDebito(new Integer(0)); }else if(objetoGerar[14] != null && gerarIntegracaoContabilidadeHelper.getIndicadorDebitoConta() != null && gerarIntegracaoContabilidadeHelper.getIndicadorDebitoConta().equals(2)){ gerarIntegracaoContabilidadeHelper.setCodigoCentroCustoDebito(new Integer(((String) objetoGerar[14]).trim())); gerarIntegracaoContabilidadeHelper.setCodigoCentroCustoCredito(new Integer(0)); } colecaoGerarIntegracaoContabilidade.add(gerarIntegracaoContabilidadeHelper); } } } catch (ErroRepositorioException ex) { sessionContext.setRollbackOnly(); throw new ControladorException("erro.sistema", ex); } return colecaoGerarIntegracaoContabilidade; } */ /** * este caso de uso gera a integra��o para a contabilidade * * [UC0469] Gerar Integra��o para a Contabilidade * * @author Pedro Alexandre * @date 28/05/2007 * * @param idLancamentoOrigem * @param anoMes * @param data * @throws ControladorException */ @SuppressWarnings({ "rawtypes", "unchecked" }) public void gerarIntegracaoContabilidadeCaern(String idLancamentoOrigem, String anoMes, String data) throws ControladorException{ /* * Pesquisa os dados para gerar a integra��o para a contabilidade. * * 0 - n�mero do cart�o * 1 - c�digo tipo * 2 - n�mero folha * 3 - indicador linha * 4 - prefixo cont�bil * 5 - n�mero conta * 6 - n�mero d�gito * 7 - n�mero terceiros * 8 - c�digo refer�ncia * 9 - valor lan�amento * 10 - indicador d�bito cr�dito * 11 - n�mero cart�o 2 * 12 - n�mero vers�o * 13 - id da localidade * 14 - c�digo centro custo * */ Collection<Object[]> colecaoDadosGerarIntegracao = null; colecaoDadosGerarIntegracao = this.pesquisarGerarIntegracaoContabilidade(idLancamentoOrigem, anoMes); /** defini��o das vari�veis */ StringBuilder gerarIntegracaoTxt = new StringBuilder(); String dataFormatada = data.replace("/",""); /* * Caso a cole��o dos dados n�o esteja vazia */ if(colecaoDadosGerarIntegracao != null && !colecaoDadosGerarIntegracao.isEmpty()){ Short numeroCartao = null; String creditoDebito = ""; BigDecimal valorLancamento = null; /* * La�o para gerar o txt */ Iterator iterator = colecaoDadosGerarIntegracao.iterator(); while (iterator.hasNext()){ GerarIntegracaoContabilidadeHelper gerarIntegracaoContabilidadeHelper = (GerarIntegracaoContabilidadeHelper)iterator.next(); //n�mero do cart�o numeroCartao = gerarIntegracaoContabilidadeHelper.getNumeroCartao(); //CreditoDebito creditoDebito = gerarIntegracaoContabilidadeHelper.getCreditoDebito(); //valor do lan�amento valorLancamento = (BigDecimal) gerarIntegracaoContabilidadeHelper.getValorLancamento(); /* * Inicio da gera��o do txt */ //Cartao gerarIntegracaoTxt.append(Util.adicionarZerosEsquedaNumero(3,numeroCartao + "")); //Sequencial gerarIntegracaoTxt.append("01"); //Lote gerarIntegracaoTxt.append("8888"); //Documento gerarIntegracaoTxt.append("200001"); //Linha gerarIntegracaoTxt.append("01"); //data completa gerarIntegracaoTxt.append(Util.adicionarZerosEsquedaNumero(8,dataFormatada)); //CreditoDebito gerarIntegracaoTxt.append(Util.completaStringComEspacoAEsquerda(creditoDebito.trim(), 1)); //COnta Debito gerarIntegracaoTxt.append(Util.completaStringComEspacoAEsquerda(gerarIntegracaoContabilidadeHelper.getNumeroContaDebito()+"", 20)); //COnta Debito gerarIntegracaoTxt.append(Util.completaStringComEspacoAEsquerda(gerarIntegracaoContabilidadeHelper.getNumeroContaCredito()+"", 20)); //Moeda gerarIntegracaoTxt.append("SSSSS"); //Valor Lancamento gerarIntegracaoTxt.append(Util.completaStringComEspacoAEsquerda((valorLancamento + "").replace(".",""), 17)); //LCO_HISTORICO if(idLancamentoOrigem.equals(LancamentoOrigem.FATURAMENTO + "")){ gerarIntegracaoTxt.append(Util.completaStringComEspacoAEsquerda("VL FATURAMENTO", 15)); }else if(idLancamentoOrigem.equals(LancamentoOrigem.ARRECADACAO + "")){ gerarIntegracaoTxt.append(Util.completaStringComEspacoAEsquerda("VL ARRECADACAO", 15)); } //MesAno gerarIntegracaoTxt.append(Util.completaStringComEspacoAEsquerda(Util.formatarAnoMesParaMesAnoSemBarra(new Integer(anoMes))+"",6)); //COdigo Custo Debito gerarIntegracaoTxt.append(Util.completaStringComEspacoAEsquerda(gerarIntegracaoContabilidadeHelper.getCodigoCentroCustoDebito()+"", 9)); //COdigo Custo Debito gerarIntegracaoTxt.append(Util.completaStringComEspacoAEsquerda(gerarIntegracaoContabilidadeHelper.getCodigoCentroCustoCredito()+"", 9)); //dia mes ano fechamento gerarIntegracaoTxt.append(Util.adicionarZerosEsquedaNumero(8,dataFormatada)); //FILLER gerarIntegracaoTxt.append(Util.completaStringComEspacoAEsquerda("DDDD", 4)); //ANOMES gerarIntegracaoTxt.append(Util.adicionarZerosEsquedaNumero(6,anoMes)); //FILLER gerarIntegracaoTxt.append(Util.completaStringComEspacoAEsquerda("LANCAMENTO GCOM", 15)); //FILLER gerarIntegracaoTxt.append(Util.completaStringComEspacoAEsquerda("", 318)); //FILLER gerarIntegracaoTxt.append(Util.completaStringComEspacoAEsquerda("", 33)); //Quebra de Linha gerarIntegracaoTxt.append(System.getProperty("line.separator")); } /* * Determina se o arquivo � de faturamento ou arrecada��o * para concatenar no nome do arquivo .zip */ String descricaoLancamento = ""; if(idLancamentoOrigem.equals(LancamentoOrigem.FATURAMENTO + "")){ descricaoLancamento = "FATURAMENTO"; }else if(idLancamentoOrigem.equals(LancamentoOrigem.ARRECADACAO + "")){ descricaoLancamento = "ARRECADACAO"; } /* * Gerando o arquivo zip */ String nomeZip = "CONTABILIDADE_" + descricaoLancamento + "_" + (data.replace("/","_")); BufferedWriter out = null; ZipOutputStream zos = null; File compactadoTipo = new File(nomeZip + ".zip"); File leituraTipo = new File(nomeZip + ".txt"); /* * Caso oarquivo txt n�o esteja vazio * adiciona o txt ao arquivo zip. */ if (gerarIntegracaoTxt != null && gerarIntegracaoTxt.length() != 0) { try { System.out.println("CRIANDO ZIP"); zos = new ZipOutputStream(new FileOutputStream(compactadoTipo)); out = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(leituraTipo.getAbsolutePath()))); out.write(gerarIntegracaoTxt.toString()); out.flush(); ZipUtil.adicionarArquivo(zos, leituraTipo); zos.close(); leituraTipo.delete(); out.close(); } catch (IOException ex) { sessionContext.setRollbackOnly(); throw new ControladorException("erro.sistema", ex); } catch (Exception e) { sessionContext.setRollbackOnly(); throw new ControladorException("erro.sistema", e); } } //caso n�o exista informa��o para os dados informados }else{ if(idLancamentoOrigem.equals(LancamentoOrigem.FATURAMENTO + "")){ throw new ControladorException("atencao.pesquisa.nenhum_registro_tabela", null,"Resumo Faturamento"); }else if(idLancamentoOrigem.equals(LancamentoOrigem.ARRECADACAO + "")){ throw new ControladorException("atencao.pesquisa.nenhum_registro_tabela", null,"Resumo Faturamento"); } } } // *********************************************************************************************************************** /** * Inserir o processo para gerar o resumo dos devedores duvidosos. * * [UC0485] Gerar Resumo dos Devedores Duvidosos * * @author Pedro Alexandre * @date 18/06/2007 * * @param processoIniciado * @param dadosProcessamento * @return * @throws ControladorException */ public Integer gerarResumoDevedoresDuvidosos(ProcessoIniciado processoIniciado,Map<String, Object> dadosProcessamento) throws ControladorException { //Recupera o ano/m�s de refer�ncia cont�bil. Integer anoMesReferenciaContabil = new Integer((String) dadosProcessamento.get("anoMesReferenciaContabil")); ParametrosDevedoresDuvidosos parametrosDevedoresDuvidosos; try { //[FS0001] - Verificar exist�ncia dos par�metros parametrosDevedoresDuvidosos = this.repositorioFinanceiro.pesquisarParametrosDevedoresDuvidosos(anoMesReferenciaContabil); if(parametrosDevedoresDuvidosos == null){ throw new ControladorException("atencao.naocadastrado.referencia_contabil"); }else{ if(parametrosDevedoresDuvidosos.getDataProcessamento() != null){ //2-Caso seja um reprocessamento zerar o valor baixado parametrosDevedoresDuvidosos.setValorBaixado(BigDecimal.ZERO); this.getControladorUtil().atualizar(parametrosDevedoresDuvidosos); } } } catch (ErroRepositorioException e) { sessionContext.setRollbackOnly(); throw new ControladorException("erro.sistema", e); } //chama o met�do para inserir o processo de gerar resumo devedores duvidosos return this.getControladorBatch().inserirProcessoIniciado(processoIniciado,dadosProcessamento); } /** * [UC0714] Gerar Contas a Receber Cont�bil * * M�todo respons�vel pela gera��o de contas a receber cont�bil * * @author Rafael Corr�a * @date 08/11/2007 * * @param idLocalidade * @throws ControladorException */ @SuppressWarnings({ "unchecked", "rawtypes" }) public void gerarContasAReceberContabil(Integer idLocalidade, int idFuncionalidadeIniciada) throws ControladorException { logger.info("LOCALIDADE " + idLocalidade); int idUnidadeIniciada = 0; idUnidadeIniciada = getControladorBatch().iniciarUnidadeProcessamentoBatch(idFuncionalidadeIniciada, UnidadeProcessamento.LOCALIDADE, idLocalidade); try { SistemaParametro sistemaParametro = getControladorUtil().pesquisarParametrosDoSistema(); if (!sistemaParametro.getAnoMesArrecadacao().equals(sistemaParametro.getAnoMesFaturamento())) { throw new ControladorException("atencao.arrecadacao_ou_faturamento_nao_encerrados"); } int anoMesAnteriorFaturamento = Util.subtrairMesDoAnoMes(sistemaParametro.getAnoMesFaturamento(), 1); int anoMesArrecadacao = sistemaParametro.getAnoMesArrecadacao(); Collection colecaoContasAReceberContabil = new ArrayList(); // exclui os dados do saldo de contas a receber cont�bil do m�s de refer�ncia do faturamento j� encerrado repositorioFinanceiro.removerContasAReceberContabil(anoMesAnteriorFaturamento, idLocalidade); // Valores de �gua e Esgoto adicionarContaAReceberContabilAguaEsgotoImpostos(idLocalidade, anoMesAnteriorFaturamento, colecaoContasAReceberContabil); // D�bitos Cobrados adicionarContaAReceberContabilDebitosCobrados(idLocalidade, anoMesAnteriorFaturamento, colecaoContasAReceberContabil); // Guias de Pagamento adicionarContaAReceberContabilGuiasPagamento(idLocalidade, anoMesAnteriorFaturamento, colecaoContasAReceberContabil); // Cr�ditos Realizados adicionarContaAReceberContabilCreditosRealizados(idLocalidade, anoMesAnteriorFaturamento, colecaoContasAReceberContabil); // D�bitos a Cobrar adicionarContaAReceberContabilDebitosACobrar(idLocalidade, anoMesAnteriorFaturamento, colecaoContasAReceberContabil); // Cr�ditos a Realizar adicionarContaAReceberContabilCreditosARealizar(idLocalidade, anoMesAnteriorFaturamento, colecaoContasAReceberContabil); // adicionado por Vivianne Sousa 14/08/2009 - Aryed Lins adicionarContaAReceberContabilValoresContabilizadosComoPerdas(idLocalidade, anoMesAnteriorFaturamento, colecaoContasAReceberContabil); // adicionado por Vivianne Sousa 17/08/2009 - Aryed Lins adicionarContaAReceberContabilRecebimentosNaoIdentificados(idLocalidade, anoMesAnteriorFaturamento, anoMesArrecadacao, colecaoContasAReceberContabil); if (colecaoContasAReceberContabil != null && !colecaoContasAReceberContabil.isEmpty()) { getControladorBatch().inserirColecaoObjetoParaBatch(colecaoContasAReceberContabil); } getControladorBatch().encerrarUnidadeProcessamentoBatch(null, idUnidadeIniciada, false); System.out.println("fim da gera��o " + "Localidade " + idLocalidade); } catch (Exception e) { getControladorBatch().encerrarUnidadeProcessamentoBatch(e, idUnidadeIniciada, true); throw new EJBException(e); } } /** * [UC0714] Gerar Contas a Receber Cont�bil * * Cria o objeto de ContaAReceberContabil de acordo com os par�metros * passados * * @author Rafael Corr�a * @date 08/11/2007 * */ private ContaAReceberContabil criarContaAReceberContabil( int anoMesReferencia, Integer idGerenciaRegional, Integer idUnidadeNegocio, Integer idLocalidade, Integer idCategoria, BigDecimal valorItem, Integer idLancamentoTipo, int sequenciaLancamentoTipo, Integer idLancamentoItem, int sequenciaLancamentoItem, Integer idLancamentoItemContabil) { ContaAReceberContabil retorno = new ContaAReceberContabil(); retorno.setAnoMesReferencia(anoMesReferencia); // Ger�ncia Regional GerenciaRegional gerenciaRegional = new GerenciaRegional(); gerenciaRegional.setId(idGerenciaRegional); retorno.setGerenciaRegional(gerenciaRegional); // Unidade Neg�cio UnidadeNegocio unidadeNegocio = new UnidadeNegocio(); unidadeNegocio.setId(idUnidadeNegocio); retorno.setUnidadeNegocio(unidadeNegocio); // Localidade Localidade localidade = new Localidade(); localidade.setId(idLocalidade); retorno.setLocalidade(localidade); // Categoria Categoria categoria = new Categoria(); categoria.setId(idCategoria); retorno.setCategoria(categoria); // Valor Acumulado retorno.setValorItemLancamento(valorItem); // Lan�amento Tipo LancamentoTipo lancamentoTipo = new LancamentoTipo(); lancamentoTipo.setId(idLancamentoTipo); retorno.setLancamentoTipo(lancamentoTipo); // Seq��ncia do Lan�amento Tipo retorno.setNumeroSequenciaTipoLancamento(sequenciaLancamentoTipo); // Lan�amento Item LancamentoItem lancamentoItem = new LancamentoItem(); lancamentoItem.setId(idLancamentoItem); retorno.setLancamentoItem(lancamentoItem); // Seq��ncia do Lan�amento Item retorno.setNumeroSequenciaItemTipoLancamento(sequenciaLancamentoItem); // Lan�amento Item Cont�bil if (idLancamentoItemContabil != null) { LancamentoItemContabil lancamentoItemContabil = new LancamentoItemContabil(); lancamentoItemContabil.setId(idLancamentoItemContabil); retorno.setLancamentoItemContabil(lancamentoItemContabil); } //Colocado por Raphael Rossiter em 21/02/2008 retorno.setUltimaAlteracao(new Date()); return retorno; } /** * [UC0714] Gerar Contas a Receber Cont�bil * * Adiciona os dados de �gua e esgoto * * @author Rafael Corr�a * @date 08/11/2007 * */ @SuppressWarnings({ "rawtypes", "unchecked" }) private void adicionarContaAReceberContabilAguaEsgotoImpostos(Integer idLocalidade, int anoMesAnteriorFaturamento, Collection colecaoContasAReceberContabil) throws ErroRepositorioException { Collection colecaoDadosValorAguaEsgoto = repositorioFinanceiro .pesquisarDadosContasCategoriaValorAguaEsgoto( anoMesAnteriorFaturamento, idLocalidade); if (colecaoDadosValorAguaEsgoto != null && !colecaoDadosValorAguaEsgoto.isEmpty()) { Iterator colecaoDadosValorAguaEsgotoIterator = colecaoDadosValorAguaEsgoto .iterator(); while (colecaoDadosValorAguaEsgotoIterator.hasNext()) { Object[] dadosValorAguaEsgoto = (Object[]) colecaoDadosValorAguaEsgotoIterator .next(); Integer idGerenciaRegionalConta = (Integer) dadosValorAguaEsgoto[0]; Integer idUnidadeNegocioConta = (Integer) dadosValorAguaEsgoto[1]; Integer idLocalidadeConta = (Integer) dadosValorAguaEsgoto[2]; Integer idCategoriaConta = (Integer) dadosValorAguaEsgoto[3]; BigDecimal valorAgua = (BigDecimal) dadosValorAguaEsgoto[4]; BigDecimal valorEsgoto = (BigDecimal) dadosValorAguaEsgoto[5]; // �gua if (valorAgua != null && valorAgua.compareTo(new BigDecimal("0.00")) > 0) { // Cria o objeto com os valores passados ContaAReceberContabil contaAReceberContabil = criarContaAReceberContabil( anoMesAnteriorFaturamento, idGerenciaRegionalConta, idUnidadeNegocioConta, idLocalidadeConta, idCategoriaConta, valorAgua, LancamentoTipo.DOCUMENTOS_EMITIDOS, 100, LancamentoItem.AGUA, 10, null); colecaoContasAReceberContabil.add(contaAReceberContabil); } // Esgoto if (valorEsgoto != null && valorEsgoto.compareTo(new BigDecimal("0.00")) > 0) { // Cria o objeto com os valores passados ContaAReceberContabil contaAReceberContabil = criarContaAReceberContabil( anoMesAnteriorFaturamento, idGerenciaRegionalConta, idUnidadeNegocioConta, idLocalidadeConta, idCategoriaConta, valorEsgoto, LancamentoTipo.DOCUMENTOS_EMITIDOS, 100, LancamentoItem.ESGOTO, 20, null); colecaoContasAReceberContabil.add(contaAReceberContabil); } } colecaoDadosValorAguaEsgoto = null; } Collection colecaoDadosValorImpostos = repositorioFinanceiro .pesquisarDadosContasCategoriaValorImpostos( anoMesAnteriorFaturamento, idLocalidade); if (colecaoDadosValorImpostos != null && !colecaoDadosValorImpostos.isEmpty()) { Iterator colecaoDadosValorImpostosIterator = colecaoDadosValorImpostos .iterator(); while (colecaoDadosValorImpostosIterator.hasNext()) { Object[] dadosValorImpostos = (Object[]) colecaoDadosValorImpostosIterator .next(); Integer idGerenciaRegionalConta = (Integer) dadosValorImpostos[0]; Integer idUnidadeNegocioConta = (Integer) dadosValorImpostos[1]; Integer idLocalidadeConta = (Integer) dadosValorImpostos[2]; Integer idCategoriaConta = (Integer) dadosValorImpostos[3]; BigDecimal valorImpostos = (BigDecimal) dadosValorImpostos[4]; // Valor dos Impostos if (valorImpostos != null && valorImpostos.compareTo(new BigDecimal("0.00")) > 0) { // Cria o objeto com os valores passados /** * Alterar o lancamento tipo dos impostos deduzidos * * @author Wellington Rocha * @date 18/09/2013*/ ContaAReceberContabil contaAReceberContabil = criarContaAReceberContabil( anoMesAnteriorFaturamento, idGerenciaRegionalConta, idUnidadeNegocioConta, idLocalidadeConta, idCategoriaConta, valorImpostos.multiply(new BigDecimal("-1")), LancamentoTipo.VALORES_CONTABILIZADOS_COMO_PERDAS, 790, LancamentoItem.IMPOSTOS_DEDUZIDOS, 10, null); colecaoContasAReceberContabil.add(contaAReceberContabil); } } colecaoDadosValorImpostos = null; } } /** * [UC0714] Gerar Contas a Receber Cont�bil * * Adiciona os dados de d�bitos cobrados * * @author Rafael Corr�a * @date 08/11/2007 * */ @SuppressWarnings({ "unchecked", "rawtypes" }) private void adicionarContaAReceberContabilDebitosCobrados( Integer idLocalidade, int anoMesAnteriorFaturamento, Collection colecaoContasAReceberContabil) throws ErroRepositorioException { // Servi�o Collection colecaoDadosDebitosCobradosServico = repositorioFinanceiro .pesquisarDadosDebitosCobradosCategoriaServico( anoMesAnteriorFaturamento, idLocalidade); if (colecaoDadosDebitosCobradosServico != null && !colecaoDadosDebitosCobradosServico.isEmpty()) { Iterator colecaoDadosDebitosCobradosServicoIterator = colecaoDadosDebitosCobradosServico .iterator(); while (colecaoDadosDebitosCobradosServicoIterator.hasNext()) { Object[] dadosDebitosCobradosServico = (Object[]) colecaoDadosDebitosCobradosServicoIterator .next(); Integer idGerenciaRegionalConta = (Integer) dadosDebitosCobradosServico[0]; Integer idUnidadeNegocioConta = (Integer) dadosDebitosCobradosServico[1]; Integer idLocalidadeConta = (Integer) dadosDebitosCobradosServico[2]; Integer idCategoriaConta = (Integer) dadosDebitosCobradosServico[3]; Integer idLancamentoItemContabil = (Integer) dadosDebitosCobradosServico[4]; BigDecimal valorCategoria = (BigDecimal) dadosDebitosCobradosServico[5]; if (valorCategoria != null && valorCategoria.compareTo(new BigDecimal("0.00")) > 0) { // Cria o objeto com os valores passados ContaAReceberContabil contaAReceberContabil = criarContaAReceberContabil( anoMesAnteriorFaturamento, idGerenciaRegionalConta, idUnidadeNegocioConta, idLocalidadeConta, idCategoriaConta, valorCategoria, LancamentoTipo.DOCUMENTOS_EMITIDOS, 100, LancamentoItem.FINANCIAMENTOS_COBRADOS, 30, idLancamentoItemContabil); colecaoContasAReceberContabil.add(contaAReceberContabil); } } colecaoDadosDebitosCobradosServico = null; } // Parcelamento Collection colecaoDadosDebitosCobradosParcelamento = repositorioFinanceiro .pesquisarDadosDebitosCobradosCategoriaParcelamento( anoMesAnteriorFaturamento, idLocalidade); if (colecaoDadosDebitosCobradosParcelamento != null && !colecaoDadosDebitosCobradosParcelamento.isEmpty()) { Iterator colecaoDadosDebitosCobradosParcelamentoIterator = colecaoDadosDebitosCobradosParcelamento .iterator(); while (colecaoDadosDebitosCobradosParcelamentoIterator.hasNext()) { Object[] dadosDebitosCobradosParcelamento = (Object[]) colecaoDadosDebitosCobradosParcelamentoIterator .next(); Integer idGerenciaRegionalConta = (Integer) dadosDebitosCobradosParcelamento[0]; Integer idUnidadeNegocioConta = (Integer) dadosDebitosCobradosParcelamento[1]; Integer idLocalidadeConta = (Integer) dadosDebitosCobradosParcelamento[2]; Integer idCategoriaConta = (Integer) dadosDebitosCobradosParcelamento[3]; Integer idLancamentoItemContabil = (Integer) dadosDebitosCobradosParcelamento[4]; BigDecimal valorCategoria = (BigDecimal) dadosDebitosCobradosParcelamento[5]; if (valorCategoria != null && valorCategoria.compareTo(new BigDecimal("0.00")) > 0) { // Cria o objeto com os valores passados ContaAReceberContabil contaAReceberContabil = criarContaAReceberContabil( anoMesAnteriorFaturamento, idGerenciaRegionalConta, idUnidadeNegocioConta, idLocalidadeConta, idCategoriaConta, valorCategoria, LancamentoTipo.DOCUMENTOS_EMITIDOS, 100, LancamentoItem.PARCELAMENTOS_COBRADOS, 40, idLancamentoItemContabil); colecaoContasAReceberContabil.add(contaAReceberContabil); } } colecaoDadosDebitosCobradosParcelamento = null; } } /** * [UC0714] Gerar Contas a Receber Cont�bil * * Adiciona os dados das guias de pagamento * * @author Rafael Corr�a * @date 08/11/2007 * */ @SuppressWarnings({ "rawtypes", "unchecked" }) private void adicionarContaAReceberContabilGuiasPagamento( Integer idLocalidade, int anoMesAnteriorFaturamento, Collection colecaoContasAReceberContabil) throws ErroRepositorioException { // Entradas de Parcelamento Collection colecaoDadosGuiasPagamentoEntradaParcelamento = repositorioFinanceiro .pesquisarDadosGuiasPagamentoCategoriaEntradaParcelamento( anoMesAnteriorFaturamento, idLocalidade); if (colecaoDadosGuiasPagamentoEntradaParcelamento != null && !colecaoDadosGuiasPagamentoEntradaParcelamento.isEmpty()) { Iterator colecaoDadosGuiasPagamentoEntradaParcelamentoIterator = colecaoDadosGuiasPagamentoEntradaParcelamento .iterator(); while (colecaoDadosGuiasPagamentoEntradaParcelamentoIterator .hasNext()) { Object[] dadosGuiasPagamentoEntradaParcelamento = (Object[]) colecaoDadosGuiasPagamentoEntradaParcelamentoIterator .next(); Integer idGerenciaRegionalConta = (Integer) dadosGuiasPagamentoEntradaParcelamento[0]; Integer idUnidadeNegocioConta = (Integer) dadosGuiasPagamentoEntradaParcelamento[1]; Integer idLocalidadeConta = (Integer) dadosGuiasPagamentoEntradaParcelamento[2]; Integer idCategoriaConta = (Integer) dadosGuiasPagamentoEntradaParcelamento[3]; BigDecimal valorCategoria = (BigDecimal) dadosGuiasPagamentoEntradaParcelamento[4]; if (valorCategoria != null && valorCategoria.compareTo(new BigDecimal("0.00")) > 0) { // Cria o objeto com os valores passados ContaAReceberContabil contaAReceberContabil = criarContaAReceberContabil( anoMesAnteriorFaturamento, idGerenciaRegionalConta, idUnidadeNegocioConta, idLocalidadeConta, idCategoriaConta, valorCategoria, LancamentoTipo.DOCUMENTOS_EMITIDOS, 200, LancamentoItem.ENTRADAS_PARCELAMENTO, 10, null); colecaoContasAReceberContabil.add(contaAReceberContabil); } } colecaoDadosGuiasPagamentoEntradaParcelamento = null; } // Servi�o Collection colecaoDadosGuiaPagamentoServico = repositorioFinanceiro .pesquisarDadosGuiasPagamentoCategoriaServico( anoMesAnteriorFaturamento, idLocalidade); if (colecaoDadosGuiaPagamentoServico != null && !colecaoDadosGuiaPagamentoServico.isEmpty()) { Iterator colecaoDadosGuiaPagamentoServicoIterator = colecaoDadosGuiaPagamentoServico .iterator(); while (colecaoDadosGuiaPagamentoServicoIterator.hasNext()) { Object[] dadosGuiaPagamentoServico = (Object[]) colecaoDadosGuiaPagamentoServicoIterator .next(); Integer idGerenciaRegionalConta = (Integer) dadosGuiaPagamentoServico[0]; Integer idUnidadeNegocioConta = (Integer) dadosGuiaPagamentoServico[1]; Integer idLocalidadeConta = (Integer) dadosGuiaPagamentoServico[2]; Integer idCategoriaConta = (Integer) dadosGuiaPagamentoServico[3]; Integer idLancamentoItemContabil = (Integer) dadosGuiaPagamentoServico[4]; BigDecimal valorCategoria = (BigDecimal) dadosGuiaPagamentoServico[5]; if (valorCategoria != null && valorCategoria.compareTo(new BigDecimal("0.00")) > 0) { // Cria o objeto com os valores passados ContaAReceberContabil contaAReceberContabil = criarContaAReceberContabil( anoMesAnteriorFaturamento, idGerenciaRegionalConta, idUnidadeNegocioConta, idLocalidadeConta, idCategoriaConta, valorCategoria, LancamentoTipo.DOCUMENTOS_EMITIDOS, 200, LancamentoItem.GUIAS_PAGAMENTO, 20, idLancamentoItemContabil); colecaoContasAReceberContabil.add(contaAReceberContabil); } } colecaoDadosGuiaPagamentoServico = null; } } /** * [UC0714] Gerar Contas a Receber Cont�bil * * Adiciona os dados de cr�ditos realizados */ @SuppressWarnings({ "rawtypes", "unchecked" }) private void adicionarContaAReceberContabilCreditosRealizados(Integer idLocalidade, int anoMesAnteriorFaturamento, Collection colecaoContasAReceberContabil) throws ErroRepositorioException { // Pagamento em duplicidade ou excesso distribuirCreditosRelizadosContaAReceberContabil(colecaoContasAReceberContabil, repositorioFinanceiro.pesquisarDadosCreditosRealizadosCategoriaPagamentoExcesso(anoMesAnteriorFaturamento, idLocalidade), anoMesAnteriorFaturamento, LancamentoTipo.DOCUMENTOS_EMITIDOS, 100, LancamentoItem.CONTAS_PAGA_EM_DUPLICIDADE_EXCESSO, 50); // Descontos concedidos no parcelamento distribuirCreditosRelizadosContaAReceberContabil(colecaoContasAReceberContabil, repositorioFinanceiro.pesquisarDadosCreditosRealizadosCategoriaDescontoParcelamento(anoMesAnteriorFaturamento, idLocalidade, CreditoOrigem.DESCONTOS_CONCEDIDOS_NO_PARCELAMENTO), anoMesAnteriorFaturamento, LancamentoTipo.DOCUMENTOS_EMITIDOS, 100, LancamentoItem.DESCONTOS_CONCEDIDOS_NO_PARCELAMENTO, 60); // Descontos concedidos no parcelamento Faixa Conta distribuirCreditosRelizadosContaAReceberContabil(colecaoContasAReceberContabil, repositorioFinanceiro.pesquisarDadosCreditosRealizadosCategoriaDescontoParcelamento(anoMesAnteriorFaturamento, idLocalidade, CreditoOrigem.DESCONTOS_CONCEDIDOS_PARCELAMENTO_FAIXA_CONTA), anoMesAnteriorFaturamento, LancamentoTipo.DOCUMENTOS_EMITIDOS, 100, LancamentoItem.DESCONTOS_CONCEDIDOS_PARCELAMENTO_FAIXA_CONTA, 65); // Descontos condicionais distribuirCreditosRelizadosContaAReceberContabil(colecaoContasAReceberContabil, repositorioFinanceiro.pesquisarDadosCreditosRealizadosCategoriaDescontoCondicional(anoMesAnteriorFaturamento, idLocalidade), anoMesAnteriorFaturamento, LancamentoTipo.DOCUMENTOS_EMITIDOS, 100, LancamentoItem.DESCONTOS_CONDICIONAIS, 70); // Descontos incondicionais distribuirCreditosRelizadosContaAReceberContabil(colecaoContasAReceberContabil, repositorioFinanceiro.pesquisarDadosCreditosRealizadosCategoriaDescontoIncondicional(anoMesAnteriorFaturamento, idLocalidade), anoMesAnteriorFaturamento, LancamentoTipo.DOCUMENTOS_EMITIDOS, 100, LancamentoItem.DESCONTOS_INCONDICIONAIS, 80); // Ajustes para Zerar a Conta distribuirCreditosRelizadosContaAReceberContabil(colecaoContasAReceberContabil, repositorioFinanceiro.pesquisarDadosCreditosRealizadosCategoriaAjusteZerarConta(anoMesAnteriorFaturamento, idLocalidade), anoMesAnteriorFaturamento, LancamentoTipo.DOCUMENTOS_EMITIDOS, 100, LancamentoItem.AJUSTES_PARA_ZERAR_CONTA, 90); // Devolu��es distribuirCreditosRelizadosContaAReceberContabil(colecaoContasAReceberContabil, repositorioFinanceiro.pesquisarDadosCreditosRealizadosCategoriaDevolucao(anoMesAnteriorFaturamento, idLocalidade), anoMesAnteriorFaturamento, LancamentoTipo.DOCUMENTOS_EMITIDOS, 100, LancamentoItem.VALORES_COBRADOS_INDEVIDAMENTE, 95); // Descontos concedidos no parcelamento Creditos Anteriores Curto e Long Prazo Collection colecaoCurtoELongo = repositorioFinanceiro.pesquisarDadosCreditosRealizadosCategoriaDescontoParcelamento(anoMesAnteriorFaturamento, idLocalidade, CreditoOrigem.DESCONTOS_CREDITOS_ANTERIORES_CURTO_PRAZO); colecaoCurtoELongo.addAll(repositorioFinanceiro.pesquisarDadosCreditosRealizadosCategoriaDescontoParcelamento(anoMesAnteriorFaturamento, idLocalidade, CreditoOrigem.DESCONTOS_CREDITOS_ANTERIORES_LONGO_PRAZO)); distribuirCreditosRelizadosContaAReceberContabil(colecaoContasAReceberContabil, colecaoCurtoELongo, anoMesAnteriorFaturamento, LancamentoTipo.DOCUMENTOS_EMITIDOS, 100, LancamentoItem.DESCONTOS_CREDITOS_ANTERIORES, 100); } @SuppressWarnings({ "rawtypes", "unchecked" }) private void distribuirCreditosRelizadosContaAReceberContabil( Collection colecaoContasAReceberContabil, Collection colecaoDados, int anoMesAnteriorFaturamento, Integer idLancamentoTipo, int sequenciaLancamentoTipo, Integer idLancamentoItem, int sequenciaLancamentoItem) { if (colecaoDados != null && !colecaoDados.isEmpty()) { Iterator iterator = colecaoDados.iterator(); while (iterator.hasNext()) { Object[] dados = (Object[]) iterator.next(); Integer idGerenciaRegional = (Integer) dados[0]; Integer idUnidadeNegocio = (Integer) dados[1]; Integer idLocalidade = (Integer) dados[2]; Integer idCategoria = (Integer) dados[3]; BigDecimal valor = (BigDecimal) dados[4]; if (valor != null && valor.doubleValue() > 0) { ContaAReceberContabil contaAReceberContabil = criarContaAReceberContabil( anoMesAnteriorFaturamento, idGerenciaRegional, idUnidadeNegocio, idLocalidade, idCategoria, valor.multiply(new BigDecimal("-1")), idLancamentoTipo, sequenciaLancamentoTipo, idLancamentoItem, sequenciaLancamentoItem, null); colecaoContasAReceberContabil.add(contaAReceberContabil); } } } } /** * [UC0714] Gerar Contas a Receber Cont�bil * * Adiciona os dados de d�bitos a cobrar * * @author Rafael Corr�a * @date 08/11/2007 * */ @SuppressWarnings({ "unchecked", "rawtypes" }) private void adicionarContaAReceberContabilDebitosACobrar( Integer idLocalidade, int anoMesAnteriorFaturamento, Collection colecaoContasAReceberContabil) throws ErroRepositorioException { // Servi�o Collection colecaoDadosDebitosACobrarServico = repositorioFinanceiro .pesquisarDadosDebitoACobrarCategoriaServico( anoMesAnteriorFaturamento, idLocalidade); if (colecaoDadosDebitosACobrarServico != null && !colecaoDadosDebitosACobrarServico.isEmpty()) { Iterator colecaoDadosDebitosACobrarServicoIterator = colecaoDadosDebitosACobrarServico .iterator(); while (colecaoDadosDebitosACobrarServicoIterator.hasNext()) { Object[] dadosDebitosACobrarServico = (Object[]) colecaoDadosDebitosACobrarServicoIterator .next(); Integer idGerenciaRegionalDebito = (Integer) dadosDebitosACobrarServico[0]; Integer idUnidadeNegocioDebito = (Integer) dadosDebitosACobrarServico[1]; Integer idLocalidadeDebito = (Integer) dadosDebitosACobrarServico[2]; Integer idCategoriaDebito = (Integer) dadosDebitosACobrarServico[3]; Integer idLancamentoItemContabil = (Integer) dadosDebitosACobrarServico[4]; BigDecimal valorCurtoPrazo = (BigDecimal) dadosDebitosACobrarServico[5]; BigDecimal valorLongoPrazo = (BigDecimal) dadosDebitosACobrarServico[6]; // Curto Prazo if (valorCurtoPrazo != null && valorCurtoPrazo.compareTo(new BigDecimal("0.00")) > 0) { // Cria o objeto com os valores passados ContaAReceberContabil contaAReceberContabil = criarContaAReceberContabil( anoMesAnteriorFaturamento, idGerenciaRegionalDebito, idUnidadeNegocioDebito, idLocalidadeDebito, idCategoriaDebito, valorCurtoPrazo, LancamentoTipo.FINANCIAMENTOS_A_COBRAR, 400, LancamentoItem.FINANCIAMENTOS_A_COBRAR_CURTO_PRAZO, 10, idLancamentoItemContabil); colecaoContasAReceberContabil.add(contaAReceberContabil); } // Longo Prazo if (valorLongoPrazo != null && valorLongoPrazo.compareTo(new BigDecimal("0.00")) > 0) { // Cria o objeto com os valores passados ContaAReceberContabil contaAReceberContabil = criarContaAReceberContabil( anoMesAnteriorFaturamento, idGerenciaRegionalDebito, idUnidadeNegocioDebito, idLocalidadeDebito, idCategoriaDebito, valorLongoPrazo, LancamentoTipo.FINANCIAMENTOS_A_COBRAR, 400, LancamentoItem.FINANCIAMENTOS_A_COBRAR_LONGO_PRAZO, 20, idLancamentoItemContabil); colecaoContasAReceberContabil.add(contaAReceberContabil); } } colecaoDadosDebitosACobrarServico = null; } // Documentos Emitidos Collection colecaoDadosDebitosACobrarDocumentosEmitidos = repositorioFinanceiro .pesquisarDadosDebitoACobrarCategoriaDocumentosEmitidos( anoMesAnteriorFaturamento, idLocalidade); if (colecaoDadosDebitosACobrarDocumentosEmitidos != null && !colecaoDadosDebitosACobrarDocumentosEmitidos.isEmpty()) { Iterator colecaoDadosDebitosACobrarDocumentosEmitidosIterator = colecaoDadosDebitosACobrarDocumentosEmitidos .iterator(); while (colecaoDadosDebitosACobrarDocumentosEmitidosIterator .hasNext()) { Object[] dadosDebitosACobrarDocumentosEmitidos = (Object[]) colecaoDadosDebitosACobrarDocumentosEmitidosIterator .next(); Integer idGerenciaRegionalDebito = (Integer) dadosDebitosACobrarDocumentosEmitidos[0]; Integer idUnidadeNegocioDebito = (Integer) dadosDebitosACobrarDocumentosEmitidos[1]; Integer idLocalidadeDebito = (Integer) dadosDebitosACobrarDocumentosEmitidos[2]; Integer idCategoriaDebito = (Integer) dadosDebitosACobrarDocumentosEmitidos[3]; BigDecimal valorCurtoPrazo = (BigDecimal) dadosDebitosACobrarDocumentosEmitidos[4]; BigDecimal valorLongoPrazo = (BigDecimal) dadosDebitosACobrarDocumentosEmitidos[5]; // Curto Prazo if (valorCurtoPrazo != null && valorCurtoPrazo.compareTo(new BigDecimal("0.00")) > 0) { // Cria o objeto com os valores passados ContaAReceberContabil contaAReceberContabil = criarContaAReceberContabil( anoMesAnteriorFaturamento, idGerenciaRegionalDebito, idUnidadeNegocioDebito, idLocalidadeDebito, idCategoriaDebito, valorCurtoPrazo, LancamentoTipo.PARCELAMENTOS_A_COBRAR_CURTO_PRAZO, 500, LancamentoItem.DOCUMENTOS_EMITIDOS, 10, null); colecaoContasAReceberContabil.add(contaAReceberContabil); } // Longo Prazo if (valorLongoPrazo != null && valorLongoPrazo.compareTo(new BigDecimal("0.00")) > 0) { // Cria o objeto com os valores passados ContaAReceberContabil contaAReceberContabil = criarContaAReceberContabil( anoMesAnteriorFaturamento, idGerenciaRegionalDebito, idUnidadeNegocioDebito, idLocalidadeDebito, idCategoriaDebito, valorLongoPrazo, LancamentoTipo.PARCELAMENTOS_A_COBRAR_LONGO_PRAZO, 600, LancamentoItem.DOCUMENTOS_EMITIDOS, 10, null); colecaoContasAReceberContabil.add(contaAReceberContabil); } } colecaoDadosDebitosACobrarDocumentosEmitidos = null; } // Financimentos A Cobrar de Curto Prazo Collection colecaoDadosDebitosACobrarFinanciamentosCurtoPrazo = repositorioFinanceiro .pesquisarDadosDebitoACobrarCategoriaFinancimentosCurtoPrazo( anoMesAnteriorFaturamento, idLocalidade); if (colecaoDadosDebitosACobrarFinanciamentosCurtoPrazo != null && !colecaoDadosDebitosACobrarFinanciamentosCurtoPrazo .isEmpty()) { Iterator colecaoDadosDebitosACobrarFinanciamentosCurtoPrazoIterator = colecaoDadosDebitosACobrarFinanciamentosCurtoPrazo .iterator(); while (colecaoDadosDebitosACobrarFinanciamentosCurtoPrazoIterator .hasNext()) { Object[] dadosDebitosACobrarFinanciamentosCurtoPrazo = (Object[]) colecaoDadosDebitosACobrarFinanciamentosCurtoPrazoIterator .next(); Integer idGerenciaRegionalDebito = (Integer) dadosDebitosACobrarFinanciamentosCurtoPrazo[0]; Integer idUnidadeNegocioDebito = (Integer) dadosDebitosACobrarFinanciamentosCurtoPrazo[1]; Integer idLocalidadeDebito = (Integer) dadosDebitosACobrarFinanciamentosCurtoPrazo[2]; Integer idCategoriaDebito = (Integer) dadosDebitosACobrarFinanciamentosCurtoPrazo[3]; BigDecimal valorCurtoPrazo = (BigDecimal) dadosDebitosACobrarFinanciamentosCurtoPrazo[4]; BigDecimal valorLongoPrazo = (BigDecimal) dadosDebitosACobrarFinanciamentosCurtoPrazo[5]; // Curto Prazo if (valorCurtoPrazo != null && valorCurtoPrazo.compareTo(new BigDecimal("0.00")) > 0) { // Cria o objeto com os valores passados ContaAReceberContabil contaAReceberContabil = criarContaAReceberContabil( anoMesAnteriorFaturamento, idGerenciaRegionalDebito, idUnidadeNegocioDebito, idLocalidadeDebito, idCategoriaDebito, valorCurtoPrazo, LancamentoTipo.PARCELAMENTOS_A_COBRAR_CURTO_PRAZO, 500, LancamentoItem.FINANCIAMENTOS_A_COBRAR_CURTO_PRAZO, 20, null); colecaoContasAReceberContabil.add(contaAReceberContabil); } // Longo Prazo if (valorLongoPrazo != null && valorLongoPrazo.compareTo(new BigDecimal("0.00")) > 0) { // Cria o objeto com os valores passados ContaAReceberContabil contaAReceberContabil = criarContaAReceberContabil( anoMesAnteriorFaturamento, idGerenciaRegionalDebito, idUnidadeNegocioDebito, idLocalidadeDebito, idCategoriaDebito, valorLongoPrazo, LancamentoTipo.PARCELAMENTOS_A_COBRAR_LONGO_PRAZO, 600, LancamentoItem.FINANCIAMENTOS_A_COBRAR_CURTO_PRAZO, 20, null); colecaoContasAReceberContabil.add(contaAReceberContabil); } } colecaoDadosDebitosACobrarFinanciamentosCurtoPrazo = null; } // Financimentos A Cobrar de Longo Prazo Collection colecaoDadosDebitosACobrarFinanciamentosLongoPrazo = repositorioFinanceiro .pesquisarDadosDebitoACobrarCategoriaFinancimentosLongoPrazo( anoMesAnteriorFaturamento, idLocalidade); if (colecaoDadosDebitosACobrarFinanciamentosLongoPrazo != null && !colecaoDadosDebitosACobrarFinanciamentosLongoPrazo .isEmpty()) { Iterator colecaoDadosDebitosACobrarFinanciamentosLongoPrazoIterator = colecaoDadosDebitosACobrarFinanciamentosLongoPrazo .iterator(); while (colecaoDadosDebitosACobrarFinanciamentosLongoPrazoIterator .hasNext()) { Object[] dadosDebitosACobrarFinanciamentosLongoPrazo = (Object[]) colecaoDadosDebitosACobrarFinanciamentosLongoPrazoIterator .next(); Integer idGerenciaRegionalDebito = (Integer) dadosDebitosACobrarFinanciamentosLongoPrazo[0]; Integer idUnidadeNegocioDebito = (Integer) dadosDebitosACobrarFinanciamentosLongoPrazo[1]; Integer idLocalidadeDebito = (Integer) dadosDebitosACobrarFinanciamentosLongoPrazo[2]; Integer idCategoriaDebito = (Integer) dadosDebitosACobrarFinanciamentosLongoPrazo[3]; BigDecimal valorCurtoPrazo = (BigDecimal) dadosDebitosACobrarFinanciamentosLongoPrazo[4]; BigDecimal valorLongoPrazo = (BigDecimal) dadosDebitosACobrarFinanciamentosLongoPrazo[5]; // Curto Prazo if (valorCurtoPrazo != null && valorCurtoPrazo.compareTo(new BigDecimal("0.00")) > 0) { // Cria o objeto com os valores passados ContaAReceberContabil contaAReceberContabil = criarContaAReceberContabil( anoMesAnteriorFaturamento, idGerenciaRegionalDebito, idUnidadeNegocioDebito, idLocalidadeDebito, idCategoriaDebito, valorCurtoPrazo, LancamentoTipo.PARCELAMENTOS_A_COBRAR_CURTO_PRAZO, 500, LancamentoItem.FINANCIAMENTOS_A_COBRAR_LONGO_PRAZO, 30, null); colecaoContasAReceberContabil.add(contaAReceberContabil); } // Longo Prazo if (valorLongoPrazo != null && valorLongoPrazo.compareTo(new BigDecimal("0.00")) > 0) { // Cria o objeto com os valores passados ContaAReceberContabil contaAReceberContabil = criarContaAReceberContabil( anoMesAnteriorFaturamento, idGerenciaRegionalDebito, idUnidadeNegocioDebito, idLocalidadeDebito, idCategoriaDebito, valorLongoPrazo, LancamentoTipo.PARCELAMENTOS_A_COBRAR_LONGO_PRAZO, 600, LancamentoItem.FINANCIAMENTOS_A_COBRAR_LONGO_PRAZO, 30, null); colecaoContasAReceberContabil.add(contaAReceberContabil); } } colecaoDadosDebitosACobrarFinanciamentosLongoPrazo = null; } // Parcelamentos A Cobrar de Curto Prazo Collection colecaoDadosDebitosACobrarParcelamentosCurtoPrazo = repositorioFinanceiro .pesquisarDadosDebitoACobrarCategoriaParcelamentosCurtoPrazo( anoMesAnteriorFaturamento, idLocalidade); if (colecaoDadosDebitosACobrarParcelamentosCurtoPrazo != null && !colecaoDadosDebitosACobrarParcelamentosCurtoPrazo.isEmpty()) { Iterator colecaoDadosDebitosACobrarParcelamentosCurtoPrazoIterator = colecaoDadosDebitosACobrarParcelamentosCurtoPrazo .iterator(); while (colecaoDadosDebitosACobrarParcelamentosCurtoPrazoIterator .hasNext()) { Object[] dadosDebitosACobrarParcelamentosCurtoPrazo = (Object[]) colecaoDadosDebitosACobrarParcelamentosCurtoPrazoIterator .next(); Integer idGerenciaRegionalDebito = (Integer) dadosDebitosACobrarParcelamentosCurtoPrazo[0]; Integer idUnidadeNegocioDebito = (Integer) dadosDebitosACobrarParcelamentosCurtoPrazo[1]; Integer idLocalidadeDebito = (Integer) dadosDebitosACobrarParcelamentosCurtoPrazo[2]; Integer idCategoriaDebito = (Integer) dadosDebitosACobrarParcelamentosCurtoPrazo[3]; BigDecimal valorCurtoPrazo = (BigDecimal) dadosDebitosACobrarParcelamentosCurtoPrazo[4]; BigDecimal valorLongoPrazo = (BigDecimal) dadosDebitosACobrarParcelamentosCurtoPrazo[5]; // Curto Prazo if (valorCurtoPrazo != null && valorCurtoPrazo.compareTo(new BigDecimal("0.00")) > 0) { // Cria o objeto com os valores passados ContaAReceberContabil contaAReceberContabil = criarContaAReceberContabil( anoMesAnteriorFaturamento, idGerenciaRegionalDebito, idUnidadeNegocioDebito, idLocalidadeDebito, idCategoriaDebito, valorCurtoPrazo, LancamentoTipo.PARCELAMENTOS_A_COBRAR_CURTO_PRAZO, 500, LancamentoItem.PARCELAMENTOS_A_COBRAR_CURTO_PRAZO, 40, null); colecaoContasAReceberContabil.add(contaAReceberContabil); } // Longo Prazo if (valorLongoPrazo != null && valorLongoPrazo.compareTo(new BigDecimal("0.00")) > 0) { // Cria o objeto com os valores passados ContaAReceberContabil contaAReceberContabil = criarContaAReceberContabil( anoMesAnteriorFaturamento, idGerenciaRegionalDebito, idUnidadeNegocioDebito, idLocalidadeDebito, idCategoriaDebito, valorLongoPrazo, LancamentoTipo.PARCELAMENTOS_A_COBRAR_LONGO_PRAZO, 600, LancamentoItem.PARCELAMENTOS_A_COBRAR_CURTO_PRAZO, 40, null); colecaoContasAReceberContabil.add(contaAReceberContabil); } } colecaoDadosDebitosACobrarParcelamentosCurtoPrazo = null; } // Parcelamentos A Cobrar de Longo Prazo Collection colecaoDadosDebitosACobrarParcelamentosLongoPrazo = repositorioFinanceiro .pesquisarDadosDebitoACobrarCategoriaParcelamentosLongoPrazo( anoMesAnteriorFaturamento, idLocalidade); if (colecaoDadosDebitosACobrarParcelamentosLongoPrazo != null && !colecaoDadosDebitosACobrarParcelamentosLongoPrazo.isEmpty()) { Iterator colecaoDadosDebitosACobrarParcelamentosLongoPrazoIterator = colecaoDadosDebitosACobrarParcelamentosLongoPrazo .iterator(); while (colecaoDadosDebitosACobrarParcelamentosLongoPrazoIterator .hasNext()) { Object[] dadosDebitosACobrarParcelamentosLongoPrazo = (Object[]) colecaoDadosDebitosACobrarParcelamentosLongoPrazoIterator .next(); Integer idGerenciaRegionalDebito = (Integer) dadosDebitosACobrarParcelamentosLongoPrazo[0]; Integer idUnidadeNegocioDebito = (Integer) dadosDebitosACobrarParcelamentosLongoPrazo[1]; Integer idLocalidadeDebito = (Integer) dadosDebitosACobrarParcelamentosLongoPrazo[2]; Integer idCategoriaDebito = (Integer) dadosDebitosACobrarParcelamentosLongoPrazo[3]; BigDecimal valorCurtoPrazo = (BigDecimal) dadosDebitosACobrarParcelamentosLongoPrazo[4]; BigDecimal valorLongoPrazo = (BigDecimal) dadosDebitosACobrarParcelamentosLongoPrazo[5]; // Curto Prazo if (valorCurtoPrazo != null && valorCurtoPrazo.compareTo(new BigDecimal("0.00")) > 0) { // Cria o objeto com os valores passados ContaAReceberContabil contaAReceberContabil = criarContaAReceberContabil( anoMesAnteriorFaturamento, idGerenciaRegionalDebito, idUnidadeNegocioDebito, idLocalidadeDebito, idCategoriaDebito, valorCurtoPrazo, LancamentoTipo.PARCELAMENTOS_A_COBRAR_CURTO_PRAZO, 500, LancamentoItem.PARCELAMENTOS_A_COBRAR_LONGO_PRAZO, 50, null); colecaoContasAReceberContabil.add(contaAReceberContabil); } // Longo Prazo if (valorLongoPrazo != null && valorLongoPrazo.compareTo(new BigDecimal("0.00")) > 0) { // Cria o objeto com os valores passados ContaAReceberContabil contaAReceberContabil = criarContaAReceberContabil( anoMesAnteriorFaturamento, idGerenciaRegionalDebito, idUnidadeNegocioDebito, idLocalidadeDebito, idCategoriaDebito, valorLongoPrazo, LancamentoTipo.PARCELAMENTOS_A_COBRAR_LONGO_PRAZO, 600, LancamentoItem.PARCELAMENTOS_A_COBRAR_LONGO_PRAZO, 50, null); colecaoContasAReceberContabil.add(contaAReceberContabil); } } colecaoDadosDebitosACobrarParcelamentosLongoPrazo = null; } // Juros Cobrados Collection colecaoDadosJurosCobrados = repositorioFinanceiro .pesquisarDadosDebitoACobrarCategoriaJurosCobrados( anoMesAnteriorFaturamento, idLocalidade); if (colecaoDadosJurosCobrados != null && !colecaoDadosJurosCobrados.isEmpty()) { Iterator colecaoDadosJurosCobradosIterator = colecaoDadosJurosCobrados .iterator(); while (colecaoDadosJurosCobradosIterator .hasNext()) { Object[] dadosJurosCobrados = (Object[]) colecaoDadosJurosCobradosIterator .next(); Integer idGerenciaRegionalDebito = (Integer) dadosJurosCobrados[0]; Integer idUnidadeNegocioDebito = (Integer) dadosJurosCobrados[1]; Integer idLocalidadeDebito = (Integer) dadosJurosCobrados[2]; Integer idCategoriaDebito = (Integer) dadosJurosCobrados[3]; BigDecimal valorCurtoPrazo = (BigDecimal) dadosJurosCobrados[4]; BigDecimal valorLongoPrazo = (BigDecimal) dadosJurosCobrados[5]; // Curto Prazo if (valorCurtoPrazo != null && valorCurtoPrazo.compareTo(new BigDecimal("0.00")) > 0) { // Cria o objeto com os valores passados ContaAReceberContabil contaAReceberContabil = criarContaAReceberContabil( anoMesAnteriorFaturamento, idGerenciaRegionalDebito, idUnidadeNegocioDebito, idLocalidadeDebito, idCategoriaDebito, valorCurtoPrazo, LancamentoTipo.PARCELAMENTOS_A_COBRAR_CURTO_PRAZO, 500, LancamentoItem.JUROS_COBRADOS, 55, null); colecaoContasAReceberContabil.add(contaAReceberContabil); } // Longo Prazo if (valorLongoPrazo != null && valorLongoPrazo.compareTo(new BigDecimal("0.00")) > 0) { // Cria o objeto com os valores passados ContaAReceberContabil contaAReceberContabil = criarContaAReceberContabil( anoMesAnteriorFaturamento, idGerenciaRegionalDebito, idUnidadeNegocioDebito, idLocalidadeDebito, idCategoriaDebito, valorLongoPrazo, LancamentoTipo.PARCELAMENTOS_A_COBRAR_LONGO_PRAZO, 600, LancamentoItem.JUROS_COBRADOS, 55, null); colecaoContasAReceberContabil.add(contaAReceberContabil); } } colecaoDadosJurosCobrados = null; } // Arrasto Collection colecaoDadosDebitosACobrarArrasto = repositorioFinanceiro .pesquisarDadosDebitoACobrarCategoriaArrasto( anoMesAnteriorFaturamento, idLocalidade); if (colecaoDadosDebitosACobrarArrasto != null && !colecaoDadosDebitosACobrarArrasto.isEmpty()) { Iterator colecaoDadosDebitosACobrarArrastoIterator = colecaoDadosDebitosACobrarArrasto .iterator(); while (colecaoDadosDebitosACobrarArrastoIterator.hasNext()) { Object[] dadosDebitosACobrarArrasto = (Object[]) colecaoDadosDebitosACobrarArrastoIterator .next(); Integer idGerenciaRegionalDebito = (Integer) dadosDebitosACobrarArrasto[0]; Integer idUnidadeNegocioDebito = (Integer) dadosDebitosACobrarArrasto[1]; Integer idLocalidadeDebito = (Integer) dadosDebitosACobrarArrasto[2]; Integer idCategoriaDebito = (Integer) dadosDebitosACobrarArrasto[3]; BigDecimal valorCategoria = (BigDecimal) dadosDebitosACobrarArrasto[4]; if (valorCategoria != null && valorCategoria.compareTo(new BigDecimal("0.00")) > 0) { // Cria o objeto com os valores passados ContaAReceberContabil contaAReceberContabil = criarContaAReceberContabil( anoMesAnteriorFaturamento, idGerenciaRegionalDebito, idUnidadeNegocioDebito, idLocalidadeDebito, idCategoriaDebito, valorCategoria, LancamentoTipo.PARCELAMENTOS_A_COBRAR_CURTO_PRAZO, 500, LancamentoItem.DEBITOS_ANTERIORES_PARA_RECOBRANCA, 60, null); colecaoContasAReceberContabil.add(contaAReceberContabil); } } colecaoDadosDebitosACobrarArrasto = null; } } /** * [UC0714] Gerar Contas a Receber Cont�bil * * Adiciona os dados de cr�ditos a realizar * * @author Rafael Corr�a, Ivan Sergio * @date 08/11/2007, 30/12/2010 * */ @SuppressWarnings({ "unchecked", "rawtypes" }) private void adicionarContaAReceberContabilCreditosARealizar( Integer idLocalidade, int anoMesAnteriorFaturamento, Collection colecaoContasAReceberContabil) throws ErroRepositorioException { Collection contasDescontoParcelamento = obterContaContabilCreditoARealizarCurtoELongoPrazo(anoMesAnteriorFaturamento, idLocalidade, CreditoOrigem.DESCONTOS_CONCEDIDOS_NO_PARCELAMENTO, LancamentoItem.DESCONTOS_CONCEDIDOS_NO_PARCELAMENTO, 500, 70, 600, 60); if (contasDescontoParcelamento != null && !contasDescontoParcelamento.isEmpty()) { colecaoContasAReceberContabil.addAll(contasDescontoParcelamento); } Collection contasDescontoParcelamentoFaixaConta = obterContaContabilCreditoARealizarCurtoELongoPrazo(anoMesAnteriorFaturamento, idLocalidade, CreditoOrigem.DESCONTOS_CONCEDIDOS_PARCELAMENTO_FAIXA_CONTA, LancamentoItem.DESCONTOS_CONCEDIDOS_PARCELAMENTO_FAIXA_CONTA, 700, 10, 800, 20); if (contasDescontoParcelamentoFaixaConta != null && !contasDescontoParcelamentoFaixaConta.isEmpty()) { colecaoContasAReceberContabil.addAll(contasDescontoParcelamentoFaixaConta); } Collection contasDescontoCreditosAnterioresCurtoPrazo = obterContaContabilCreditoARealizarCurtoELongoPrazo(anoMesAnteriorFaturamento, idLocalidade, CreditoOrigem.DESCONTOS_CREDITOS_ANTERIORES_CURTO_PRAZO, LancamentoItem.DESCONTOS_CONCEDIDOS_PARCELAMENTO_CREDITOS_ANTERIORES_CURTO_PRAZO, 900, 10,1000, 20); if (contasDescontoCreditosAnterioresCurtoPrazo != null && !contasDescontoCreditosAnterioresCurtoPrazo.isEmpty()) { colecaoContasAReceberContabil.addAll(contasDescontoCreditosAnterioresCurtoPrazo); } Collection contasDescontoCreditosAnterioresLongoPrazo = obterContaContabilCreditoARealizarCurtoELongoPrazo(anoMesAnteriorFaturamento, idLocalidade, CreditoOrigem.DESCONTOS_CREDITOS_ANTERIORES_LONGO_PRAZO, LancamentoItem.DESCONTOS_CONCEDIDOS_PARCELAMENTO_CREDITOS_ANTERIORES_LONGO_PRAZO, 1100, 10,1200, 20); if (contasDescontoCreditosAnterioresLongoPrazo != null && !contasDescontoCreditosAnterioresLongoPrazo.isEmpty()) { colecaoContasAReceberContabil.addAll(contasDescontoCreditosAnterioresLongoPrazo); } //CONTAS PAGAS EM DUPLICIDADE EXCESSO Collection contasDuplicidade = obterContaContabilCreditoARealizarDuplicidade(idLocalidade, anoMesAnteriorFaturamento); if (contasDuplicidade != null && !contasDuplicidade.isEmpty()) { colecaoContasAReceberContabil.addAll(contasDuplicidade); } //DESCONTOS INCONDICIONAIS Collection contasDescontosIncondicionais = obterContaContabilCreditoARealizar(anoMesAnteriorFaturamento, idLocalidade, CreditoOrigem.DESCONTOS_INCONDICIONAIS, 400,LancamentoItem.DESCONTOS_INCONDICIONAIS, 40, null); if (contasDescontosIncondicionais != null && !contasDescontosIncondicionais.isEmpty()) { colecaoContasAReceberContabil.addAll(contasDescontosIncondicionais); } //DESCONTOS CONDICIONAIS Collection contasDescontosCondicionais = obterContaContabilCreditoARealizar(anoMesAnteriorFaturamento, idLocalidade, CreditoOrigem.VALORES_COBRADOS_INDEVIDAMENTE, 400,LancamentoItem.DESCONTOS_CONDICIONAIS, 35, null); if (contasDescontosCondicionais != null && !contasDescontosCondicionais.isEmpty()) { colecaoContasAReceberContabil.addAll(contasDescontosCondicionais); } //AJUSTES PARA ZERAR CONTA Collection contasAjustesParaZerarConta = obterContaContabilCreditoARealizar(anoMesAnteriorFaturamento, idLocalidade, CreditoOrigem.AJUSTES_PARA_ZERAR_CONTA, 400, LancamentoItem.AJUSTES_PARA_ZERAR_CONTA, 50, null); if (contasAjustesParaZerarConta != null && !contasAjustesParaZerarConta.isEmpty()) { colecaoContasAReceberContabil.addAll(contasAjustesParaZerarConta); } Collection contasDevolucaoJuros = obterContaContabilCreditoARealizar(anoMesAnteriorFaturamento, idLocalidade, CreditoOrigem.DEVOLUCAO_JUROS_PARCELAMENTO, 400, LancamentoItem.DEVOLUCAO_JUROS_PARCELAMENTO, 80, null); if (contasDevolucaoJuros != null && !contasDevolucaoJuros.isEmpty()) { colecaoContasAReceberContabil.addAll(contasDevolucaoJuros); } Collection contasContabeisDevolucaoAgua = obterContaContabilCreditoARealizar(anoMesAnteriorFaturamento, idLocalidade, CreditoOrigem.DEVOLUCAO_TARIFA_AGUA, 400, LancamentoItem.DEVOLUCAO_TARIFA_AGUA, 90, null); if (contasContabeisDevolucaoAgua != null && !contasContabeisDevolucaoAgua.isEmpty()) { colecaoContasAReceberContabil.addAll(contasContabeisDevolucaoAgua); } Collection contasContabeisDevolucaoEsgoto = obterContaContabilCreditoARealizar(anoMesAnteriorFaturamento, idLocalidade, CreditoOrigem.DEVOLUCAO_TARIFA_ESGOTO, 400, LancamentoItem.DEVOLUCAO_TARIFA_ESGOTO, 100, null); if (contasContabeisDevolucaoEsgoto != null && !contasContabeisDevolucaoEsgoto.isEmpty()) { colecaoContasAReceberContabil.addAll(contasContabeisDevolucaoEsgoto); } Collection contasContabeisServicosIndiretos = obterContaContabilCreditoARealizar(anoMesAnteriorFaturamento, idLocalidade, CreditoOrigem.SERVICOS_INDIRETOS_PAGOS_INDEVIDAMENTE, 400, LancamentoItem.SERVICOS_INDIRETOS_PAGOS_INDEVIDAMENTE, 110, null); if (contasContabeisServicosIndiretos != null && !contasContabeisServicosIndiretos.isEmpty()) { colecaoContasAReceberContabil.addAll(contasContabeisServicosIndiretos); } // RECUPERACAO DE CR�DITO Collection contasRecuperacoCredito = obterContaContabilCreditoARealizarRecperacaoCredito(anoMesAnteriorFaturamento, idLocalidade); if (contasRecuperacoCredito != null && !contasRecuperacoCredito.isEmpty()) { colecaoContasAReceberContabil.addAll(contasRecuperacoCredito); } } @SuppressWarnings("rawtypes") private Collection obterContaContabilCreditoARealizarCurtoELongoPrazo(Integer anoMesAnteriorFaturamento, Integer idLocalidade, Integer idCreditoOrigem, Integer idLancamentoItem, int sequenciaLancamentoTipoCurtoPrazo, int sequenciaLancamentoItemCurtoPrazo, int sequenciaLancamentoTipoLongoPrazo, int sequenciaLancamentoItemLongoPrazo) throws ErroRepositorioException { Collection colecaoContas = new ArrayList(); Collection colecaoCreditosARealizar = repositorioFinanceiro.pesquisarDadosCreditosARealizarCategoriaDescontosParcelamento( anoMesAnteriorFaturamento, idLocalidade, idCreditoOrigem); Collection<Object[]> colecaoCreditosARealizarValorResidual = repositorioFinanceiro .pesquisarDadosCreditosARealizarCategoriaValorResidualDescontosParcelamento(anoMesAnteriorFaturamento, idLocalidade, idCreditoOrigem); if (colecaoCreditosARealizar != null && !colecaoCreditosARealizar.isEmpty()) { Iterator colecaoCreditosARealizarIterator = colecaoCreditosARealizar.iterator(); while (colecaoCreditosARealizarIterator.hasNext()) { Object[] dados = (Object[]) colecaoCreditosARealizarIterator.next(); Integer idGerenciaRegionalCredito = (Integer) dados[0]; Integer idUnidadeNegocioCredito = (Integer) dados[1]; Integer idLocalidadeCredito = (Integer) dados[2]; Integer idCategoriaCredito = (Integer) dados[3]; BigDecimal valorCurtoPrazo = (BigDecimal) dados[4]; BigDecimal valorLongoPrazo = (BigDecimal) dados[5]; if (colecaoCreditosARealizarValorResidual != null && !colecaoCreditosARealizarValorResidual.isEmpty()) { Collection colecaoRemovidos = new ArrayList<Object[]>(); for (Object[] dadosValorResidual : colecaoCreditosARealizarValorResidual) { Integer idCategoriaValorResidual = (Integer) dadosValorResidual[3]; BigDecimal valorResidual = (BigDecimal) dadosValorResidual[4]; if (idCategoriaValorResidual.equals(idCategoriaCredito)) { if (valorResidual != null) { valorCurtoPrazo = valorCurtoPrazo.add(valorResidual); } colecaoRemovidos.add(dadosValorResidual); } } colecaoCreditosARealizarValorResidual.removeAll(colecaoRemovidos); } // Curto Prazo if (valorCurtoPrazo != null && valorCurtoPrazo.compareTo(new BigDecimal("0.00")) > 0) { // Cria o objeto com os valores passados ContaAReceberContabil contaAReceberContabil = criarContaAReceberContabil( anoMesAnteriorFaturamento, idGerenciaRegionalCredito, idUnidadeNegocioCredito, idLocalidadeCredito, idCategoriaCredito, valorCurtoPrazo.multiply(new BigDecimal("-1")), LancamentoTipo.PARCELAMENTOS_A_COBRAR_CURTO_PRAZO, 500, idLancamentoItem, 70, null); colecaoContas.add(contaAReceberContabil); } // Longo Prazo if (valorLongoPrazo != null && valorLongoPrazo.compareTo(new BigDecimal("0.00")) > 0) { // Cria o objeto com os valores passados ContaAReceberContabil contaAReceberContabil = criarContaAReceberContabil( anoMesAnteriorFaturamento, idGerenciaRegionalCredito, idUnidadeNegocioCredito, idLocalidadeCredito, idCategoriaCredito, valorLongoPrazo.multiply(new BigDecimal("-1")), LancamentoTipo.PARCELAMENTOS_A_COBRAR_LONGO_PRAZO, 600, idLancamentoItem, 60, null); colecaoContas.add(contaAReceberContabil); } } colecaoCreditosARealizar = null; } // Verifica se restou algum dado que n�o estava presente na colecaoDadosCreditosARealizarDescontoParcelamento if (colecaoCreditosARealizarValorResidual != null && !colecaoCreditosARealizarValorResidual.isEmpty()) { for (Object[] dadosCreditosARealizarValorDescontoParcelamento : colecaoCreditosARealizarValorResidual) { Integer idGerenciaRegionalCreditoValorResidual = (Integer) dadosCreditosARealizarValorDescontoParcelamento[0]; Integer idUnidadeNegocioCreditoValorResidual = (Integer) dadosCreditosARealizarValorDescontoParcelamento[1]; Integer idLocalidadeCreditoValorResidual = (Integer) dadosCreditosARealizarValorDescontoParcelamento[2]; Integer idCategoriaCreditoValorResidual = (Integer) dadosCreditosARealizarValorDescontoParcelamento[3]; BigDecimal valorResidual = (BigDecimal) dadosCreditosARealizarValorDescontoParcelamento[4]; if (valorResidual != null && valorResidual.compareTo(new BigDecimal("0.00")) > 0) { // Cria o objeto com os valores passados ContaAReceberContabil contaAReceberContabil = criarContaAReceberContabil( anoMesAnteriorFaturamento, idGerenciaRegionalCreditoValorResidual, idUnidadeNegocioCreditoValorResidual, idLocalidadeCreditoValorResidual, idCategoriaCreditoValorResidual, valorResidual.multiply(new BigDecimal("-1")), LancamentoTipo.PARCELAMENTOS_A_COBRAR_CURTO_PRAZO, 500, idLancamentoItem, 70, null); colecaoContas.add(contaAReceberContabil); } } colecaoCreditosARealizarValorResidual = null; } return colecaoContas; } private Collection obterContaContabilCreditoARealizarValoresCobradosIndevidamente(Integer idLocalidade, int anoMesAnteriorFaturamento) throws ErroRepositorioException { Collection contasContabeis = new ArrayList(); Collection colecaoDevolucoes = repositorioFinanceiro .pesquisarDadosCreditosARealizarCategoriaDevolucao( anoMesAnteriorFaturamento, idLocalidade); // Valor Residual Devolu��o Collection<Object[]> colecaoValorResidualDevolucoes = repositorioFinanceiro .pesquisarDadosCreditosARealizarCategoriaValorResidualDevolucao( anoMesAnteriorFaturamento, idLocalidade); Collection contasCreditoARealizar = obterContaAReceberContabilCreditoARealizar(anoMesAnteriorFaturamento, colecaoDevolucoes, colecaoValorResidualDevolucoes, 400,LancamentoItem.VALORES_COBRADOS_INDEVIDAMENTE, 30, null); if (contasCreditoARealizar != null && !contasCreditoARealizar.isEmpty()) { contasContabeis.addAll(contasCreditoARealizar); } Collection contasCreditoARealizarResidual = obterContaAReceberContabilResidual(anoMesAnteriorFaturamento, colecaoValorResidualDevolucoes, 400,LancamentoItem.VALORES_COBRADOS_INDEVIDAMENTE, 30, null); if (contasCreditoARealizarResidual != null && !contasCreditoARealizarResidual.isEmpty()) { contasContabeis.addAll(contasCreditoARealizarResidual); } contasCreditoARealizar.clear(); contasCreditoARealizarResidual.clear(); return contasContabeis; } private Collection obterContaContabilCreditoARealizarDuplicidade(Integer idLocalidade, int anoMesAnteriorFaturamento) throws ErroRepositorioException { Collection contasCreditoARealizar; Collection contasCreditoARealizarResidual; Collection colecaoContasAReceberContabil = new ArrayList(); // Pagamento em duplicidade ou excesso Collection colecaoDadosCreditosARealizarPagamentoExcesso = repositorioFinanceiro .pesquisarDadosCreditosARealizarCategoriaPagamentoExcesso( anoMesAnteriorFaturamento, idLocalidade); // Valor Residual Pagamentos em Duplicidade ou Excesso Collection<Object[]> colecaoDadosCreditosARealizarValorResidualPagamentoExcesso = repositorioFinanceiro .pesquisarDadosCreditosARealizarCategoriaValorResidualPagamentoExcesso( anoMesAnteriorFaturamento, idLocalidade); contasCreditoARealizar = obterContaAReceberContabilCreditoARealizar(anoMesAnteriorFaturamento, colecaoDadosCreditosARealizarPagamentoExcesso, colecaoDadosCreditosARealizarValorResidualPagamentoExcesso, 400,LancamentoItem.CONTAS_PAGA_EM_DUPLICIDADE_EXCESSO, 25, null); if (contasCreditoARealizar != null && !contasCreditoARealizar.isEmpty()) { colecaoContasAReceberContabil.addAll(contasCreditoARealizar); } contasCreditoARealizarResidual = obterContaAReceberContabilResidual(anoMesAnteriorFaturamento, colecaoDadosCreditosARealizarValorResidualPagamentoExcesso, 400,LancamentoItem.CONTAS_PAGA_EM_DUPLICIDADE_EXCESSO, 25, null); if (contasCreditoARealizarResidual != null && !contasCreditoARealizarResidual.isEmpty()) { colecaoContasAReceberContabil.addAll(contasCreditoARealizarResidual); } contasCreditoARealizar.clear(); contasCreditoARealizarResidual.clear(); return colecaoContasAReceberContabil; } private Collection obterContaContabilCreditoARealizarDescontosCondicionais(Integer idLocalidade, int anoMesAnteriorFaturamento) throws ErroRepositorioException { Collection contasCreditoARealizar; Collection contasCreditoARealizarResidual; Collection colecaoContasAReceberContabil = new ArrayList(); // Descontos condicionais Collection colecaoDadosCreditosARealizarDescontoCondicional = repositorioFinanceiro .pesquisarDadosCreditosARealizarCategoriaDescontoCondicional( anoMesAnteriorFaturamento, idLocalidade); // Valor Residual Descontos Condicionais Collection<Object[]> colecaoDadosCreditosARealizarValorResidualDescontoCondicional = repositorioFinanceiro .pesquisarDadosCreditosARealizarCategoriaValorResidualDescontoCondicional( anoMesAnteriorFaturamento, idLocalidade); contasCreditoARealizar = obterContaAReceberContabilCreditoARealizar(anoMesAnteriorFaturamento, colecaoDadosCreditosARealizarDescontoCondicional, colecaoDadosCreditosARealizarValorResidualDescontoCondicional, 400,LancamentoItem.DESCONTOS_CONDICIONAIS, 35, null); if (contasCreditoARealizar != null && !contasCreditoARealizar.isEmpty()) { colecaoContasAReceberContabil.addAll(contasCreditoARealizar); } contasCreditoARealizarResidual = obterContaAReceberContabilResidual(anoMesAnteriorFaturamento, colecaoDadosCreditosARealizarValorResidualDescontoCondicional, 400,LancamentoItem.DESCONTOS_CONDICIONAIS, 35, null); if (contasCreditoARealizarResidual != null && !contasCreditoARealizarResidual.isEmpty()) { colecaoContasAReceberContabil.addAll(contasCreditoARealizarResidual); } contasCreditoARealizar.clear(); contasCreditoARealizarResidual.clear(); return colecaoContasAReceberContabil; } private Collection obterContaContabilCreditoARealizarAjustesParaZerarConta(Integer idLocalidade, int anoMesAnteriorFaturamento) throws ErroRepositorioException { Collection contasCreditoARealizar; Collection contasCreditoARealizarResidual; Collection colecaoContasAReceberContabil = new ArrayList(); // Ajustes para Zerar a Conta Collection colecaoDadosCreditosARealizarAjusteZerarConta = repositorioFinanceiro.pesquisarDadosCreditosARealizarCategoriaAjusteZerarConta(anoMesAnteriorFaturamento, idLocalidade); // Valor Residual Ajustes para Zerar a Conta Collection<Object[]> colecaoDadosCreditosARealizarValorResidualAjusteZerarConta = repositorioFinanceiro.pesquisarDadosCreditosARealizarCategoriaValorResidualAjusteZerarConta( anoMesAnteriorFaturamento, idLocalidade); contasCreditoARealizar = obterContaAReceberContabilCreditoARealizar(anoMesAnteriorFaturamento, colecaoDadosCreditosARealizarAjusteZerarConta, colecaoDadosCreditosARealizarValorResidualAjusteZerarConta, 400, LancamentoItem.AJUSTES_PARA_ZERAR_CONTA, 50, null); if (contasCreditoARealizar != null && !contasCreditoARealizar.isEmpty()) { colecaoContasAReceberContabil.addAll(contasCreditoARealizar); } contasCreditoARealizarResidual = obterContaAReceberContabilResidual(anoMesAnteriorFaturamento, colecaoDadosCreditosARealizarValorResidualAjusteZerarConta, 400, LancamentoItem.AJUSTES_PARA_ZERAR_CONTA, 50, null); if (contasCreditoARealizarResidual != null && !contasCreditoARealizarResidual.isEmpty()) { colecaoContasAReceberContabil.addAll(contasCreditoARealizarResidual); } contasCreditoARealizar.clear(); contasCreditoARealizarResidual.clear(); return colecaoContasAReceberContabil; } private Collection obterContaContabilCreditoARealizarRecperacaoCredito(Integer anoMesAnteriorFaturamento, Integer idLocalidade) throws ErroRepositorioException { Collection colecaoContasAReceberContabil = new ArrayList(); Collection colecaotemporaria = null; colecaotemporaria = obterContaContabilCreditoARealizarPorOrigemCredito(anoMesAnteriorFaturamento, idLocalidade, CreditoOrigem.RECUPERACAO_CREDITO_CONTA_CANCELADA, 400, LancamentoItem.RECUPERACAO_CREDITO_CONTA_CANCELADA, 60, null); if (colecaotemporaria != null & !colecaotemporaria.isEmpty()) { colecaoContasAReceberContabil.addAll(colecaotemporaria); } colecaotemporaria.clear(); colecaotemporaria = obterContaContabilCreditoARealizarPorOrigemCredito(anoMesAnteriorFaturamento, idLocalidade, CreditoOrigem.RECUPERACAO_CREDITO_CONTA_PARCELADA, 400, LancamentoItem.RECUPERACAO_CREDITO_CONTA_PARCELADA, 70, null); if (colecaotemporaria != null & !colecaotemporaria.isEmpty()) { colecaoContasAReceberContabil.addAll(colecaotemporaria); } colecaotemporaria.clear(); return colecaoContasAReceberContabil; } private Collection obterContaContabilCreditoARealizar(Integer anoMesAnteriorFaturamento, Integer idLocalidade, Integer creditoOrigem, int sequenciaLancamentoTipo, Integer idLancamentoItem, int sequenciaLancamentoItem, Integer idLancamentoItemContabil) throws ErroRepositorioException { Collection colecaoContasAReceberContabil = new ArrayList(); Collection colecaotemporaria = null; colecaotemporaria = obterContaContabilCreditoARealizarPorOrigemCredito(anoMesAnteriorFaturamento, idLocalidade, creditoOrigem, sequenciaLancamentoTipo, idLancamentoItem, sequenciaLancamentoItem, idLancamentoItemContabil); if (colecaotemporaria != null & !colecaotemporaria.isEmpty()) { colecaoContasAReceberContabil.addAll(colecaotemporaria); } colecaotemporaria.clear(); return colecaoContasAReceberContabil; } private Collection obterContaContabilCreditoARealizarPorOrigemCredito(Integer anoMesAnteriorFaturamento, Integer idLocalidade, Integer creditoOrigem, int sequenciaLancamentoTipo, Integer idLancamentoItem, int sequenciaLancamentoItem, Integer idLancamentoItemContabil) throws ErroRepositorioException { Collection colecaoContasAReceberContabil = new ArrayList(); Collection colecaoDadosCreditosARealizarRecuperacaoCreditoContasCanceladas = repositorioFinanceiro.pesquisarDadosCreditosARealizar( anoMesAnteriorFaturamento, idLocalidade,creditoOrigem); Collection<Object[]> colecaoDadosCreditosARealizarValorResidualRecuperacaoCreditoContasCanceladas = repositorioFinanceiro .pesquisarDadosCreditosARealizarValorResidual(anoMesAnteriorFaturamento, idLocalidade, creditoOrigem); Collection contasCreditoARealizar = obterContaAReceberContabilCreditoARealizar(anoMesAnteriorFaturamento, colecaoDadosCreditosARealizarRecuperacaoCreditoContasCanceladas, colecaoDadosCreditosARealizarValorResidualRecuperacaoCreditoContasCanceladas, sequenciaLancamentoTipo, idLancamentoItem, sequenciaLancamentoItem, idLancamentoItemContabil); if (contasCreditoARealizar != null && !contasCreditoARealizar.isEmpty()) { colecaoContasAReceberContabil.addAll(contasCreditoARealizar); } contasCreditoARealizar.clear(); contasCreditoARealizar = obterContaAReceberContabilResidual(anoMesAnteriorFaturamento, colecaoDadosCreditosARealizarValorResidualRecuperacaoCreditoContasCanceladas, sequenciaLancamentoTipo, idLancamentoItem, sequenciaLancamentoItem, idLancamentoItemContabil); if (contasCreditoARealizar != null && !contasCreditoARealizar.isEmpty()) { colecaoContasAReceberContabil.addAll(contasCreditoARealizar); } contasCreditoARealizar.clear(); return colecaoContasAReceberContabil; } private Collection obterContaAReceberContabilResidual(int anoMesAnteriorFaturamento, Collection<Object[]> colecaoValorResidual, int sequenciaLancamentoTipo, Integer idLancamentoItem, int sequenciaLancamentoItem, Integer idLancamentoItemContabil) { Collection colecaoContasAReceberContabil = new ArrayList(); if (colecaoValorResidual != null && !colecaoValorResidual.isEmpty()) { for (Object[] dadosCreditosARealizarValorResidual : colecaoValorResidual) { Integer idGerenciaRegionalCreditoValorResidual = (Integer) dadosCreditosARealizarValorResidual[0]; Integer idUnidadeNegocioCreditoValorResidual = (Integer) dadosCreditosARealizarValorResidual[1]; Integer idLocalidadeCreditoValorResidual = (Integer) dadosCreditosARealizarValorResidual[2]; Integer idCategoriaCreditoValorResidual = (Integer) dadosCreditosARealizarValorResidual[3]; BigDecimal valorResidual = (BigDecimal) dadosCreditosARealizarValorResidual[4]; if (valorResidual != null && valorResidual.compareTo(new BigDecimal("0.00")) > 0) { // Cria o objeto com os valores passados ContaAReceberContabil contaAReceberContabil = criarContaAReceberContabil( anoMesAnteriorFaturamento, idGerenciaRegionalCreditoValorResidual, idUnidadeNegocioCreditoValorResidual, idLocalidadeCreditoValorResidual, idCategoriaCreditoValorResidual, valorResidual.multiply(new BigDecimal("-1")), LancamentoTipo.CREDITOS_A_REALIZAR,sequenciaLancamentoTipo, idLancamentoItem, sequenciaLancamentoItem, idLancamentoItemContabil); colecaoContasAReceberContabil.add(contaAReceberContabil); } } colecaoValorResidual = null; } return colecaoContasAReceberContabil; } private Collection obterContaAReceberContabilCreditoARealizar(int anoMesAnteriorFaturamento, Collection colecaoCreditosARealizar, Collection<Object[]> colecaoCreditosARealizarValorResidual, int sequenciaLancamentoTipo, Integer idLancamentoItem, int sequenciaLancamentoItem, Integer idLancamentoItemContabil) { Collection colecaoContasAReceberContabil = new ArrayList(); if (colecaoCreditosARealizar != null && !colecaoCreditosARealizar.isEmpty()) { Iterator colecaoCreditosARealizarIterator = colecaoCreditosARealizar.iterator(); while (colecaoCreditosARealizarIterator.hasNext()) { Object[] dadosCreditosARealizar = (Object[]) colecaoCreditosARealizarIterator.next(); Integer idGerenciaRegionalCredito = (Integer) dadosCreditosARealizar[0]; Integer idUnidadeNegocioCredito = (Integer) dadosCreditosARealizar[1]; Integer idLocalidadeCredito = (Integer) dadosCreditosARealizar[2]; Integer idCategoriaCredito = (Integer) dadosCreditosARealizar[3]; BigDecimal valorCategoria = (BigDecimal) dadosCreditosARealizar[4]; if (colecaoCreditosARealizarValorResidual != null && !colecaoCreditosARealizarValorResidual.isEmpty()) { Collection colecaoRemovidos = new ArrayList<Object[]>(); for (Object[] dadosCreditosARealizarValorResidual : colecaoCreditosARealizarValorResidual) { Integer idCategoriaCreditoValorResidual = (Integer) dadosCreditosARealizarValorResidual[3]; BigDecimal valorResidual = (BigDecimal) dadosCreditosARealizarValorResidual[4]; if (idCategoriaCreditoValorResidual.equals(idCategoriaCredito)) { if (valorResidual != null) { valorCategoria = valorCategoria.add(valorResidual); } colecaoRemovidos.add(dadosCreditosARealizarValorResidual); break; } } colecaoCreditosARealizarValorResidual.removeAll(colecaoRemovidos); } if (valorCategoria != null && valorCategoria.compareTo(new BigDecimal("0.00")) > 0) { ContaAReceberContabil contaAReceberContabil = criarContaAReceberContabil( anoMesAnteriorFaturamento, idGerenciaRegionalCredito, idUnidadeNegocioCredito, idLocalidadeCredito, idCategoriaCredito, valorCategoria.multiply(new BigDecimal("-1")), LancamentoTipo.CREDITOS_A_REALIZAR,sequenciaLancamentoTipo, idLancamentoItem, sequenciaLancamentoItem, idLancamentoItemContabil); colecaoContasAReceberContabil.add(contaAReceberContabil); } } colecaoCreditosARealizar = null; } return colecaoContasAReceberContabil; } /** * [UC0751] Gerar Valor Referente a Volumes Consumidos e N�o Faturados * * M�todo respons�vel pela gera��o de valor dos volumes consumidos e n�o faturados * * @author Rafael Corr�a, Pedro Alexandre * @date 19/02/2008, 08/07/2008 * * @param idLocalidade * @throws ControladorException */ public void gerarValorVolumesConsumidosNaoFaturados(Integer idLocalidade, int idFuncionalidadeIniciada) throws ControladorException { System.out.println("LOCALIDADE " + idLocalidade); int idUnidadeIniciada = 0; // ------------------------- // // Registrar o in�cio do processamento da Unidade de // Processamento // do Batch // // ------------------------- idUnidadeIniciada = getControladorBatch().iniciarUnidadeProcessamentoBatch(idFuncionalidadeIniciada,UnidadeProcessamento.LOCALIDADE, idLocalidade); SistemaParametro sistemaParametro = getControladorUtil().pesquisarParametrosDoSistema(); try { //Sistema verifica se todos os grupos j� foram faturados Collection<FaturamentoGrupo> colecaoFaturamentoGrupoNaoFaturados = repositorioFaturamento.pesquisarFaturamentoGrupoNaoFaturados(sistemaParametro.getAnoMesFaturamento()); //[FS0002] - Verificar exist�ncia de grupo n�o faturado if (colecaoFaturamentoGrupoNaoFaturados != null && !colecaoFaturamentoGrupoNaoFaturados.isEmpty()) { throw new ControladorException("atencao.existe.grupo.nao.faturado"); } Collection colecaoValorVolumesConsumidosNaoFaturados = new ArrayList(); // item 2 // exclui os dados referentes ao valor dos volumes consumidos e n�o // faturados do m�s de refer�ncia do faturamento corrente repositorioFinanceiro.removerValorVolumesConsumidosNaoFaturados(sistemaParametro.getAnoMesFaturamento(), idLocalidade); Integer idGerenciaRegional = this.getControladorLocalidade().pesquisarIdGerenciaParaLocalidade(idLocalidade); //System.out.println("Gerencia Regional -> " + idGerenciaRegional); Integer idUnidadeNegocio = this.getControladorLocalidade().pesquisarIdUnidadeNegocioParaLocalidade(idLocalidade); System.out.println("Pesquisando"); // Valores de �gua e Esgoto this.adicionarValorVolumesConsumidosNaoFaturadosAguaEsgoto(idLocalidade,sistemaParametro.getAnoMesFaturamento(), colecaoValorVolumesConsumidosNaoFaturados,idGerenciaRegional,idUnidadeNegocio); System.out.println("Fim Pesquisando"); if (colecaoValorVolumesConsumidosNaoFaturados != null && !colecaoValorVolumesConsumidosNaoFaturados.isEmpty()) { getControladorBatch().inserirColecaoObjetoParaBatch(colecaoValorVolumesConsumidosNaoFaturados); } getControladorBatch().encerrarUnidadeProcessamentoBatch(null,idUnidadeIniciada, false); System.out.println("fim da gera��o " + "Localidade " + idLocalidade); } catch (Exception e) { getControladorBatch().encerrarUnidadeProcessamentoBatch(e,idUnidadeIniciada, true); throw new EJBException(e); } } /** * [UC0714] Gerar Contas a Receber Cont�bil * * Cria o objeto de ContaAReceberContabil de acordo com os par�metros * passados * * @author Rafael Corr�a * @date 08/11/2007 * */ private ValorVolumesConsumidosNaoFaturado criarValorVolumesConsumidosNaoFaturado( int anoMesReferencia, Integer idUnidadeNegocio, Integer idGerenciaRegional, Integer idLocalidade, Integer idCategoria, BigDecimal valorItem, Integer idLancamentoTipo, int sequenciaLancamentoTipo, Integer idLancamentoItem, int sequenciaLancamentoItem) { ValorVolumesConsumidosNaoFaturado retorno = new ValorVolumesConsumidosNaoFaturado(); retorno.setAnoMesReferencia(anoMesReferencia); // Ger�ncia Regional GerenciaRegional gerenciaRegional = new GerenciaRegional(); gerenciaRegional.setId(idGerenciaRegional); retorno.setGerenciaRegional(gerenciaRegional); // Unidade Neg�cio UnidadeNegocio unidadeNegocio = new UnidadeNegocio(); unidadeNegocio.setId(idUnidadeNegocio); retorno.setUnidadeNegocio(unidadeNegocio); // Localidade Localidade localidade = new Localidade(); localidade.setId(idLocalidade); retorno.setLocalidade(localidade); // Categoria Categoria categoria = new Categoria(); categoria.setId(idCategoria); retorno.setCategoria(categoria); // Valor Acumulado retorno.setValorItemLancamento(valorItem); // Lan�amento Tipo LancamentoTipo lancamentoTipo = new LancamentoTipo(); lancamentoTipo.setId(idLancamentoTipo); retorno.setLancamentoTipo(lancamentoTipo); // Seq��ncia do Lan�amento Tipo retorno.setNumeroSequenciaTipoLancamento(sequenciaLancamentoTipo); // Lan�amento Item LancamentoItem lancamentoItem = new LancamentoItem(); lancamentoItem.setId(idLancamentoItem); retorno.setLancamentoItem(lancamentoItem); // Seq��ncia do Lan�amento Item retorno.setNumeroSequenciaItemTipoLancamento(sequenciaLancamentoItem); return retorno; } /** * [UC0751] Gerar Valor Referente a Volumes Consumidos e N�o Faturados * * Adiciona os dados de �gua e esgoto * * @author Rafael Corr�a, Pedro Alexandre * @date 08/11/2007, 08/06/2008 * */ private void adicionarValorVolumesConsumidosNaoFaturadosAguaEsgoto( Integer idLocalidade, int anoMesFaturamento, Collection colecaoValorVolumesConsumidosNaoFaturados, Integer idGerenciaRegional, Integer idUnidadeNegocio) throws ErroRepositorioException { int mes = Util.obterMes(anoMesFaturamento); int ano = Util.obterAno(anoMesFaturamento); int dia = new Integer(Util.obterUltimoDiaMes(mes, ano)); Date ultimoDiaMesFaturamento = Util.criarData(dia, mes, ano); Collection colecaoDadosValorAguaEsgoto = repositorioFinanceiro.pesquisarDadosValorVolumesConsumidosNaoFaturadosAguaEsgoto(anoMesFaturamento, idLocalidade, ultimoDiaMesFaturamento); if (colecaoDadosValorAguaEsgoto != null && !colecaoDadosValorAguaEsgoto.isEmpty()) { Iterator colecaoDadosValorAguaEsgotoIterator = colecaoDadosValorAguaEsgoto.iterator(); while (colecaoDadosValorAguaEsgotoIterator.hasNext()) { Object[] dadosValorAguaEsgoto = (Object[]) colecaoDadosValorAguaEsgotoIterator.next(); Integer idCategoriaConta = (Integer) dadosValorAguaEsgoto[0]; BigDecimal valorAgua = (BigDecimal) dadosValorAguaEsgoto[1]; BigDecimal valorEsgoto = (BigDecimal) dadosValorAguaEsgoto[2]; // �gua if (valorAgua != null && valorAgua.compareTo(BigDecimal.ZERO) != 0) { // Cria o objeto com os valores passados ValorVolumesConsumidosNaoFaturado volumesConsumidosNaoFaturado = this.criarValorVolumesConsumidosNaoFaturado( anoMesFaturamento, idUnidadeNegocio, idGerenciaRegional, idLocalidade, idCategoriaConta, valorAgua, LancamentoTipo.VALOR_REFERENTE_VOLUMES_NAO_FATURADOS, 100, LancamentoItem.AGUA, 10); colecaoValorVolumesConsumidosNaoFaturados.add(volumesConsumidosNaoFaturado); } // Esgoto if (valorEsgoto != null && valorEsgoto.compareTo(BigDecimal.ZERO) != 0) { // Cria o objeto com os valores passados ValorVolumesConsumidosNaoFaturado volumesConsumidosNaoFaturado = this.criarValorVolumesConsumidosNaoFaturado( anoMesFaturamento, idUnidadeNegocio, idGerenciaRegional, idLocalidade, idCategoriaConta, valorEsgoto, LancamentoTipo.VALOR_REFERENTE_VOLUMES_NAO_FATURADOS, 100, LancamentoItem.ESGOTO, 20); colecaoValorVolumesConsumidosNaoFaturados.add(volumesConsumidosNaoFaturado); } } colecaoDadosValorAguaEsgoto = null; } } /** * <Breve descri��o sobre o caso de uso> * * <Identificador e nome do caso de uso> * * @author Pedro Alexandre * @date 18/06/2007 * * @param processoIniciado * @param dadosProcessamento * @return * @throws ControladorException */ public ParametrosDevedoresDuvidosos pesquisarParametrosDevedoresDuvidosos(Integer anoMesReferenciaContabil) throws ControladorException { try { return this.repositorioFinanceiro.pesquisarParametrosDevedoresDuvidosos(anoMesReferenciaContabil); } catch (ErroRepositorioException e) { sessionContext.setRollbackOnly(); throw new ControladorException("erro.sistema", e); } } /** * Gera os lan�amentos dos devedores duvidosos. * * [UC0486] Gerar Lan�amentos Cont�beis dos Devedores Duvidosos * * @author Pedro Alexandre * @date 21/06/2007 * * @param anoMesReferenciaContabil * @param idLocalidade * @param idFuncionalidadeIniciada * @throws ControladorException */ public void gerarLancamentosContabeisDevedoresDuvidosos(Integer anoMesReferenciaContabil, Integer idLocalidade, int idFuncionalidadeIniciada) throws ControladorException{ System.out.println("Localidade " + idLocalidade); int idUnidadeIniciada = 0; /* * Registrar o in�cio do processamento da Unidade de * Processamento do Batch */ idUnidadeIniciada = getControladorBatch().iniciarUnidadeProcessamentoBatch(idFuncionalidadeIniciada,UnidadeProcessamento.LOCALIDADE,(idLocalidade)); //[FS0001 - Validar Refer�ncia Cont�bil] Integer anoMesArrecadacaoAtual = getControladorUtil().pesquisarParametrosDoSistema().getAnoMesArrecadacao(); if(anoMesReferenciaContabil.intValue() >anoMesArrecadacaoAtual.intValue()){ //levanta a exce��o para a pr�xima camada throw new ControladorException("atencao.mes_ano.contabil.superior",null,Util.formatarAnoMesParaMesAno(anoMesArrecadacaoAtual.toString())); } //remove os lan�amentos cont�beis j� gerados this.removerLancamentoContabil(anoMesReferenciaContabil,idLocalidade,LancamentoOrigem.DEVEDORES_DUVIDOSOS); try { /* * Pesquisa os dados do resumo dos devedores duvidosos * para o ano/m�s de refer�ncia atual e para a localidade informada. * * 0 - id da localidade * 1 - id do tipo de lan�amento * 2 - id do item de lan�amento * 3 - id do item de lan�amento cont�bil * 4 - id da categoria * 5 - soma do valor do resumo dos devedores duvidosos */ Collection<Object[]> colecaoDadosResumoDevedoresDuvidosos = repositorioFinanceiro.obterDadosResumoDevedoresDuvidosos(anoMesReferenciaContabil, idLocalidade); /* * Caso exista resumo de devedores duvidosos para a localidade e o ano/m�s * cria o lancamento cont�bil junto com seus items * para cada conjunto de mesmo tipo de lan�amento */ if (colecaoDadosResumoDevedoresDuvidosos != null && !colecaoDadosResumoDevedoresDuvidosos.isEmpty()){ //flag utilizada somente quando for a primeira entrada boolean flagPrimeiraVez = true; int idTipoLancamentoTemp = -1; Collection<Object[]> colecaoDadosResumoPorTipoLancamento = new ArrayList(); // defini��o da origem do lan�amento LancamentoOrigem lancamentoOrigem = new LancamentoOrigem(); lancamentoOrigem.setId(LancamentoOrigem.DEVEDORES_DUVIDOSOS); //Cria a vari�vel que vai armazenar o lan�amento cont�bil LancamentoContabil lancamentoContabilInsert = null; //la�o para gerar os lan�amentos por grupo de tipo de lan�amento for(Object[] dadosResumoDevedoresDuvidosos : colecaoDadosResumoDevedoresDuvidosos){ //recupera o tipo de lan�amento atual Integer idTipoLancamento = (Integer) dadosResumoDevedoresDuvidosos[1]; /* * Caso seja a primeira entrada do "for" * adiciona os dados a cole��o e atualiza o item temporario * criando tamb�m o lan�amento contabil que ira ser inserido * junto com seus items. * * Caso contr�rio (n�o seja a primeira entrada do la�o "for") * verifica se o item de lan�amento mudou, caso n�o tenha mudado * adiciona os dados ao conjunto do mesmo item * caso contr�rio, se mudou o item de lan�amento o conjunto est� fechado * para o lan�amento cont�bil e chama o m�todo para inserir o * lan�amento cont�bil junto com seus itens. */ if(flagPrimeiraVez){ colecaoDadosResumoPorTipoLancamento.add(dadosResumoDevedoresDuvidosos); flagPrimeiraVez = false; idTipoLancamentoTemp = idTipoLancamento; LancamentoTipo tipoLancamento = new LancamentoTipo(); tipoLancamento.setId(idTipoLancamento); Localidade localidade = new Localidade(); localidade.setId(idLocalidade); //cria o lan�amento cont�bil para ser inserido lancamentoContabilInsert = new LancamentoContabil(); lancamentoContabilInsert.setAnoMes(anoMesReferenciaContabil); lancamentoContabilInsert.setLancamentoOrigem(lancamentoOrigem); lancamentoContabilInsert.setLancamentoTipo(tipoLancamento); lancamentoContabilInsert.setLocalidade(localidade); lancamentoContabilInsert.setRecebimentoTipo(null); lancamentoContabilInsert.setUltimaAlteracao(new Date()); }else{ /* * Caso ainda seja o mesmo item adicona os dados para * ser gerado os itens do lan�amento para o mesmo lan�amento. * Caso contr�rio chama o met�do para inseri os itens e o lan�amento cont�bil. */ if(idTipoLancamento == idTipoLancamentoTemp){ colecaoDadosResumoPorTipoLancamento.add(dadosResumoDevedoresDuvidosos); }else{ /* met�do para inserir o lan�amento cont�bil assim como seus itens */ this.inserirLancamentoContabilItemDevedoresDuvidosos(lancamentoContabilInsert, colecaoDadosResumoPorTipoLancamento); //limpa cole��o e adiciona os dados do resumo atual colecaoDadosResumoPorTipoLancamento.clear(); colecaoDadosResumoPorTipoLancamento.add(dadosResumoDevedoresDuvidosos); LancamentoTipo tipoLancamento = new LancamentoTipo(); tipoLancamento.setId(idTipoLancamento); Localidade localidade = new Localidade(); localidade.setId(idLocalidade); //cria o lan�amento cont�bil que vai ser inserido lancamentoContabilInsert = new LancamentoContabil(); lancamentoContabilInsert.setAnoMes(anoMesReferenciaContabil); lancamentoContabilInsert.setLancamentoOrigem(lancamentoOrigem); lancamentoContabilInsert.setLancamentoTipo(tipoLancamento); lancamentoContabilInsert.setLocalidade(localidade); lancamentoContabilInsert.setRecebimentoTipo(null); lancamentoContabilInsert.setUltimaAlteracao(new Date()); //atualiza o tipo de lan�amento tempor�rio com o novo valor idTipoLancamentoTemp = idTipoLancamento; } } } /* * �ltimo registro * Esse "if" � para verificar se ainda existe um �ltimo registro na cole��o * caso exista algum item, adiciona o lan�amento cont�bil junto com o item. */ if(colecaoDadosResumoPorTipoLancamento != null && colecaoDadosResumoPorTipoLancamento.size() > 0 ){ this.inserirLancamentoContabilItemDevedoresDuvidosos(lancamentoContabilInsert, colecaoDadosResumoPorTipoLancamento); colecaoDadosResumoPorTipoLancamento = null; } } getControladorBatch().encerrarUnidadeProcessamentoBatch(null,idUnidadeIniciada, false); } catch (Exception ex) { ex.printStackTrace(); getControladorBatch().encerrarUnidadeProcessamentoBatch(ex,idUnidadeIniciada, true); throw new EJBException(ex); } } /** * Gera o lan�amento cont�bil junto com seus itens. * * [UC0486] - Gerar Lan�amentos Cont�beis dos Devedores Duvidosos * * @author Pedro Alexandre * @date 21/06/2007 * * @param lancamentoContabil * @param colecaoDadosResumoPorTipoLancamento * @throws ControladorException */ protected void inserirLancamentoContabilItemDevedoresDuvidosos(LancamentoContabil lancamentoContabil,Collection<Object[]> colecaoDadosResumoPorTipoLancamento) throws ControladorException { try{ /* * Caso exista dados para os itens do resumo do faturamento. */ if(colecaoDadosResumoPorTipoLancamento != null && !colecaoDadosResumoPorTipoLancamento.isEmpty()){ Collection colecaoLancamentoContabilItem = new ArrayList(); //flag que indica se o lan�amento cont�bil j� foi inserido ou n�o. boolean flagInseridoLancamentoContabil = false; /* * Dados do resumo dos devedores duvidosos * 0 - id da localidade * 1 - id do tipo de lan�amento * 2 - id do item de lan�amento * 3 - id do item de lan�amento cont�bil * 4 - id da categoria * 5 - soma do valor do resumo dos devedores duvidosos */ for(Object[] dadosResumoDevedoresDuvidosos : colecaoDadosResumoPorTipoLancamento){ //recupera os dados do resumo dos devedores duvidosos Integer idLancamentoTipo = (Integer) dadosResumoDevedoresDuvidosos[1]; Integer idLancamentoItem = (Integer) dadosResumoDevedoresDuvidosos[2]; Integer idLancamentoItemContabil = (Integer) dadosResumoDevedoresDuvidosos[3]; Integer idCategoria = (Integer) dadosResumoDevedoresDuvidosos[4]; BigDecimal valorLancamento = (BigDecimal) dadosResumoDevedoresDuvidosos[5]; /* * Verifica se existe conta cont�bil para o item que vai ser inserido * * 0 - id conta cont�bil do d�bito * 1 - id conta cont�bil cr�dito * 2 - descri��o do hist�rico do d�bito * 3 - descri��o do hist�rico do cr�dito */ Object[] dadosContaContabil = this.repositorioFinanceiro.obterParametrosContabilDevedoresDuvidosos(idCategoria, idLancamentoItemContabil, idLancamentoItem, idLancamentoTipo); if(dadosContaContabil != null){ Integer idLancamentoContabil = null; /* * Caso exista dados para a conta cont�bil e o item cont�bil * ainda n�o foi inserido * inseri o item cont�bil na base. */ if(!flagInseridoLancamentoContabil){ idLancamentoContabil = (Integer)getControladorUtil().inserir(lancamentoContabil); lancamentoContabil.setId(idLancamentoContabil); flagInseridoLancamentoContabil = true; } //recupera os dados da conta cont�bil para o item //do resumo dos devedores duvidosos. Integer idContaContabilDebito = (Integer) dadosContaContabil[0]; Integer idContaContabilCredito = (Integer) dadosContaContabil[1]; String descricaoHistoricoDebito = (String) dadosContaContabil[2]; String descricaoHistoricoCredito = (String) dadosContaContabil[3]; //cria os indicadores de d�bito e cr�dito. Short indicadorDebito = new Short("2"); Short indicadorCredito = new Short("1"); Date ultimaAlteracao = new Date(); //cria as contas cont�beis de cr�dito e d�bito. ContaContabil contaContabilCredito = new ContaContabil(); contaContabilCredito.setId(idContaContabilCredito); ContaContabil contaContabilDebito = new ContaContabil(); contaContabilDebito.setId(idContaContabilDebito); /** Item de cr�dito */ LancamentoContabilItem lancamentoContabilItemCredito = new LancamentoContabilItem(indicadorCredito, valorLancamento, descricaoHistoricoCredito, ultimaAlteracao, lancamentoContabil, contaContabilCredito); colecaoLancamentoContabilItem.add(lancamentoContabilItemCredito); /** Item de d�bito */ LancamentoContabilItem lancamentoContabilItemDebito = new LancamentoContabilItem(indicadorDebito, valorLancamento, descricaoHistoricoDebito, ultimaAlteracao, lancamentoContabil, contaContabilDebito); colecaoLancamentoContabilItem.add(lancamentoContabilItemDebito); } } //inseri os itens de lan�amento cont�beis. getControladorBatch().inserirColecaoObjetoParaBatch(colecaoLancamentoContabilItem); } } catch (Exception ex) { throw new EJBException(ex); } } /** * Pesquisa a cole��o de ids das localidades para processar o lan�amentos * cont�beis dos devedores duvidosos. * * [UC0485] Gerar Lan�amentos Cont�beis dos Devedores Duvidosos * * @author Pedro Alexandre * @date 25/06/2007 * * @param anoMesReferenciaContabil * @return * @throws ControladorException */ public Collection<Integer> pesquisarIdsLocalidadesParaGerarLancamentosContabeisDevedoresDuvidosos(Integer anoMesReferenciaContabil) throws ControladorException{ try{ return this.repositorioFinanceiro.pesquisarIdsLocalidadesGerarLancamentosContabeisDevedoresDuvidosos(anoMesReferenciaContabil); //erro no hibernate } catch (ErroRepositorioException ex) { //levanta a exce��o para a pr�xima camada throw new ControladorException("erro.sistema", ex); } } /** * Remove os lan�amentos cont�beis e seus respectivos itens * de acordo com os par�metros informados. * * @author Pedro Alexandre * @date 26/06/2007 * * @param anoMesReferenciaContabil * @param idLocalidade * @param idLancamentoOrigem * @throws ControladorException */ public void removerLancamentoContabil(Integer anoMesReferenciaContabil, Integer idLocalidade, Integer idLancamentoOrigem) throws ControladorException{ try{ Collection<Integer> colecaoIdsLancamentosContabeis = this.repositorioFinanceiro.pesquisarIdsLancamentosContabeis(anoMesReferenciaContabil, idLocalidade,idLancamentoOrigem); if(colecaoIdsLancamentosContabeis != null && !colecaoIdsLancamentosContabeis.isEmpty()){ for(Integer idLancamentoContabil : colecaoIdsLancamentosContabeis){ this.repositorioFinanceiro.removerItensLancamentoContabil(idLancamentoContabil); } this.repositorioFinanceiro.removerLancamentosContabeis(colecaoIdsLancamentosContabeis); colecaoIdsLancamentosContabeis = null; } //erro no hibernate } catch (ErroRepositorioException ex) { //levanta a exce��o para a pr�xima camada throw new ControladorException("erro.sistema", ex); } } ////////////////////////////////////////////////////////////////////////// /** * Consulta ResumoDevedoresDuvidosos para a gera��o do relat�rio * [UC0487] Gerar Relat�rio de Resumo de Devedores Duvidosos * de acordo com a op��o de totaliza��o. * * @author Vivianne Sousa * @created 20/07/2007 * * @param opcaoTotalizacao * @return * @throws ControladorException */ public Collection consultarResumoDevedoresDuvidososRelatorio( String opcaoTotalizacao, int mesAnoReferencia, Integer gerenciaRegional, Integer localidade, Integer unidadeNegocio) throws ControladorException { Collection retorno = new ArrayList(); Collection colecaoResumoDevedoresDuvidososRelatorio = null; // Converter de mesAno para anoMes para que funcione nas consultas int anoMesReferencia = Util.formatarMesAnoParaAnoMes(mesAnoReferencia); boolean consultarResumoDevedoresDuvidososRelatorio = true; try { if (opcaoTotalizacao.equals("estado")) { colecaoResumoDevedoresDuvidososRelatorio = repositorioFinanceiro .consultarResumoDevedoresDuvidososRelatorioPorEstado(anoMesReferencia); } else if (opcaoTotalizacao.equals("estadoGerencia")) { colecaoResumoDevedoresDuvidososRelatorio = repositorioFinanceiro .consultarResumoDevedoresDuvidososRelatorioPorEstadoPorGerenciaRegional(anoMesReferencia); } else if (opcaoTotalizacao.equals("estadoUnidadeNegocio")) { consultarResumoDevedoresDuvidososRelatorio = false; retorno = consultarResumoDevedoresDuvidososRelatorioEstadoPorUnidadeNegocio(anoMesReferencia); } else if (opcaoTotalizacao.equals("estadoLocalidade")) { consultarResumoDevedoresDuvidososRelatorio = false; retorno = consultarResumoDevedoresDuvidososRelatorioPorEstadoPorLocalidade(anoMesReferencia); } else if (opcaoTotalizacao.equals("gerenciaRegional")) { colecaoResumoDevedoresDuvidososRelatorio = repositorioFinanceiro .consultarResumoDevedoresDuvidososRelatorioPorGerenciaRegional(anoMesReferencia, gerenciaRegional); } else if (opcaoTotalizacao.equals("gerenciaRegionalLocalidade")) { colecaoResumoDevedoresDuvidososRelatorio = repositorioFinanceiro .consultarResumoDevedoresDuvidososRelatorioPorGerenciaRegionalPorLocalidade( anoMesReferencia, gerenciaRegional); } else if (opcaoTotalizacao.equals("unidadeNegocio")) { colecaoResumoDevedoresDuvidososRelatorio = repositorioFinanceiro .consultarResumoDevedoresDuvidososRelatorioPorUnidadeNegocio( anoMesReferencia, unidadeNegocio); } else if (opcaoTotalizacao.equals("localidade")) { colecaoResumoDevedoresDuvidososRelatorio = repositorioFinanceiro .consultarResumoDevedoresDuvidososRelatorioPorLocalidade( anoMesReferencia, localidade); } if (consultarResumoDevedoresDuvidososRelatorio){ Iterator iterator = colecaoResumoDevedoresDuvidososRelatorio.iterator(); // Prepara cada linha do relat�rio String tipoLancamento = null; String itemLancamento = null; String itemContabel = null; String descGerenciaRegionalAnterior = null; String idGerenciaRegionalAnterior = null; String descLocalidadeAnterior = null; String idLocalidadeAnterior = null; String descLancamentoTipoSuperior = ""; String descUnidadeNegocioAnterior = null; String idUnidadeNegocioAnterior = null; Object[] elementAnterior = new Object[13]; BigDecimal[] arrayValores = new BigDecimal[5]; Boolean agrupaPorGerencia = false; if (opcaoTotalizacao.equalsIgnoreCase("estadoGerencia")|| opcaoTotalizacao.equalsIgnoreCase("gerenciaRegional")) { agrupaPorGerencia = true; } Boolean agrupaPorLocalidade = false; if (opcaoTotalizacao.equalsIgnoreCase("estadoLocalidade")|| opcaoTotalizacao.equalsIgnoreCase("gerenciaRegionalLocalidade")|| opcaoTotalizacao.equalsIgnoreCase("localidade")) { agrupaPorLocalidade = true; } Boolean agrupaPorUnidadeNegocio = false; if (opcaoTotalizacao.equalsIgnoreCase("unidadeNegocio") || opcaoTotalizacao.equalsIgnoreCase("estadoUnidadeNegocio")) { agrupaPorUnidadeNegocio = true; } while (iterator.hasNext()) { Object[] element = null; String tempTipoLancamento = null; String tempItemLancamento = null; String tempItemContabel = null; element = (Object[]) iterator.next(); if (tipoLancamento == null) { tipoLancamento = (String) element[1]; itemLancamento = (String) element[2]; itemContabel = (String) element[3]; } tempTipoLancamento = (String) element[1]; tempItemLancamento = (String) element[2]; tempItemContabel = (String) element[3]; boolean condicaoIgual = true; // compara se o registro atual eh do // mesmo tipo de Recebimento, mesmo tipo de lan�amento // e mesmo item de lan�amento do registro anterior if (tipoLancamento.equals(tempTipoLancamento) && itemLancamento.equals(tempItemLancamento)) { // se o registro possuir item contabel // compara se eh do mesmo item contabel do registro anterior if (itemContabel == null && tempItemContabel == null || (itemContabel != null && tempItemContabel != null && itemContabel.equals(tempItemContabel))) { // se for agrupado por gerencia // compara se o registro atual eh da // mesma gerencia regional do registro anterior if (!agrupaPorGerencia || descGerenciaRegionalAnterior == null || (agrupaPorGerencia && descGerenciaRegionalAnterior.equalsIgnoreCase((String) element[9]))) { switch (((Integer) element[8]).intValue()) { case 1: arrayValores[0] = (BigDecimal) element[0]; break; case 2: arrayValores[1] = (BigDecimal) element[0]; break; case 3: arrayValores[2] = (BigDecimal) element[0]; break; case 4: arrayValores[4] = (BigDecimal) element[0]; break; } } else { condicaoIgual = false; } } else { condicaoIgual = false; } } else { condicaoIgual = false; } if (!condicaoIgual) { ResumoDevedoresDuvidososRelatorioHelper ResumoDevedoresDuvidososRelatorioHelper = new ResumoDevedoresDuvidososRelatorioHelper( (BigDecimal[]) arrayValores, (String) elementAnterior[1], (String) elementAnterior[2], (String) elementAnterior[3], (Short) elementAnterior[4], (Short) elementAnterior[5], (Integer) elementAnterior[6], (Integer) elementAnterior[7], false, descGerenciaRegionalAnterior, idGerenciaRegionalAnterior, descLocalidadeAnterior, idLocalidadeAnterior,descLancamentoTipoSuperior, descUnidadeNegocioAnterior,idUnidadeNegocioAnterior); retorno.add(ResumoDevedoresDuvidososRelatorioHelper); arrayValores = new BigDecimal[5]; switch (((Integer) element[8]).intValue()) { case 1: arrayValores[0] = (BigDecimal) element[0]; break; case 2: arrayValores[1] = (BigDecimal) element[0]; break; case 3: arrayValores[2] = (BigDecimal) element[0]; break; case 4: arrayValores[4] = (BigDecimal) element[0]; break; } } elementAnterior[1] = element[1]; // descricaoTipoLancamento if (((String)element[1]).equalsIgnoreCase((String)element[2])){ elementAnterior[2] = null; // descricaoItemLancamento }else{ elementAnterior[2] = element[2]; // descricaoItemLancamento } elementAnterior[3] = element[3]; // descricaoItemContabil elementAnterior[4] = element[4]; // indicadorImpressao elementAnterior[5] = element[5]; // indicadorTotal elementAnterior[6] = element[6]; // lancamentoTipo elementAnterior[7] = element[7]; // lancamentoTipoSuperior // identifica pelo que vai ser "quebrado" o rel�torio if (agrupaPorGerencia) { // quebra p�gina por Ger�ncia Regional e n�o mostra a Localidade descGerenciaRegionalAnterior = "" + element[9]; idGerenciaRegionalAnterior = "" + element[10]; } if (agrupaPorLocalidade) { if (opcaoTotalizacao.equalsIgnoreCase("estadoLocalidade") || opcaoTotalizacao .equalsIgnoreCase("gerenciaRegionalLocalidade")) { // quebra a p�gina por Localidade e mostra a Ger�ncia // Regional descGerenciaRegionalAnterior = "" + element[9]; idGerenciaRegionalAnterior = "" + element[10]; descLocalidadeAnterior = "" + element[11]; idLocalidadeAnterior = "" + element[12]; } else { // quebra a p�gina por Localidade e n�o mostra a Ger�ncia // Regional descLocalidadeAnterior = "" + element[9]; idLocalidadeAnterior = "" + element[10]; } } if (agrupaPorUnidadeNegocio){ descUnidadeNegocioAnterior = "" + element[9]; idUnidadeNegocioAnterior = "" + element[10]; } tipoLancamento = tempTipoLancamento; itemLancamento = tempItemLancamento; itemContabel = tempItemContabel; } if (colecaoResumoDevedoresDuvidososRelatorio != null && !colecaoResumoDevedoresDuvidososRelatorio.isEmpty()) { // adiciona a ultima linha ResumoDevedoresDuvidososRelatorioHelper ResumoDevedoresDuvidososRelatorioHelper = new ResumoDevedoresDuvidososRelatorioHelper( (BigDecimal[]) arrayValores, (String) elementAnterior[1], (String) elementAnterior[2], (String) elementAnterior[3], (Short) elementAnterior[4], (Short) elementAnterior[5], (Integer) elementAnterior[6], (Integer) elementAnterior[7], false, descGerenciaRegionalAnterior, idGerenciaRegionalAnterior, descLocalidadeAnterior, idLocalidadeAnterior,descLancamentoTipoSuperior, descUnidadeNegocioAnterior,idUnidadeNegocioAnterior); retorno.add(ResumoDevedoresDuvidososRelatorioHelper); } } } catch (ErroRepositorioException ex) { throw new ControladorException("erro.sistema", ex); } return retorno; } /** * Consulta ResumoDevedoresDuvidosos para a gera��o do relat�rio * [UC0487] Gerar Relat�rio de Resumo de Devedores Duvidosos * de acordo com a op��o de totaliza��o. * * @author Vivianne Sousa * @created 20/07/2007 * * @param opcaoTotalizacao * @return * @throws ControladorException */ public Collection consultarResumoDevedoresDuvidososRelatorioEstadoPorUnidadeNegocio(int anoMesReferencia) throws ControladorException { Collection colecaoResumoDevedoresDuvidososRelatorioEstadoPorUnidadeNegocio = new ArrayList(); Collection retorno = new ArrayList(); try { colecaoResumoDevedoresDuvidososRelatorioEstadoPorUnidadeNegocio = repositorioFinanceiro.consultarResumoDevedoresDuvidososRelatorioEstadoPorUnidadeNegocio(anoMesReferencia); } catch (ErroRepositorioException e) { sessionContext.setRollbackOnly(); throw new ControladorException("erro.sistema", e); } Iterator iterator = colecaoResumoDevedoresDuvidososRelatorioEstadoPorUnidadeNegocio.iterator(); // Prepara cada linha do relat�rio String tipoLancamento = null; String itemLancamento = null; String itemContabel = null; String descGerenciaRegionalAnterior = null; String idGerenciaRegionalAnterior = null; String descLocalidadeAnterior = null; String idLocalidadeAnterior = null; String descLancamentoTipoSuperior = ""; String descUnidadeNegocioAnterior = null; String idUnidadeNegocioAnterior = null; Object[] elementAnterior = new Object[13]; BigDecimal[] arrayValores = new BigDecimal[5]; while (iterator.hasNext()) { Object[] element = null; String tempTipoLancamento = null; String tempItemLancamento = null; String tempItemContabel = null; element = (Object[]) iterator.next(); if (tipoLancamento == null) { tipoLancamento = (String) element[1]; itemLancamento = (String) element[2]; itemContabel = (String) element[3]; } tempTipoLancamento = (String) element[1]; tempItemLancamento = (String) element[2]; tempItemContabel = (String) element[3]; boolean condicaoIgual = true; // compara se o registro atual eh do // mesmo tipo de Recebimento, mesmo tipo de lan�amento // e mesmo item de lan�amento do registro anterior if (tipoLancamento.equals(tempTipoLancamento) && itemLancamento.equals(tempItemLancamento)) { // se o registro possuir item contabel // compara se eh do mesmo item contabel do registro anterior if (itemContabel == null && tempItemContabel == null || (itemContabel != null && tempItemContabel != null && itemContabel.equals(tempItemContabel))) { // se for agrupado por gerencia // compara se o registro atual eh da // mesma gerencia regional do registro anterior switch (((Integer) element[8]).intValue()) { case 1: arrayValores[0] = (BigDecimal) element[0]; break; case 2: arrayValores[1] = (BigDecimal) element[0]; break; case 3: arrayValores[2] = (BigDecimal) element[0]; break; case 4: arrayValores[4] = (BigDecimal) element[0]; break; } } else { condicaoIgual = false; } } else { condicaoIgual = false; } if (!condicaoIgual) { ResumoDevedoresDuvidososRelatorioHelper ResumoDevedoresDuvidososRelatorioHelper = new ResumoDevedoresDuvidososRelatorioHelper( (BigDecimal[]) arrayValores, (String) elementAnterior[1], (String) elementAnterior[2], (String) elementAnterior[3], (Short) elementAnterior[4], (Short) elementAnterior[5], (Integer) elementAnterior[6], (Integer) elementAnterior[7], false, descGerenciaRegionalAnterior, idGerenciaRegionalAnterior, descLocalidadeAnterior, idLocalidadeAnterior,descLancamentoTipoSuperior, descUnidadeNegocioAnterior,idUnidadeNegocioAnterior); retorno.add(ResumoDevedoresDuvidososRelatorioHelper); arrayValores = new BigDecimal[5]; switch (((Integer) element[8]).intValue()) { case 1: arrayValores[0] = (BigDecimal) element[0]; break; case 2: arrayValores[1] = (BigDecimal) element[0]; break; case 3: arrayValores[2] = (BigDecimal) element[0]; break; case 4: arrayValores[4] = (BigDecimal) element[0]; break; } } if (idGerenciaRegionalAnterior != null && !idGerenciaRegionalAnterior.equals("" + element[14])){ //quebra por gerencia retorno = consultarResumoDevedoresDuvidososRelatorioPorGerenciaRegional(anoMesReferencia,new Integer (idGerenciaRegionalAnterior),retorno); } elementAnterior[1] = element[1]; // descricaoTipoLancamento if (((String)element[1]).equalsIgnoreCase((String)element[2])){ elementAnterior[2] = null; // descricaoItemLancamento }else{ elementAnterior[2] = element[2]; // descricaoItemLancamento } elementAnterior[3] = element[3]; // descricaoItemContabil elementAnterior[4] = element[4]; // indicadorImpressao elementAnterior[5] = element[5]; // indicadorTotal elementAnterior[6] = element[6]; // lancamentoTipo elementAnterior[7] = element[7]; // lancamentoTipoSuperior descUnidadeNegocioAnterior = "" + element[9]; idUnidadeNegocioAnterior = "" + element[10]; descGerenciaRegionalAnterior = "" + element[13]; idGerenciaRegionalAnterior = "" + element[14]; tipoLancamento = tempTipoLancamento; itemLancamento = tempItemLancamento; itemContabel = tempItemContabel; } if (colecaoResumoDevedoresDuvidososRelatorioEstadoPorUnidadeNegocio != null && !colecaoResumoDevedoresDuvidososRelatorioEstadoPorUnidadeNegocio.isEmpty()) { // adiciona a ultima linha ResumoDevedoresDuvidososRelatorioHelper ResumoDevedoresDuvidososRelatorioHelper = new ResumoDevedoresDuvidososRelatorioHelper( (BigDecimal[]) arrayValores, (String) elementAnterior[1], (String) elementAnterior[2], (String) elementAnterior[3], (Short) elementAnterior[4], (Short) elementAnterior[5], (Integer) elementAnterior[6], (Integer) elementAnterior[7], false, descGerenciaRegionalAnterior, idGerenciaRegionalAnterior, descLocalidadeAnterior, idLocalidadeAnterior,descLancamentoTipoSuperior, descUnidadeNegocioAnterior,idUnidadeNegocioAnterior); retorno.add(ResumoDevedoresDuvidososRelatorioHelper); retorno = consultarResumoDevedoresDuvidososRelatorioPorGerenciaRegional(anoMesReferencia,new Integer (idGerenciaRegionalAnterior),retorno); } return retorno; } /** * Consulta ResumoDevedoresDuvidosos para a gera��o do relat�rio * [UC0487] Gerar Relat�rio de Resumo de Devedores Duvidosos * de acordo com a op��o de totaliza��o. * * @author Vivianne Sousa * @created 20/07/2007 * * @param opcaoTotalizacao * @return * @throws ControladorException */ public Collection consultarResumoDevedoresDuvidososRelatorioPorGerenciaRegional(int anoMesReferencia, Integer idGerenciaRegional , Collection colecaoResumoDevedoresDuvidososRelatorio ) throws ControladorException { Collection colecaoResumoDevedoresDuvidososRelatorioPorGerenciaRegional = new ArrayList(); try { colecaoResumoDevedoresDuvidososRelatorioPorGerenciaRegional = repositorioFinanceiro.consultarResumoDevedoresDuvidososRelatorioPorGerenciaRegional(anoMesReferencia, idGerenciaRegional); } catch (ErroRepositorioException e) { sessionContext.setRollbackOnly(); throw new ControladorException("erro.sistema", e); } Iterator iteratorResumoDevedoresDuvidososRelatorioPorGerenciaRegional = colecaoResumoDevedoresDuvidososRelatorioPorGerenciaRegional.iterator(); // Prepara cada linha do relat�rio String tipoLancamento = null; String itemLancamento = null; String itemContabel = null; String descGerenciaRegionalAnterior = null; String idGerenciaRegionalAnterior = null; String descLocalidadeAnterior = null; String idLocalidadeAnterior = null; String descLancamentoTipoSuperior = ""; String descUnidadeNegocioAnterior = null; String idUnidadeNegocioAnterior = null; Object[] elementAnterior = new Object[13]; BigDecimal[] arrayValores = new BigDecimal[5]; Boolean agrupaPorGerencia = true; while (iteratorResumoDevedoresDuvidososRelatorioPorGerenciaRegional.hasNext()) { Object[] element = null; String tempTipoLancamento = null; String tempItemLancamento = null; String tempItemContabel = null; element = (Object[]) iteratorResumoDevedoresDuvidososRelatorioPorGerenciaRegional.next(); if (tipoLancamento == null) { tipoLancamento = (String) element[1]; itemLancamento = (String) element[2]; itemContabel = (String) element[3]; } tempTipoLancamento = (String) element[1]; tempItemLancamento = (String) element[2]; tempItemContabel = (String) element[3]; boolean condicaoIgual = true; // compara se o registro atual eh do // mesmo tipo de Recebimento, mesmo tipo de lan�amento // e mesmo item de lan�amento do registro anterior if (tipoLancamento.equals(tempTipoLancamento) && itemLancamento.equals(tempItemLancamento)) { // se o registro possuir item contabel // compara se eh do mesmo item contabel do registro anterior if (itemContabel == null && tempItemContabel == null || (itemContabel != null && tempItemContabel != null && itemContabel.equals(tempItemContabel))) { // se for agrupado por gerencia // compara se o registro atual eh da // mesma gerencia regional do registro anterior if (!agrupaPorGerencia || descGerenciaRegionalAnterior == null || (agrupaPorGerencia && descGerenciaRegionalAnterior.equalsIgnoreCase((String) element[9]))) { switch (((Integer) element[8]).intValue()) { case 1: arrayValores[0] = (BigDecimal) element[0]; break; case 2: arrayValores[1] = (BigDecimal) element[0]; break; case 3: arrayValores[2] = (BigDecimal) element[0]; break; case 4: arrayValores[4] = (BigDecimal) element[0]; break; } } else { condicaoIgual = false; } } else { condicaoIgual = false; } } else { condicaoIgual = false; } if (!condicaoIgual) { ResumoDevedoresDuvidososRelatorioHelper ResumoDevedoresDuvidososRelatorioHelper = new ResumoDevedoresDuvidososRelatorioHelper( (BigDecimal[]) arrayValores, (String) elementAnterior[1], (String) elementAnterior[2], (String) elementAnterior[3], (Short) elementAnterior[4], (Short) elementAnterior[5], (Integer) elementAnterior[6], (Integer) elementAnterior[7], false, descGerenciaRegionalAnterior, idGerenciaRegionalAnterior, descLocalidadeAnterior, idLocalidadeAnterior,descLancamentoTipoSuperior, descUnidadeNegocioAnterior,idUnidadeNegocioAnterior); colecaoResumoDevedoresDuvidososRelatorio.add(ResumoDevedoresDuvidososRelatorioHelper); arrayValores = new BigDecimal[5]; switch (((Integer) element[8]).intValue()) { case 1: arrayValores[0] = (BigDecimal) element[0]; break; case 2: arrayValores[1] = (BigDecimal) element[0]; break; case 3: arrayValores[2] = (BigDecimal) element[0]; break; case 4: arrayValores[4] = (BigDecimal) element[0]; break; } } elementAnterior[1] = element[1]; // descricaoTipoLancamento if (((String)element[1]).equalsIgnoreCase((String)element[2])){ elementAnterior[2] = null; // descricaoItemLancamento }else{ elementAnterior[2] = element[2]; // descricaoItemLancamento } elementAnterior[3] = element[3]; // descricaoItemContabil elementAnterior[4] = element[4]; // indicadorImpressao elementAnterior[5] = element[5]; // indicadorTotal elementAnterior[6] = element[6]; // lancamentoTipo elementAnterior[7] = element[7]; // lancamentoTipoSuperior descGerenciaRegionalAnterior = "" + element[9]; idGerenciaRegionalAnterior = "" + element[10]; tipoLancamento = tempTipoLancamento; itemLancamento = tempItemLancamento; itemContabel = tempItemContabel; } if (colecaoResumoDevedoresDuvidososRelatorioPorGerenciaRegional != null && !colecaoResumoDevedoresDuvidososRelatorioPorGerenciaRegional.isEmpty()) { // adiciona a ultima linha ResumoDevedoresDuvidososRelatorioHelper ResumoDevedoresDuvidososRelatorioHelper = new ResumoDevedoresDuvidososRelatorioHelper( (BigDecimal[]) arrayValores, (String) elementAnterior[1], (String) elementAnterior[2], (String) elementAnterior[3], (Short) elementAnterior[4], (Short) elementAnterior[5], (Integer) elementAnterior[6], (Integer) elementAnterior[7], false, descGerenciaRegionalAnterior, idGerenciaRegionalAnterior, descLocalidadeAnterior, idLocalidadeAnterior,descLancamentoTipoSuperior, descUnidadeNegocioAnterior,idUnidadeNegocioAnterior); colecaoResumoDevedoresDuvidososRelatorio.add(ResumoDevedoresDuvidososRelatorioHelper); } return colecaoResumoDevedoresDuvidososRelatorio; } /** * Consulta ResumoDevedoresDuvidosos para a gera��o do relat�rio * [UC0487] Gerar Relat�rio de Resumo de Devedores Duvidosos * de acordo com a op��o de totaliza��o. * * @author Vivianne Sousa * @created 20/07/2007 * * @param opcaoTotalizacao * @return * @throws ControladorException */ public Collection consultarResumoDevedoresDuvidososRelatorioPorEstadoPorLocalidade(int anoMesReferencia) throws ControladorException { Collection colecaoResumoDevedoresDuvidososRelatorioEstadoPorLocalidade = new ArrayList(); Collection retorno = new ArrayList(); try { colecaoResumoDevedoresDuvidososRelatorioEstadoPorLocalidade = repositorioFinanceiro.consultarResumoDevedoresDuvidososRelatorioPorEstadoPorLocalidade(anoMesReferencia); if (colecaoResumoDevedoresDuvidososRelatorioEstadoPorLocalidade != null && !colecaoResumoDevedoresDuvidososRelatorioEstadoPorLocalidade.isEmpty()){ Iterator iterator = colecaoResumoDevedoresDuvidososRelatorioEstadoPorLocalidade.iterator(); // Prepara cada linha do relat�rio String tipoLancamento = null; String itemLancamento = null; String itemContabel = null; String descGerenciaRegionalAnterior = null; String idGerenciaRegionalAnterior = null; String descLocalidadeAnterior = null; String idLocalidadeAnterior = null; String descLancamentoTipoSuperior = ""; String descUnidadeNegocioAnterior = null; String idUnidadeNegocioAnterior = null; Object[] elementAnterior = new Object[13]; BigDecimal[] arrayValores = new BigDecimal[5]; while (iterator.hasNext()) { Object[] element = null; String tempTipoLancamento = null; String tempItemLancamento = null; String tempItemContabel = null; element = (Object[]) iterator.next(); if (tipoLancamento == null) { tipoLancamento = (String) element[1]; itemLancamento = (String) element[2]; itemContabel = (String) element[3]; } tempTipoLancamento = (String) element[1]; tempItemLancamento = (String) element[2]; tempItemContabel = (String) element[3]; boolean condicaoIgual = true; // compara se o registro atual eh do // mesmo tipo de Recebimento, mesmo tipo de lan�amento // e mesmo item de lan�amento do registro anterior if (tipoLancamento.equals(tempTipoLancamento) && itemLancamento.equals(tempItemLancamento)) { // se o registro possuir item contabel // compara se eh do mesmo item contabel do registro anterior if (itemContabel == null && tempItemContabel == null || (itemContabel != null && tempItemContabel != null && itemContabel.equals(tempItemContabel))) { switch (((Integer) element[8]).intValue()) { case 1: arrayValores[0] = (BigDecimal) element[0]; break; case 2: arrayValores[1] = (BigDecimal) element[0]; break; case 3: arrayValores[2] = (BigDecimal) element[0]; break; case 4: arrayValores[4] = (BigDecimal) element[0]; break; } } else { condicaoIgual = false; } } else { condicaoIgual = false; } if (!condicaoIgual) { ResumoDevedoresDuvidososRelatorioHelper ResumoDevedoresDuvidososRelatorioHelper = new ResumoDevedoresDuvidososRelatorioHelper( (BigDecimal[]) arrayValores, (String) elementAnterior[1], (String) elementAnterior[2], (String) elementAnterior[3], (Short) elementAnterior[4], (Short) elementAnterior[5], (Integer) elementAnterior[6], (Integer) elementAnterior[7], false, descGerenciaRegionalAnterior, idGerenciaRegionalAnterior, descLocalidadeAnterior, idLocalidadeAnterior,descLancamentoTipoSuperior, descUnidadeNegocioAnterior,idUnidadeNegocioAnterior); retorno.add(ResumoDevedoresDuvidososRelatorioHelper); arrayValores = new BigDecimal[5]; switch (((Integer) element[8]).intValue()) { case 1: arrayValores[0] = (BigDecimal) element[0]; break; case 2: arrayValores[1] = (BigDecimal) element[0]; break; case 3: arrayValores[2] = (BigDecimal) element[0]; break; case 4: arrayValores[4] = (BigDecimal) element[0]; break; } } if (idUnidadeNegocioAnterior != null && !idUnidadeNegocioAnterior.equals("" + element[16])){ //quebra por Unidade Negocio retorno = consultarResumoDevedoresDuvidososRelatorioPorUnidadeNegocio( anoMesReferencia,new Integer (idUnidadeNegocioAnterior),retorno); } if (idGerenciaRegionalAnterior != null && !idGerenciaRegionalAnterior.equals("" + element[10])){ //quebra por gerencia retorno = consultarResumoDevedoresDuvidososRelatorioPorGerenciaRegional(anoMesReferencia,new Integer (idGerenciaRegionalAnterior),retorno); } elementAnterior[1] = element[1]; // descricaoTipoLancamento if (((String)element[1]).equalsIgnoreCase((String)element[2])){ elementAnterior[2] = null; // descricaoItemLancamento }else{ elementAnterior[2] = element[2]; // descricaoItemLancamento } elementAnterior[3] = element[3]; // descricaoItemContabil elementAnterior[4] = element[4]; // indicadorImpressao elementAnterior[5] = element[5]; // indicadorTotal elementAnterior[6] = element[6]; // lancamentoTipo elementAnterior[7] = element[7]; // lancamentoTipoSuperior descGerenciaRegionalAnterior = "" + element[9]; idGerenciaRegionalAnterior = "" + element[10]; descLocalidadeAnterior = "" + element[11]; idLocalidadeAnterior = "" + element[12]; descUnidadeNegocioAnterior = "" + element[15]; idUnidadeNegocioAnterior = "" + element[16]; tipoLancamento = tempTipoLancamento; itemLancamento = tempItemLancamento; itemContabel = tempItemContabel; } if (colecaoResumoDevedoresDuvidososRelatorioEstadoPorLocalidade != null && !colecaoResumoDevedoresDuvidososRelatorioEstadoPorLocalidade.isEmpty()) { // adiciona a ultima linha ResumoDevedoresDuvidososRelatorioHelper ResumoDevedoresDuvidososRelatorioHelper = new ResumoDevedoresDuvidososRelatorioHelper( (BigDecimal[]) arrayValores, (String) elementAnterior[1], (String) elementAnterior[2], (String) elementAnterior[3], (Short) elementAnterior[4], (Short) elementAnterior[5], (Integer) elementAnterior[6], (Integer) elementAnterior[7], false, descGerenciaRegionalAnterior, idGerenciaRegionalAnterior, descLocalidadeAnterior, idLocalidadeAnterior,descLancamentoTipoSuperior, descUnidadeNegocioAnterior,idUnidadeNegocioAnterior); retorno.add(ResumoDevedoresDuvidososRelatorioHelper); retorno = consultarResumoDevedoresDuvidososRelatorioPorUnidadeNegocio(anoMesReferencia,new Integer (idUnidadeNegocioAnterior),retorno); retorno = consultarResumoDevedoresDuvidososRelatorioPorGerenciaRegional(anoMesReferencia,new Integer (idGerenciaRegionalAnterior),retorno); retorno = consultarResumoDevedoresDuvidososRelatorioPorEstado(anoMesReferencia,retorno); } } } catch (ErroRepositorioException e) { sessionContext.setRollbackOnly(); throw new ControladorException("erro.sistema", e); } return retorno; } /** * Consulta ResumoDevedoresDuvidosos para a gera��o do relat�rio * [UC0487] Gerar Relat�rio de Resumo de Devedores Duvidosos * de acordo com a op��o de totaliza��o. * * @author Vivianne Sousa * @created 20/07/2007 * * @param opcaoTotalizacao * @return * @throws ControladorException */ public Collection consultarResumoDevedoresDuvidososRelatorioPorUnidadeNegocio(int anoMesReferencia, Integer idUnidadeNegocio , Collection colecaoResumoDevedoresDuvidososRelatorio ) throws ControladorException { Collection colecaoResumoDevedoresDuvidososRelatorioPorUnidadeNegocio = new ArrayList(); try { colecaoResumoDevedoresDuvidososRelatorioPorUnidadeNegocio = repositorioFinanceiro.consultarResumoDevedoresDuvidososRelatorioPorUnidadeNegocio(anoMesReferencia, idUnidadeNegocio); } catch (ErroRepositorioException e) { sessionContext.setRollbackOnly(); throw new ControladorException("erro.sistema", e); } Iterator iterator = colecaoResumoDevedoresDuvidososRelatorioPorUnidadeNegocio.iterator(); String tipoLancamento = null; String itemLancamento = null; String itemContabel = null; String descGerenciaRegionalAnterior = null; String idGerenciaRegionalAnterior = null; String descLocalidadeAnterior = null; String idLocalidadeAnterior = null; String descLancamentoTipoSuperior = ""; String descUnidadeNegocioAnterior = null; String idUnidadeNegocioAnterior = null; Object[] elementAnterior = new Object[13]; BigDecimal[] arrayValores = new BigDecimal[5]; while (iterator.hasNext()) { Object[] element = null; String tempTipoLancamento = null; String tempItemLancamento = null; String tempItemContabel = null; element = (Object[]) iterator.next(); if (tipoLancamento == null) { tipoLancamento = (String) element[1]; itemLancamento = (String) element[2]; itemContabel = (String) element[3]; } tempTipoLancamento = (String) element[1]; tempItemLancamento = (String) element[2]; tempItemContabel = (String) element[3]; boolean condicaoIgual = true; // compara se o registro atual eh do // mesmo tipo de Recebimento, mesmo tipo de lan�amento // e mesmo item de lan�amento do registro anterior if (tipoLancamento.equals(tempTipoLancamento) && itemLancamento.equals(tempItemLancamento)) { // se o registro possuir item contabel // compara se eh do mesmo item contabel do registro anterior if (itemContabel == null && tempItemContabel == null || (itemContabel != null && tempItemContabel != null && itemContabel.equals(tempItemContabel))) { switch (((Integer) element[8]).intValue()) { case 1: arrayValores[0] = (BigDecimal) element[0]; break; case 2: arrayValores[1] = (BigDecimal) element[0]; break; case 3: arrayValores[2] = (BigDecimal) element[0]; break; case 4: arrayValores[4] = (BigDecimal) element[0]; break; } } else { condicaoIgual = false; } } else { condicaoIgual = false; } if (!condicaoIgual) { ResumoDevedoresDuvidososRelatorioHelper ResumoDevedoresDuvidososRelatorioHelper = new ResumoDevedoresDuvidososRelatorioHelper( (BigDecimal[]) arrayValores, (String) elementAnterior[1], (String) elementAnterior[2], (String) elementAnterior[3], (Short) elementAnterior[4], (Short) elementAnterior[5], (Integer) elementAnterior[6], (Integer) elementAnterior[7], false, descGerenciaRegionalAnterior, idGerenciaRegionalAnterior, descLocalidadeAnterior, idLocalidadeAnterior,descLancamentoTipoSuperior, descUnidadeNegocioAnterior,idUnidadeNegocioAnterior); colecaoResumoDevedoresDuvidososRelatorio.add(ResumoDevedoresDuvidososRelatorioHelper); arrayValores = new BigDecimal[5]; switch (((Integer) element[8]).intValue()) { case 1: arrayValores[0] = (BigDecimal) element[0]; break; case 2: arrayValores[1] = (BigDecimal) element[0]; break; case 3: arrayValores[2] = (BigDecimal) element[0]; break; case 4: arrayValores[4] = (BigDecimal) element[0]; break; } } elementAnterior[1] = element[1]; // descricaoTipoLancamento if (((String)element[1]).equalsIgnoreCase((String)element[2])){ elementAnterior[2] = null; // descricaoItemLancamento }else{ elementAnterior[2] = element[2]; // descricaoItemLancamento } elementAnterior[3] = element[3]; // descricaoItemContabil elementAnterior[4] = element[4]; // indicadorImpressao elementAnterior[5] = element[5]; // indicadorTotal elementAnterior[6] = element[6]; // lancamentoTipo elementAnterior[7] = element[7]; // lancamentoTipoSuperior descGerenciaRegionalAnterior = "" + element[13]; idGerenciaRegionalAnterior = "" + element[14]; descUnidadeNegocioAnterior = "" + element[9]; idUnidadeNegocioAnterior = "" + element[10]; tipoLancamento = tempTipoLancamento; itemLancamento = tempItemLancamento; itemContabel = tempItemContabel; } if (colecaoResumoDevedoresDuvidososRelatorio != null && !colecaoResumoDevedoresDuvidososRelatorio.isEmpty()) { // adiciona a ultima linha ResumoDevedoresDuvidososRelatorioHelper ResumoDevedoresDuvidososRelatorioHelper = new ResumoDevedoresDuvidososRelatorioHelper( (BigDecimal[]) arrayValores, (String) elementAnterior[1], (String) elementAnterior[2], (String) elementAnterior[3], (Short) elementAnterior[4], (Short) elementAnterior[5], (Integer) elementAnterior[6], (Integer) elementAnterior[7], false, descGerenciaRegionalAnterior, idGerenciaRegionalAnterior, descLocalidadeAnterior, idLocalidadeAnterior,descLancamentoTipoSuperior, descUnidadeNegocioAnterior,idUnidadeNegocioAnterior); colecaoResumoDevedoresDuvidososRelatorio.add(ResumoDevedoresDuvidososRelatorioHelper); } return colecaoResumoDevedoresDuvidososRelatorio; } /** * Consulta ResumoDevedoresDuvidosos para a gera��o do relat�rio * [UC0487] Gerar Relat�rio de Resumo de Devedores Duvidosos * de acordo com a op��o de totaliza��o. * * @author Vivianne Sousa * @created 20/07/2007 * * @param opcaoTotalizacao * @return * @throws ControladorException */ public Collection consultarResumoDevedoresDuvidososRelatorioPorEstado(int anoMesReferencia, Collection colecaoResumoDevedoresDuvidososRelatorio ) throws ControladorException { Collection colecaoResumoDevedoresDuvidososRelatorioPorEstado = new ArrayList(); try { colecaoResumoDevedoresDuvidososRelatorioPorEstado = repositorioFinanceiro.consultarResumoDevedoresDuvidososRelatorioPorEstado(anoMesReferencia); } catch (ErroRepositorioException e) { sessionContext.setRollbackOnly(); throw new ControladorException("erro.sistema", e); } Iterator iterator = colecaoResumoDevedoresDuvidososRelatorioPorEstado.iterator(); String tipoLancamento = null; String itemLancamento = null; String itemContabel = null; String descGerenciaRegionalAnterior = null; String idGerenciaRegionalAnterior = null; String descLocalidadeAnterior = null; String idLocalidadeAnterior = null; String descLancamentoTipoSuperior = ""; String descUnidadeNegocioAnterior = null; String idUnidadeNegocioAnterior = null; Object[] elementAnterior = new Object[13]; BigDecimal[] arrayValores = new BigDecimal[5]; while (iterator.hasNext()) { Object[] element = null; String tempTipoLancamento = null; String tempItemLancamento = null; String tempItemContabel = null; element = (Object[]) iterator.next(); if (tipoLancamento == null) { tipoLancamento = (String) element[1]; itemLancamento = (String) element[2]; itemContabel = (String) element[3]; } tempTipoLancamento = (String) element[1]; tempItemLancamento = (String) element[2]; tempItemContabel = (String) element[3]; boolean condicaoIgual = true; // compara se o registro atual eh do // mesmo tipo de Recebimento, mesmo tipo de lan�amento // e mesmo item de lan�amento do registro anterior if (tipoLancamento.equals(tempTipoLancamento) && itemLancamento.equals(tempItemLancamento)) { // se o registro possuir item contabel // compara se eh do mesmo item contabel do registro anterior if (itemContabel == null && tempItemContabel == null || (itemContabel != null && tempItemContabel != null && itemContabel.equals(tempItemContabel))) { switch (((Integer) element[8]).intValue()) { case 1: arrayValores[0] = (BigDecimal) element[0]; break; case 2: arrayValores[1] = (BigDecimal) element[0]; break; case 3: arrayValores[2] = (BigDecimal) element[0]; break; case 4: arrayValores[4] = (BigDecimal) element[0]; break; } } else { condicaoIgual = false; } } else { condicaoIgual = false; } if (!condicaoIgual) { ResumoDevedoresDuvidososRelatorioHelper ResumoDevedoresDuvidososRelatorioHelper = new ResumoDevedoresDuvidososRelatorioHelper( (BigDecimal[]) arrayValores, (String) elementAnterior[1], (String) elementAnterior[2], (String) elementAnterior[3], (Short) elementAnterior[4], (Short) elementAnterior[5], (Integer) elementAnterior[6], (Integer) elementAnterior[7], false, descGerenciaRegionalAnterior, idGerenciaRegionalAnterior, descLocalidadeAnterior, idLocalidadeAnterior,descLancamentoTipoSuperior, descUnidadeNegocioAnterior,idUnidadeNegocioAnterior); colecaoResumoDevedoresDuvidososRelatorio.add(ResumoDevedoresDuvidososRelatorioHelper); arrayValores = new BigDecimal[5]; switch (((Integer) element[8]).intValue()) { case 1: arrayValores[0] = (BigDecimal) element[0]; break; case 2: arrayValores[1] = (BigDecimal) element[0]; break; case 3: arrayValores[2] = (BigDecimal) element[0]; break; case 4: arrayValores[4] = (BigDecimal) element[0]; break; } } elementAnterior[1] = element[1]; // descricaoTipoLancamento if (((String)element[1]).equalsIgnoreCase((String)element[2])){ elementAnterior[2] = null; // descricaoItemLancamento }else{ elementAnterior[2] = element[2]; // descricaoItemLancamento } elementAnterior[3] = element[3]; // descricaoItemContabil elementAnterior[4] = element[4]; // indicadorImpressao elementAnterior[5] = element[5]; // indicadorTotal elementAnterior[6] = element[6]; // lancamentoTipo elementAnterior[7] = element[7]; // lancamentoTipoSuperior tipoLancamento = tempTipoLancamento; itemLancamento = tempItemLancamento; itemContabel = tempItemContabel; } if (colecaoResumoDevedoresDuvidososRelatorioPorEstado != null && !colecaoResumoDevedoresDuvidososRelatorioPorEstado.isEmpty()) { // adiciona a ultima linha ResumoDevedoresDuvidososRelatorioHelper ResumoDevedoresDuvidososRelatorioHelper = new ResumoDevedoresDuvidososRelatorioHelper( (BigDecimal[]) arrayValores, (String) elementAnterior[1], (String) elementAnterior[2], (String) elementAnterior[3], (Short) elementAnterior[4], (Short) elementAnterior[5], (Integer) elementAnterior[6], (Integer) elementAnterior[7], false, descGerenciaRegionalAnterior, idGerenciaRegionalAnterior, descLocalidadeAnterior, idLocalidadeAnterior,descLancamentoTipoSuperior, descUnidadeNegocioAnterior,idUnidadeNegocioAnterior); colecaoResumoDevedoresDuvidososRelatorio.add(ResumoDevedoresDuvidososRelatorioHelper); } return colecaoResumoDevedoresDuvidososRelatorio; } /** * [UC0718] Gerar Relat�rio de Evolucao do Contas a Receber Contabil * * @author Francisco Junior, Ivan Sergio * @date 02/01/08, 20/07/2010 * @alteracao - 20/07/2010: Alterado a posicao e descricao do item IMPOSTOS DEDUZIDOS; * Os valores do item IMPOSTOS DEDUZIDOS sao obtidos a partir da tabela * RESUMO ARRECADACAO sequencias 1200, 1300, 1400 e 1500 (lcit_id = 19, 20, 21 e 22); * - 28/07/2010: Modificado o sinal de Impostos Deduzidos para subtrair; * Adicionado o item Impostos de Meses Anteriores Classificados no Mes; * * @param opcaoTotalizacao * @param mesAno * @param codigoGerencia * @param codigoLocalidade * @param unidadeNegocio * @return Colecao * @throws ControladorException */ public Collection<RelatorioEvolucaoContasAReceberContabilBean> consultarDadosEvolucaoContasAReceberContabilRelatorio(String opcaoTotalizacao, int mesAno, Integer codigoGerencia, Integer codigoLocalidade, Integer codigoMunicipio, Integer unidadeNegocio) throws ControladorException { // este mapeamento � composto de uma descri��o do grupo como chave (localidade, gerencia ou unidade de negocio) // e a cole��o de valores associado a esta chave HashMap<Integer, BigDecimal[][]> dadosAgrupados = new HashMap<Integer, BigDecimal[][]>(); HashMap<Integer, String> labelChaves = new HashMap<Integer, String>(); int anoMes = Util.formatarMesAnoParaAnoMes(mesAno); // As linhas de detalhes s�o fixas e nesta ordem String descricoes[] = { "S A L D O A N T E R I O R", // linha 1 "(+) FATURAMENTO AGUA", // linha 2 "(+) FATURAMENTO ESGOTO", // linha 3 "(+) FINANCIAMENTOS INCLUIDOS", // linha 4 "(+) JUROS DE PARCELAMENTO", // linha 5 "(+) GUIAS DE PAGAMENTO", // linha 6 "(+) INCLUSOES POR REFATURAMENTO", // linha 7 "(=) FATURAMENTO BRUTO DO MES", // linha 8 "(-) FINANCIAMENTOS CANCELADOS", // linha 9 "(-) PARCELAMENTOS CANCELADOS", // linha 10 "(-) CANCELAMENTOS POR REFATURAMENTO", // linha 11 "(-) CR�DITOS A REALIZAR POR COBRAN�A INDEVIDA", // linha 12 "(-) DESCONTOS INCONDICIONAIS INCLU�DOS", // linha 13 "(-) GUIAS DE DEVOLU��O DE VALORES COBRADOS INDEVIDAMENTE INCLU�DAS", // linha 14 "(=) FATURAMENTO L�QUIDO DO MES", // linha 12 -> 15 "(-) DESCONTOS CONCEDIDOS NO PARCELAMENTO", // linha 13 -> 16 "(-) OUTROS CR�DITOS INCLU�DOS", // linha 14 -> 17 // "(+) IMPOSTOS CANCELADOS POR REFATURAMENTO",// linha 16 -> 18 // "(-) IMPOSTOS INCLU�DOS POR REFATURAMENTO", // linha 17 -> 19 "(+) OUTROS CR�DITOS CANCELADOS POR REFATURAMENTO", // linha 18 -> 20 - > 18 "(-) OUTROS CR�DITOS CONCEDIDOS POR REFATURAMENTO", // linha 19 -> 21 - > 19 "(-) RECEBIMENTOS CLASSIFICADOS", // linha 20 -> 22 -> 20 "(-) IMPOSTOS DEDUZIDOS NA ARRECADACAO", // linha 15 -> 23 -> 21 "(-) RECEBIMENTOS DE MESES ANTERIORES CLASSIFICADOS NO MES", // linha 21 -> 24 ->22 "(-) IMPOSTOS DE MESES ANTERIORES CLASSIFICADOS NO MES", // linha -> 25 -> 23 "(-) CANCELAMENTOS POR PRESCRICAO", // linha 22 -> 26 -> 24 "S A L D O A T U A L" // linha 23 -> 27 ->25 }; Collection pesquisaSaldo = new ArrayList(); Collection pesquisaDadosFaturamento = new ArrayList(); Collection pesquisaDadosRecebimentos = new ArrayList(); int anoMesAnterior = Util.subtraiAteSeisMesesAnoMesReferencia(anoMes, 1); try { if (opcaoTotalizacao.equals("estado")) { // quando os parametros gerencia, unidade de negocio e localidade s�o passados nulos, // a pesquisa � feita sem restri��o, trazendo os dados referentes a todo o estado. pesquisaSaldo = repositorioFinanceiro.consultarSaldoEvolucaoContasAReceberContabilRelatorioPorEstado( anoMesAnterior, null, null, null, null); pesquisaDadosFaturamento = repositorioFinanceiro.consultarDadosEvolucaoContasAReceberContabilRelatorioPorEstado( anoMes, null, null, null, null); pesquisaDadosRecebimentos = repositorioFinanceiro.consultarRecebimentosContasAReceberContabilRelatorioPorEstado( anoMes, null, null, null, null); } else if (opcaoTotalizacao.equals("estadoGerencia")) { pesquisaSaldo = repositorioFinanceiro .consultarSaldoEvolucaoContasAReceberContabilRelatorioPorGerenciaRegional( anoMesAnterior); pesquisaDadosFaturamento = repositorioFinanceiro .consultarDadosEvolucaoContasAReceberContabilRelatorioPorGerenciaRegional( anoMes); pesquisaDadosRecebimentos = repositorioFinanceiro .consultarRecebimentosContasAReceberContabilRelatorioPorGerenciaRegional( anoMes); } else if (opcaoTotalizacao.equals("estadoUnidadeNegocio")) { pesquisaSaldo = repositorioFinanceiro .consultarSaldoEvolucaoContasAReceberContabilRelatorioPorUnidadeNegocio( anoMesAnterior, null); pesquisaDadosFaturamento = repositorioFinanceiro .consultarDadosEvolucaoContasAReceberContabilRelatorioPorUnidadeNegocio( anoMes, null); pesquisaDadosRecebimentos = repositorioFinanceiro .consultarRecebimentosContasAReceberContabilRelatorioPorUnidadeNegocio( anoMes, null); } else if (opcaoTotalizacao.equals("estadoLocalidade")) { pesquisaSaldo = repositorioFinanceiro .consultarSaldoEvolucaoContasAReceberContabilRelatorioPorLocalidade( anoMesAnterior, null, null); pesquisaDadosFaturamento = repositorioFinanceiro .consultarDadosEvolucaoContasAReceberContabilRelatorioPorLocalidade( anoMes, null, null); pesquisaDadosRecebimentos = repositorioFinanceiro .consultarRecebimentosContasAReceberContabilRelatorioPorLocalidade( anoMes, null, null); } else if (opcaoTotalizacao.equals("estadoMunicipio")) { pesquisaSaldo = repositorioFinanceiro. consultarSaldoEvolucaoContasAReceberContabilRelatorioPorMunicipio(anoMesAnterior); pesquisaDadosFaturamento = repositorioFinanceiro. consultarDadosEvolucaoContasAReceberContabilRelatorioPorMunicipio(anoMes); pesquisaDadosRecebimentos = repositorioFinanceiro. consultarRecebimentosContasAReceberContabilRelatorioPorMunicipio(anoMes); } else if (opcaoTotalizacao.equals("gerenciaRegional")) { pesquisaSaldo = repositorioFinanceiro.consultarSaldoEvolucaoContasAReceberContabilRelatorioPorEstado( anoMesAnterior, codigoGerencia, null, null, null); pesquisaDadosFaturamento = repositorioFinanceiro.consultarDadosEvolucaoContasAReceberContabilRelatorioPorEstado( anoMes, codigoGerencia, null, null, null); pesquisaDadosRecebimentos = repositorioFinanceiro.consultarRecebimentosContasAReceberContabilRelatorioPorEstado( anoMes, codigoGerencia, null, null, null); } else if (opcaoTotalizacao.equals("gerenciaRegionalUnidadeNegocio")) { pesquisaSaldo = repositorioFinanceiro.consultarSaldoEvolucaoContasAReceberContabilRelatorioPorUnidadeNegocio( anoMesAnterior, codigoGerencia); pesquisaDadosFaturamento = repositorioFinanceiro.consultarDadosEvolucaoContasAReceberContabilRelatorioPorUnidadeNegocio( anoMes, codigoGerencia); pesquisaDadosRecebimentos = repositorioFinanceiro.consultarRecebimentosContasAReceberContabilRelatorioPorUnidadeNegocio( anoMes, codigoGerencia); } else if (opcaoTotalizacao.equals("gerenciaRegionalLocalidade")) { pesquisaSaldo = repositorioFinanceiro .consultarSaldoEvolucaoContasAReceberContabilRelatorioPorLocalidade( anoMesAnterior, codigoGerencia, null); pesquisaDadosFaturamento = repositorioFinanceiro .consultarDadosEvolucaoContasAReceberContabilRelatorioPorLocalidade( anoMes, codigoGerencia, null); pesquisaDadosRecebimentos = repositorioFinanceiro .consultarRecebimentosContasAReceberContabilRelatorioPorLocalidade( anoMes, codigoGerencia, null); } else if (opcaoTotalizacao.equals("unidadeNegocioLocalidade")) { pesquisaSaldo = repositorioFinanceiro .consultarSaldoEvolucaoContasAReceberContabilRelatorioPorLocalidade( anoMesAnterior, null, unidadeNegocio); pesquisaDadosFaturamento = repositorioFinanceiro .consultarDadosEvolucaoContasAReceberContabilRelatorioPorLocalidade( anoMes, null, unidadeNegocio); pesquisaDadosRecebimentos = repositorioFinanceiro .consultarRecebimentosContasAReceberContabilRelatorioPorLocalidade( anoMes, null, unidadeNegocio); } else if (opcaoTotalizacao.equals("unidadeNegocio")) { pesquisaSaldo = repositorioFinanceiro.consultarSaldoEvolucaoContasAReceberContabilRelatorioPorEstado( anoMesAnterior, null, unidadeNegocio, null, null); pesquisaDadosFaturamento = repositorioFinanceiro.consultarDadosEvolucaoContasAReceberContabilRelatorioPorEstado( anoMes, null, unidadeNegocio, null, null); pesquisaDadosRecebimentos = repositorioFinanceiro.consultarRecebimentosContasAReceberContabilRelatorioPorEstado( anoMes, null, unidadeNegocio, null, null); } else if (opcaoTotalizacao.equals("localidade")) { pesquisaSaldo = repositorioFinanceiro.consultarSaldoEvolucaoContasAReceberContabilRelatorioPorEstado( anoMesAnterior, null, null, codigoLocalidade, null); pesquisaDadosFaturamento = repositorioFinanceiro.consultarDadosEvolucaoContasAReceberContabilRelatorioPorEstado( anoMes, null, null, codigoLocalidade, null); pesquisaDadosRecebimentos = repositorioFinanceiro.consultarRecebimentosContasAReceberContabilRelatorioPorEstado( anoMes, null, null, codigoLocalidade, null); } else if (opcaoTotalizacao.equals("municipio")) { pesquisaSaldo = repositorioFinanceiro.consultarSaldoEvolucaoContasAReceberContabilRelatorioPorEstado( anoMesAnterior, null, null, null, codigoMunicipio); pesquisaDadosFaturamento = repositorioFinanceiro.consultarDadosEvolucaoContasAReceberContabilRelatorioPorEstado( anoMes, null, null, null, codigoMunicipio); pesquisaDadosRecebimentos = repositorioFinanceiro.consultarRecebimentosContasAReceberContabilRelatorioPorEstado( anoMes, null, null, null, codigoMunicipio); } // Tratando a consulta dos saldos em conta a receber contabil Iterator iter = pesquisaSaldo.iterator(); Integer idDescAnterior = -1; while (iter.hasNext()){ Object[] element = (Object[]) iter.next(); String desc = (String) element[0]; Integer idDesc = (Integer) element[1]; labelChaves.put(idDesc, desc); Integer codigo = (Integer) element[3]; // recupera o conjunto de valores atual para a chave 'desc' BigDecimal[][] valoresItem = dadosAgrupados.get(idDesc); // quando a descri��o atual for diferente da anterior � pq � hora de criar um novo grupo de valoresItem if (idDesc.intValue() != idDescAnterior.intValue()){ valoresItem = new BigDecimal[descricoes.length][2]; for (int i = 0; i < valoresItem.length; i++) { valoresItem[i][0] = new BigDecimal(0); valoresItem[i][1] = new BigDecimal(0); } // SALDO ANTERIOR valoresItem[0] = new BigDecimal[2]; valoresItem[0][0] = new BigDecimal(0); // PARTICULAR valoresItem[0][1] = new BigDecimal(0); // PUBLICO dadosAgrupados.put(idDesc, valoresItem); } // no select retornou o codigo do tipo de categoria (1 ou 2) // entao em cada linha de resultado devemos verificar se foi do particular ou privado if (codigo.intValue() == CategoriaTipo.PARTICULAR){ valoresItem[0][0] = (BigDecimal) element[4]; // PARTICULAR } else { valoresItem[0][1] = (BigDecimal) element[4]; // PUBLICO } idDescAnterior = idDesc; } // conjunto de valores: cada linha � um item diretamente associado ao array descricoes // e na primeira coluna o valor de particular, na segunda, o valor de privado // na defini��o do bean do relat�rio, o valor total � definido como a soma destes dois em cada linha BigDecimal[][] valoresItem = null; idDescAnterior = -1; //Tratando dados de faturamento iter = pesquisaDadosFaturamento.iterator(); while (iter.hasNext()){ Object[] element = (Object[]) iter.next(); String desc = (String) element[0]; Integer idDesc = (Integer) element[1]; labelChaves.put(idDesc, desc); Short sequenciaTipoLancamento = (Short) element[2]; Short sequenciaItemTipoLancamento = (Short) element[3]; Integer tipoCategoria = (Integer) element[4]; BigDecimal valorItem = (BigDecimal) element[5]; if (idDescAnterior.intValue() != idDesc.intValue()){ // continuando o array de valoresItem iniciado com o item SALDO ANTERIOR valoresItem = dadosAgrupados.get(idDesc); if (valoresItem == null){ valoresItem = new BigDecimal[descricoes.length][2]; for (int i = 0; i < valoresItem.length; i++) { valoresItem[i][0] = new BigDecimal(0); valoresItem[i][1] = new BigDecimal(0); } dadosAgrupados.put(idDesc, valoresItem); } } idDescAnterior = idDesc; // o indice diz respeito a posicao deste item na exibi��o, que � tamb�m // a posi��o no array valoresItem short indiceTipoLancamento = -1; switch (sequenciaTipoLancamento.shortValue()) { case ResumoFaturamento.FATURAMENTO_AGUA_SEQUENCIA_TIPO_LANCAMENTO: indiceTipoLancamento = 1; break; case ResumoFaturamento.FATURAMENTO_ESGOTO_SEQUENCIA_TIPO_LANCAMENTO: indiceTipoLancamento = 2; break; case ResumoFaturamento.FINANCIAMENTOS_CANCELADOS_SEQUENCIA_TIPO_LANCAMENTO_1: case ResumoFaturamento.FINANCIAMENTOS_CANCELADOS_SEQUENCIA_TIPO_LANCAMENTO_2: indiceTipoLancamento = 8; break; case ResumoFaturamento.FINANCIAMENTOS_INCLUIDOS_SEQUENCIA_TIPO_LANCAMENTO_1: case ResumoFaturamento.FINANCIAMENTOS_INCLUIDOS_SEQUENCIA_TIPO_LANCAMENTO_2: indiceTipoLancamento = 3; break; case ResumoFaturamento.GUIAS_PAGAMENTO_SEQUENCIA_TIPO_LANCAMENTO: indiceTipoLancamento = 5; break; // case ResumoFaturamento.IMPOSTOS_DEDUZIDOS_SEQUENCIA_TIPO_LANCAMENTO: // indiceTipoLancamento = 22; // break; case ResumoFaturamento.JUROS_PARCELAMENTO_SEQUENCIA_TIPO_LANCAMENTO_1: case ResumoFaturamento.JUROS_PARCELAMENTO_SEQUENCIA_TIPO_LANCAMENTO_2: indiceTipoLancamento = 4; break; case ResumoFaturamento.PARCELAMENTOS_CANCELADOS_SEQUENCIA_TIPO_LANCAMENTO_1: case ResumoFaturamento.PARCELAMENTOS_CANCELADOS_SEQUENCIA_TIPO_LANCAMENTO_2: indiceTipoLancamento = 9; break; case ResumoFaturamento.CREDITOS_A_REALIZAR_POR_COBRANCA_INDEVIDA_SEQUENCIA_TIPO_LANCAMENTO: indiceTipoLancamento = 11; break; case ResumoFaturamento.DESCONTOS_INCONDICIONAIS_INCLUIDOS_SEQUENCIA_TIPO_LANCAMENTO: indiceTipoLancamento = 12; break; case ResumoFaturamento.GUIAS_DE_DEVOLUCOES_DE_VALORES_COBRADOS_SEQUENCIA_TIPO_LANCAMENTO: indiceTipoLancamento = 13; break; // case ResumoFaturamento.VALORES_CREDITADOS_SEQUENCIA_TIPO_LANCAMENTO_1: // case ResumoFaturamento.VALORES_CREDITADOS_SEQUENCIA_TIPO_LANCAMENTO_2: case ResumoFaturamento.VALORES_CREDITADOS_SEQUENCIA_TIPO_LANCAMENTO_3: indiceTipoLancamento = 16; break; case ResumoFaturamento.DESCONTOS_CONCEDIDOS_PARCELAMENTO_SEQUENCIA_TIPO_LANCAMENTO_1: case ResumoFaturamento.DESCONTOS_CONCEDIDOS_PARCELAMENTO_SEQUENCIA_TIPO_LANCAMENTO_2: if (sequenciaItemTipoLancamento.shortValue() == ResumoFaturamento. DESCONTOS_CONCEDIDOS_PARCELAMENTO_SEQUENCIA_ITEM_TIPO_LANCAMENTO){ indiceTipoLancamento = 15; } else { continue; } break; // case ResumoFaturamento.IMPOSTOS_CANCELADOS_POR_REFATURAMENTO_SEQUENCIA_TIPO_LANCAMENTO: // indiceTipoLancamento = 17; // break; // case ResumoFaturamento.IMPOSTOS_INCLUIDOS_POR_REFATURAMENTO_SEQUENCIA_TIPO_LANCAMENTO: // indiceTipoLancamento = 18; // break; case ResumoFaturamento.OUTROS_CREDITOS_CANCELADOS_POR_REFATURAMENTO_SEQUENCIA_TIPO_LANCAMENTO: indiceTipoLancamento = 17; break; case ResumoFaturamento.OUTROS_CREDITOS_CONCEDIDOS_POR_REFATURAMENTO_SEQUENCIA_TIPO_LANCAMENTO: indiceTipoLancamento = 18; break; case ResumoFaturamento.CANCELAMENTOS_POR_PRESCRICAO_SEQUENCIA_TIPO_LANCAMENTO: indiceTipoLancamento = 23; break; default: if (sequenciaTipoLancamento.shortValue() >= ResumoFaturamento.INCLUSOES_POR_REFATURAMENTO_SEQUENCIA_TIPO_LANCAMENTO_1 && sequenciaTipoLancamento.shortValue() <= ResumoFaturamento.INCLUSOES_POR_REFATURAMENTO_SEQUENCIA_TIPO_LANCAMENTO_2){ indiceTipoLancamento = 6; } else if (sequenciaTipoLancamento.shortValue() >= ResumoFaturamento.CANCELAMENTOS_POR_REFATURAMENTO_SEQUENCIA_TIPO_LANCAMENTO_1 && sequenciaTipoLancamento.shortValue() <= ResumoFaturamento.CANCELAMENTOS_POR_REFATURAMENTO_SEQUENCIA_TIPO_LANCAMENTO_2){ indiceTipoLancamento = 10; } else { // existem valores de sequenciaTipoLancamento que nao serao usados nesse relatorio continue; } } if (tipoCategoria.intValue() == CategoriaTipo.PARTICULAR){ if (valoresItem[indiceTipoLancamento][0] == null){ // PARTICULAR valoresItem[indiceTipoLancamento][0] = valorItem; } else { valoresItem[indiceTipoLancamento][0] = valoresItem[indiceTipoLancamento][0].add(valorItem); } } else { if (valoresItem[indiceTipoLancamento][1] == null){ // PUBLICO valoresItem[indiceTipoLancamento][1] = valorItem; } else { valoresItem[indiceTipoLancamento][1] = valoresItem[indiceTipoLancamento][1].add(valorItem); } } } idDescAnterior = -1; // Pesquisando dados de recebimentos referentes ao preenchimento das linhas 15 e 16 iter = pesquisaDadosRecebimentos.iterator(); while (iter.hasNext()){ Object[] element = (Object[]) iter.next(); String desc = (String) element[0]; Integer idDesc = (Integer) element[1]; labelChaves.put(idDesc, desc); Short sequenciaTipoLancamento = (Short) element[2]; Integer tipoCategoria = (Integer) element[3]; BigDecimal valorItem = (BigDecimal) element[4]; if (idDescAnterior.intValue() != idDesc.intValue()){ // continuando o array de valoresItem iniciado com o item SALDO ANTERIOR valoresItem = dadosAgrupados.get(idDesc); if (valoresItem == null){ valoresItem = new BigDecimal[descricoes.length][2]; for (int i = 0; i < valoresItem.length; i++) { valoresItem[i][0] = new BigDecimal(0); valoresItem[i][1] = new BigDecimal(0); } dadosAgrupados.put(idDesc, valoresItem); } } idDescAnterior = idDesc; short indiceTipoLancamento = -1; short indicadorOperacao = 1; // 1=> SOMAR .... 2=>SUBTRAIR switch (sequenciaTipoLancamento.shortValue()) { case ResumoArrecadacao.RECEBIMENTOS_CLASSIFICADOS_SEQUENCIA_TIPO_LANCAMENTO_1: indiceTipoLancamento = 19; indicadorOperacao = 1; break; case ResumoArrecadacao.RECEBIMENTOS_CLASSIFICADOS_SEQUENCIA_TIPO_LANCAMENTO_2: indiceTipoLancamento = 19; indicadorOperacao = 2; break; case ResumoArrecadacao.RECEBIMENTOS_MESES_SEQUENCIA_TIPO_LANCAMENTO_1: indiceTipoLancamento = 21; indicadorOperacao = 1; break; case ResumoArrecadacao.RECEBIMENTOS_MESES_SEQUENCIA_TIPO_LANCAMENTO_2: indiceTipoLancamento = 21; indicadorOperacao = 2; break; case ResumoArrecadacao.IMPOSTOS_DEDUZIDOS_NA_ARRECADACAO_SEQUENCIA_TIPO_LANCAMENTO_1: case ResumoArrecadacao.IMPOSTOS_DEDUZIDOS_NA_ARRECADACAO_SEQUENCIA_TIPO_LANCAMENTO_2: case ResumoArrecadacao.IMPOSTOS_DEDUZIDOS_NA_ARRECADACAO_SEQUENCIA_TIPO_LANCAMENTO_3: case ResumoArrecadacao.IMPOSTOS_DEDUZIDOS_NA_ARRECADACAO_SEQUENCIA_TIPO_LANCAMENTO_4: indiceTipoLancamento = 20; indicadorOperacao = 1; break; case ResumoArrecadacao.IMPOSTOS_MESES_SEQUENCIA_TIPO_LANCAMENTO_1: case ResumoArrecadacao.IMPOSTOS_MESES_SEQUENCIA_TIPO_LANCAMENTO_2: case ResumoArrecadacao.IMPOSTOS_MESES_SEQUENCIA_TIPO_LANCAMENTO_3: case ResumoArrecadacao.IMPOSTOS_MESES_SEQUENCIA_TIPO_LANCAMENTO_4: indiceTipoLancamento = 22; indicadorOperacao = 1; break; default: continue; } if (tipoCategoria.intValue() == CategoriaTipo.PARTICULAR){ if (valoresItem[indiceTipoLancamento][0] == null){ // PARTICULAR valoresItem[indiceTipoLancamento][0] = valorItem; } else { if (indicadorOperacao == 1){ valoresItem[indiceTipoLancamento][0] = valoresItem[indiceTipoLancamento][0].add(valorItem); } else { valoresItem[indiceTipoLancamento][0] = valoresItem[indiceTipoLancamento][0].subtract(valorItem); } } } else { if (valoresItem[indiceTipoLancamento][1] == null){ // PUBLICO valoresItem[indiceTipoLancamento][1] = valorItem; } else { if (indicadorOperacao == 1){ valoresItem[indiceTipoLancamento][1] = valoresItem[indiceTipoLancamento][1].add(valorItem); } else { valoresItem[indiceTipoLancamento][1] = valoresItem[indiceTipoLancamento][1].subtract(valorItem); } } } } } catch (ErroRepositorioException e) { sessionContext.setRollbackOnly(); throw new ControladorException("erro.sistema", e); } Collection<RelatorioEvolucaoContasAReceberContabilBean> dados = new ArrayList<RelatorioEvolucaoContasAReceberContabilBean>(); // Colocando em ordem alfabetica as descricoes dos grupos ArrayList chavesOrdenadas = new ArrayList(dadosAgrupados.keySet()); Collections.sort(chavesOrdenadas); for (Iterator iter = chavesOrdenadas.iterator(); iter.hasNext();) { Integer chave = (Integer) iter.next(); BigDecimal[][] valoresItem = dadosAgrupados.get(chave); // Calculando a linha 8 Faturamento Bruto do mes : SOMA(valor2:valor7) for (int ind = 1; ind < 7; ind++) { valoresItem[7][0] = valoresItem[7][0].add(valoresItem[ind][0]); // PARTICULAR valoresItem[7][1] = valoresItem[7][1].add(valoresItem[ind][1]); // PUBLICO } // Calculando a linha 15 Faturamento Liquido do mes : Faturamento Bruto (valor8) - SOMA(valor9:valor14) valoresItem[14][0] = valoresItem[7][0]; valoresItem[14][1] = valoresItem[7][1]; for (int ind = 8; ind < 14; ind++) { valoresItem[14][0] = valoresItem[14][0].subtract(valoresItem[ind][0]); // PARTICULAR valoresItem[14][1] = valoresItem[14][1].subtract(valoresItem[ind][1]); // PUBLICO } // calculando a linha 26 - Saldo Atual: V1 + V12 + V16 + V17 + V21 - (V13, V14, V15. V22, V18, V19, V20) // PARTICULAR valoresItem[24][0] = valoresItem[0][0].add(valoresItem[14][0]) .add(valoresItem[17][0]).subtract(valoresItem[15][0]).subtract(valoresItem[16][0]) .subtract(valoresItem[20][0]).subtract(valoresItem[18][0]) .subtract(valoresItem[19][0]).subtract(valoresItem[21][0]).subtract(valoresItem[22][0]) .subtract(valoresItem[23][0]); // PUBLICO valoresItem[24][1] = valoresItem[0][1].add(valoresItem[14][1]) .add(valoresItem[17][1]).subtract(valoresItem[15][1]).subtract(valoresItem[16][1]) .subtract(valoresItem[20][1]).subtract(valoresItem[18][1]) .subtract(valoresItem[19][1]).subtract(valoresItem[21][1]).subtract(valoresItem[22][1]) .subtract(valoresItem[23][1]); for (int i=0; i < descricoes.length; i++) { RelatorioEvolucaoContasAReceberContabilBean bean = new RelatorioEvolucaoContasAReceberContabilBean((BigDecimal[]) valoresItem[i], descricoes[i]); if (opcaoTotalizacao.equals("estado")){ bean.setTipoGrupo("TOTAL DO ESTADO"); } else if (opcaoTotalizacao.equals("estadoGerencia")) { bean.setTipoGrupo("Ger�ncia Regional"); } else if (opcaoTotalizacao.equals("estadoLocalidade") || opcaoTotalizacao.equals("gerenciaRegionalLocalidade") || opcaoTotalizacao.equals("unidadeNegocioLocalidade")) { bean.setTipoGrupo("Localidade"); } else if (opcaoTotalizacao.equals("estadoUnidadeNegocio") || opcaoTotalizacao.equals("gerenciaRegionalUnidadeNegocio")) { bean.setTipoGrupo("Unidade de Neg�cio"); } else if (opcaoTotalizacao.equalsIgnoreCase("estadoMunicipio")){ bean.setTipoGrupo("Munic�pio"); } bean.setDescricaoGrupo(labelChaves.get(chave)); dados.add(bean); } } return dados; } public Collection consultarDadosRelatorioSaldoContasAReceberContabil(String opcaoTotalizacao, int mesAno, Integer gerencia, Integer unidadeNegocio, Integer localidade, Integer municipio) throws ControladorException { Collection pesquisaDados = new ArrayList(); HashMap<String, RelatorioSaldoContasAReceberContabilBean> dadosAgrupados = new HashMap<String, RelatorioSaldoContasAReceberContabilBean>(); int anoMes = Util.formatarMesAnoParaAnoMes(mesAno); try { pesquisaDados = repositorioFinanceiro.consultarDadosRelatorioSaldoContasAReceberContabil(opcaoTotalizacao, anoMes, gerencia, unidadeNegocio, localidade, municipio); String tipoGrupo = ""; if(opcaoTotalizacao.equalsIgnoreCase("estadoGerencia")){ tipoGrupo = "Ger�ncia"; } else if(opcaoTotalizacao.equalsIgnoreCase("estadoLocalidade") || opcaoTotalizacao.equalsIgnoreCase("gerenciaRegionalLocalidade") || opcaoTotalizacao.equalsIgnoreCase("unidadeNegocioLocalidade")){ tipoGrupo = "Localidade"; } else if(opcaoTotalizacao.equalsIgnoreCase("estadoUnidadeNegocio") || opcaoTotalizacao.equalsIgnoreCase("gerenciaRegionalUnidadeNegocio")){ tipoGrupo = "Unidade de Neg�cio"; } else if(opcaoTotalizacao.equalsIgnoreCase("municipio") || opcaoTotalizacao.equalsIgnoreCase("estadoMunicipio")){ tipoGrupo = "Munic�pio"; } // nomeItemGrupo, idItemGrupo, descricaoLancamentoTipo, descricaoLancamentoItem, numeroConta, soma(valor) Iterator iter = pesquisaDados.iterator(); BigDecimal totalizadorSomaSemPerdaParticular = new BigDecimal("0"); BigDecimal totalizadorSomaSemPerdaPublico = new BigDecimal("0"); BigDecimal totalizadorSomaSemPerda = new BigDecimal("0"); BigDecimal totalizadorSomaSemPerdaResidencial = new BigDecimal("0"); BigDecimal totalizadorSomaSemPerdaComercial = new BigDecimal("0"); BigDecimal totalizadorSomaSemPerdaIndustrial = new BigDecimal("0"); //************************************************************ //CRC??? //Autor: Ivan Sergio //Solicitante: Eduardo //19/07/2010 //Removido o item IMPOSTOS DEDUZIDOS e adicionando no final //do relatorio. //************************************************************ String descImpostosDeduzidos = ""; BigDecimal valorImpostosDeduzidosParticular = new BigDecimal(0); BigDecimal valorImpostosDeduzidosPublico = new BigDecimal(0); BigDecimal valorImpostosDeduzidosTotal = new BigDecimal(0); //************************************************************ //CRC3294 //Autor: Ivan Sergio //Data: 30/11/2010 //************************************************************ int indicadorFinCobCurtoPrazo = 0; int indicadorFinCobLongoPrazo = 0; int indicadorConta = 0; int indicadorGuia = 0; RelatorioSaldoContasAReceberContabilBean beanFinCobCurtoPrazo = null; RelatorioSaldoContasAReceberContabilBean beanFinCobLongoPrazo = null; RelatorioSaldoContasAReceberContabilBean beanConta = null; RelatorioSaldoContasAReceberContabilBean beanGuia = null; String chaveFinCobCurtoPrazo = ""; String chaveFinCobLongoPrazo = ""; String chaveConta = ""; String chaveGuia = ""; Boolean primeiraVez = true; Integer idItemGrupoAnterior = null; while(iter.hasNext()){ Object[] objetos = (Object[]) iter.next(); Integer idGerenciaRegional = (Integer) objetos[0]; String nomeGerenciaRegional = (String) objetos[1]; Integer idUnidadeNegocio = (Integer) objetos[2]; String nomeUnidadeNegocio = (String) objetos[3]; String codigoCentroCusto = (String) objetos[4]; String nomeItemGrupo = (String) objetos[5]; Integer idItemGrupo = (Integer) objetos[6]; Integer numSequenciaTipoLancamento = (Integer) objetos[7]; Integer numSequenciaLancamentoItem = (Integer) objetos[8]; String descricaoLancamentoTipo = (String) objetos[9]; String descricaoLancamentoItem = (String) objetos[10]; Integer numeroConta = (Integer) objetos[11]; Integer tipoCategoria = (Integer) objetos[12]; BigDecimal somaValor = (BigDecimal) objetos[13]; String descricaoItemContabil = ( String ) objetos[14]; Integer idLancamentoTipo = (Integer) objetos[15]; Integer idCategoria = (Integer) objetos[16]; if (primeiraVez){ idItemGrupoAnterior = idItemGrupo; primeiraVez = false; } if (!idItemGrupoAnterior.equals(idItemGrupo)){ idItemGrupoAnterior = idItemGrupo; totalizadorSomaSemPerdaParticular = new BigDecimal("0"); totalizadorSomaSemPerdaPublico = new BigDecimal("0"); totalizadorSomaSemPerda = new BigDecimal("0"); totalizadorSomaSemPerdaResidencial = new BigDecimal("0"); totalizadorSomaSemPerdaComercial = new BigDecimal("0"); totalizadorSomaSemPerdaIndustrial = new BigDecimal("0"); } //***************************************************************************** // Verifica se adiciona o subtotal para Financiamento Cobrar CURTO Prazo //***************************************************************************** if (numSequenciaTipoLancamento.equals(400) && numSequenciaLancamentoItem.equals(10) && indicadorFinCobCurtoPrazo == 0) { indicadorFinCobCurtoPrazo = 1; beanFinCobCurtoPrazo = new RelatorioSaldoContasAReceberContabilBean( idGerenciaRegional, nomeGerenciaRegional, idUnidadeNegocio, nomeUnidadeNegocio, codigoCentroCusto, tipoGrupo, idItemGrupo, nomeItemGrupo, descricaoLancamentoTipo, descricaoLancamentoItem, " SUBTOTAL", totalizadorSomaSemPerdaParticular, totalizadorSomaSemPerdaPublico, totalizadorSomaSemPerda); beanFinCobCurtoPrazo.setSequenciaLancamentoTipo(400); beanFinCobCurtoPrazo.setSequenciaLancamentoItem(11); // Serve apenas para ordenacao if (tipoCategoria.intValue() == CategoriaTipo.PARTICULAR.intValue()) { beanFinCobCurtoPrazo.setValorItemParticular(somaValor); // PARTICULAR if (idCategoria.equals(Categoria.RESIDENCIAL)) { beanFinCobCurtoPrazo.setValorItemResidencial(somaValor); }else if (idCategoria.equals(Categoria.COMERCIAL)) { beanFinCobCurtoPrazo.setValorItemComercial(somaValor); }else if (idCategoria.equals(Categoria.INDUSTRIAL)) { beanFinCobCurtoPrazo.setValorItemIndustrial(somaValor); } }else { beanFinCobCurtoPrazo.setValorItemPublico(somaValor); // PUBLICO } } else if (numSequenciaTipoLancamento.equals(400) && numSequenciaLancamentoItem.equals(10) && indicadorFinCobCurtoPrazo == 1) { chaveFinCobCurtoPrazo = "z" + nomeItemGrupo + descricaoLancamentoTipo + descricaoLancamentoItem + descricaoItemContabil; if (tipoCategoria.intValue() == CategoriaTipo.PARTICULAR.intValue()) { beanFinCobCurtoPrazo.setValorItemParticular(beanFinCobCurtoPrazo.getValorItemParticular().add(somaValor)); // PARTICULAR if (idCategoria.equals(Categoria.RESIDENCIAL)) { beanFinCobCurtoPrazo.setValorItemResidencial( beanFinCobCurtoPrazo.getValorItemResidencial().add(somaValor)); }else if (idCategoria.equals(Categoria.COMERCIAL)) { beanFinCobCurtoPrazo.setValorItemComercial( beanFinCobCurtoPrazo.getValorItemComercial().add(somaValor)); }else if (idCategoria.equals(Categoria.INDUSTRIAL)) { beanFinCobCurtoPrazo.setValorItemIndustrial( beanFinCobCurtoPrazo.getValorItemIndustrial().add(somaValor)); } }else { beanFinCobCurtoPrazo.setValorItemPublico( beanFinCobCurtoPrazo.getValorItemPublico().add(somaValor)); // PUBLICO } }else if (indicadorFinCobCurtoPrazo == 1) { dadosAgrupados.put(chaveFinCobCurtoPrazo, beanFinCobCurtoPrazo); indicadorFinCobCurtoPrazo = 2; } //***************************************************************************** //***************************************************************************** // Verifica se adiciona o subtotal para Financiamento Cobrar LONGO Prazo //***************************************************************************** if (numSequenciaTipoLancamento.equals(400) && numSequenciaLancamentoItem.equals(20) && indicadorFinCobLongoPrazo == 0) { indicadorFinCobLongoPrazo = 1; beanFinCobLongoPrazo = new RelatorioSaldoContasAReceberContabilBean( idGerenciaRegional, nomeGerenciaRegional, idUnidadeNegocio, nomeUnidadeNegocio, codigoCentroCusto, tipoGrupo, idItemGrupo, nomeItemGrupo, descricaoLancamentoTipo, descricaoLancamentoItem, " SUBTOTAL", totalizadorSomaSemPerdaParticular, totalizadorSomaSemPerdaPublico, totalizadorSomaSemPerda); beanFinCobLongoPrazo.setSequenciaLancamentoTipo(400); beanFinCobLongoPrazo.setSequenciaLancamentoItem(21); // Serve apenas para ordenacao if (tipoCategoria.intValue() == CategoriaTipo.PARTICULAR.intValue()){ beanFinCobLongoPrazo.setValorItemParticular(somaValor); // PARTICULAR if (idCategoria.equals(Categoria.RESIDENCIAL)) { beanFinCobLongoPrazo.setValorItemResidencial(somaValor); }else if (idCategoria.equals(Categoria.COMERCIAL)) { beanFinCobLongoPrazo.setValorItemComercial(somaValor); }else if (idCategoria.equals(Categoria.INDUSTRIAL)) { beanFinCobLongoPrazo.setValorItemIndustrial(somaValor); } }else { beanFinCobLongoPrazo.setValorItemPublico(somaValor); // PUBLICO } }else if (numSequenciaTipoLancamento.equals(400) && numSequenciaLancamentoItem.equals(20) && indicadorFinCobLongoPrazo == 1) { chaveFinCobLongoPrazo = "zz" + nomeItemGrupo + descricaoLancamentoTipo + descricaoLancamentoItem + descricaoItemContabil; if (tipoCategoria.intValue() == CategoriaTipo.PARTICULAR.intValue()){ beanFinCobLongoPrazo.setValorItemParticular(beanFinCobLongoPrazo.getValorItemParticular().add(somaValor)); // PARTICULAR if (idCategoria.equals(Categoria.RESIDENCIAL)) { beanFinCobLongoPrazo.setValorItemResidencial( beanFinCobLongoPrazo.getValorItemResidencial().add(somaValor)); }else if (idCategoria.equals(Categoria.COMERCIAL)) { beanFinCobLongoPrazo.setValorItemComercial( beanFinCobLongoPrazo.getValorItemComercial().add(somaValor)); }else if (idCategoria.equals(Categoria.INDUSTRIAL)) { beanFinCobLongoPrazo.setValorItemIndustrial( beanFinCobLongoPrazo.getValorItemIndustrial().add(somaValor)); } }else { beanFinCobLongoPrazo.setValorItemPublico( beanFinCobLongoPrazo.getValorItemPublico().add(somaValor)); // PUBLICO } }else if (indicadorFinCobLongoPrazo == 1) { dadosAgrupados.put(chaveFinCobLongoPrazo, beanFinCobLongoPrazo); indicadorFinCobLongoPrazo = 2; } //***************************************************************************** //***************************************************************************** // Verifica se adiciona o subtotal para itens referentes a Contas (Documentos Emitidos) //***************************************************************************** if (numSequenciaTipoLancamento.equals(100) && indicadorConta == 0) { indicadorConta = 1; beanConta = new RelatorioSaldoContasAReceberContabilBean( idGerenciaRegional, nomeGerenciaRegional, idUnidadeNegocio, nomeUnidadeNegocio, codigoCentroCusto, tipoGrupo, idItemGrupo, nomeItemGrupo, descricaoLancamentoTipo, descricaoLancamentoItem, " SUBTOTAL", totalizadorSomaSemPerdaParticular, totalizadorSomaSemPerdaPublico, totalizadorSomaSemPerda); beanConta.setSequenciaLancamentoTipo(100); beanConta.setSequenciaLancamentoItem(101); // Serve apenas para ordenacao if (tipoCategoria.intValue() == CategoriaTipo.PARTICULAR.intValue()){ beanConta.setValorItemParticular(somaValor); // PARTICULAR if (idCategoria.equals(Categoria.RESIDENCIAL)) { beanConta.setValorItemResidencial(somaValor); }else if (idCategoria.equals(Categoria.COMERCIAL)) { beanConta.setValorItemComercial(somaValor); }else if (idCategoria.equals(Categoria.INDUSTRIAL)) { beanConta.setValorItemIndustrial(somaValor); } } else { beanConta.setValorItemPublico(somaValor); // PUBLICO } } else if (numSequenciaTipoLancamento.equals(100) && indicadorConta == 1) { beanConta.setDescricaoLancamentoItem(descricaoLancamentoItem); chaveConta = "zzz" + nomeItemGrupo + descricaoLancamentoTipo + descricaoLancamentoItem + descricaoItemContabil; if (tipoCategoria.intValue() == CategoriaTipo.PARTICULAR.intValue()){ beanConta.setValorItemParticular(beanConta.getValorItemParticular().add(somaValor)); // PARTICULAR if (idCategoria.equals(Categoria.RESIDENCIAL)) { beanConta.setValorItemResidencial( beanConta.getValorItemResidencial().add(somaValor)); }else if (idCategoria.equals(Categoria.COMERCIAL)) { beanConta.setValorItemComercial( beanConta.getValorItemComercial().add(somaValor)); }else if (idCategoria.equals(Categoria.INDUSTRIAL)) { beanConta.setValorItemIndustrial( beanConta.getValorItemIndustrial().add(somaValor)); } }else { beanConta.setValorItemPublico( beanConta.getValorItemPublico().add(somaValor)); // PUBLICO } } else if (indicadorConta == 1) { dadosAgrupados.put(chaveConta, beanConta); indicadorConta = 2; } //***************************************************************************** //***************************************************************************** // Verifica se adiciona o subtotal para itens referentes a Guias (Documentos Emitidos) //***************************************************************************** if (numSequenciaTipoLancamento.equals(200) && indicadorGuia == 0) { indicadorGuia = 1; beanGuia = new RelatorioSaldoContasAReceberContabilBean( idGerenciaRegional, nomeGerenciaRegional, idUnidadeNegocio, nomeUnidadeNegocio, codigoCentroCusto, tipoGrupo, idItemGrupo, nomeItemGrupo, descricaoLancamentoTipo, descricaoLancamentoItem, " SUBTOTAL", totalizadorSomaSemPerdaParticular, totalizadorSomaSemPerdaPublico, totalizadorSomaSemPerda); beanGuia.setSequenciaLancamentoTipo(200); beanGuia.setSequenciaLancamentoItem(99); // Serve apenas para ordenacao if (tipoCategoria.intValue() == CategoriaTipo.PARTICULAR.intValue()){ beanGuia.setValorItemParticular(somaValor); // PARTICULAR if (idCategoria.equals(Categoria.RESIDENCIAL)) { beanGuia.setValorItemResidencial(somaValor); }else if (idCategoria.equals(Categoria.COMERCIAL)) { beanGuia.setValorItemComercial(somaValor); }else if (idCategoria.equals(Categoria.INDUSTRIAL)) { beanGuia.setValorItemIndustrial(somaValor); } }else { beanGuia.setValorItemPublico(somaValor); // PUBLICO } }else if (numSequenciaTipoLancamento.equals(200) && indicadorGuia == 1) { beanGuia.setDescricaoLancamentoItem(descricaoLancamentoItem); chaveGuia = "zzzz" + nomeItemGrupo + descricaoLancamentoTipo + descricaoLancamentoItem + descricaoItemContabil; if (tipoCategoria.intValue() == CategoriaTipo.PARTICULAR.intValue()){ beanGuia.setValorItemParticular(beanGuia.getValorItemParticular().add(somaValor)); // PARTICULAR if (idCategoria.equals(Categoria.RESIDENCIAL)) { beanGuia.setValorItemResidencial( beanGuia.getValorItemResidencial().add(somaValor)); }else if (idCategoria.equals(Categoria.COMERCIAL)) { beanGuia.setValorItemComercial( beanGuia.getValorItemComercial().add(somaValor)); }else if (idCategoria.equals(Categoria.INDUSTRIAL)) { beanGuia.setValorItemIndustrial( beanGuia.getValorItemIndustrial().add(somaValor)); } }else { beanGuia.setValorItemPublico( beanGuia.getValorItemPublico().add(somaValor)); // PUBLICO } } else if (indicadorGuia == 1) { dadosAgrupados.put(chaveGuia, beanGuia); indicadorGuia = 2; } //***************************************************************************** String chave = nomeItemGrupo + descricaoLancamentoTipo + descricaoLancamentoItem + descricaoItemContabil; RelatorioSaldoContasAReceberContabilBean bean = dadosAgrupados.get(chave); if (bean == null){ bean = new RelatorioSaldoContasAReceberContabilBean (idGerenciaRegional, nomeGerenciaRegional, idUnidadeNegocio, nomeUnidadeNegocio, codigoCentroCusto, tipoGrupo, idItemGrupo, nomeItemGrupo, descricaoLancamentoTipo, descricaoLancamentoItem, descricaoItemContabil, totalizadorSomaSemPerdaParticular, totalizadorSomaSemPerdaPublico, totalizadorSomaSemPerda); dadosAgrupados.put(chave, bean); bean.setSequenciaLancamentoTipo(numSequenciaTipoLancamento); bean.setSequenciaLancamentoItem(numSequenciaLancamentoItem); } if (numSequenciaTipoLancamento.equals(310)) { descImpostosDeduzidos = descricaoLancamentoItem; if (tipoCategoria.intValue() == CategoriaTipo.PARTICULAR.intValue()) { valorImpostosDeduzidosParticular = somaValor; } if (tipoCategoria.intValue() == CategoriaTipo.PUBLICO.intValue()) { valorImpostosDeduzidosPublico = somaValor; } valorImpostosDeduzidosTotal = valorImpostosDeduzidosTotal.add(somaValor); } bean.setDescImpostosDeduzidos(descImpostosDeduzidos); bean.setValorImpostosDeduzidosParticular(valorImpostosDeduzidosParticular); bean.setValorImpostosDeduzidosPublico(valorImpostosDeduzidosPublico); bean.setValorImpostosDeduzidosTotal(valorImpostosDeduzidosTotal); bean.setIdLancamentoTipo(idLancamentoTipo); if (tipoCategoria.intValue() == CategoriaTipo.PARTICULAR.intValue()){ bean.setValorItemParticular(bean.getValorItemParticular().add(somaValor)); // PARTICULAR if (idCategoria.equals(Categoria.RESIDENCIAL)) { bean.setValorItemResidencial(somaValor); }else if (idCategoria.equals(Categoria.COMERCIAL)) { bean.setValorItemComercial(somaValor); }else if (idCategoria.equals(Categoria.INDUSTRIAL)) { bean.setValorItemIndustrial(somaValor); } bean.setCodigoContabilParticular(numeroConta); //Total geral em perdas if (idLancamentoTipo.intValue() != LancamentoTipo.VALORES_CONTABILIZADOS_COMO_PERDAS.intValue() && idLancamentoTipo.intValue() != LancamentoTipo.RECEBIMENTOS_NAO_IDENTIFICADOS.intValue() ){ if (!numSequenciaTipoLancamento.equals(310)) { totalizadorSomaSemPerdaParticular = totalizadorSomaSemPerdaParticular.add(somaValor); if (idCategoria.equals(Categoria.RESIDENCIAL)) { totalizadorSomaSemPerdaResidencial = totalizadorSomaSemPerdaResidencial.add(somaValor); }else if (idCategoria.equals(Categoria.COMERCIAL)) { totalizadorSomaSemPerdaComercial = totalizadorSomaSemPerdaComercial.add(somaValor); }else if (idCategoria.equals(Categoria.INDUSTRIAL)) { totalizadorSomaSemPerdaIndustrial = totalizadorSomaSemPerdaIndustrial.add(somaValor); } } bean.setTotalGeralSemPerdasParticular(totalizadorSomaSemPerdaParticular); totalizadorSomaSemPerda = totalizadorSomaSemPerdaParticular.add(totalizadorSomaSemPerdaPublico); bean.setTotalGeralSemPerdas(totalizadorSomaSemPerda); bean.setTotalGeralSemPerdasResidencial(totalizadorSomaSemPerdaResidencial); bean.setTotalGeralSemPerdasComercial(totalizadorSomaSemPerdaComercial); bean.setTotalGeralSemPerdasIndustrial(totalizadorSomaSemPerdaIndustrial); } } else { bean.setValorItemPublico(somaValor); // PUBLICO bean.setCodigoContabilPublico(numeroConta); //Total geral em perdas if (idLancamentoTipo.intValue() != LancamentoTipo.VALORES_CONTABILIZADOS_COMO_PERDAS.intValue() && idLancamentoTipo.intValue() != LancamentoTipo.RECEBIMENTOS_NAO_IDENTIFICADOS.intValue() ){ if (!numSequenciaTipoLancamento.equals(310)) { totalizadorSomaSemPerdaPublico = totalizadorSomaSemPerdaPublico.add(somaValor); } bean.setTotalGeralSemPerdasPublico(totalizadorSomaSemPerdaPublico); totalizadorSomaSemPerda = totalizadorSomaSemPerdaParticular.add(totalizadorSomaSemPerdaPublico); bean.setTotalGeralSemPerdas(totalizadorSomaSemPerda); } } } }catch (ErroRepositorioException e) { sessionContext.setRollbackOnly(); throw new ControladorException("erro.sistema", e); } return new ArrayList(dadosAgrupados.values()); } /** * [UC0799] - Gerar Txt das Contas Baixadas Contabilmente * * @author: Vivianne Sousa * @date: 09/04/2008 */ public void gerarTXTContasBaixadasContabilmente( Map parametros, Integer idSetorComercial, Integer idFuncionalidadeIniciada, Integer faixa) throws ControladorException{ int idUnidadeIniciada = 0; try { /* * Registrar o in�cio do processamento da Unidade de * Processamento do Batch */ idUnidadeIniciada = getControladorBatch().iniciarUnidadeProcessamentoBatch(idFuncionalidadeIniciada,UnidadeProcessamento.SETOR_COMERCIAL,(idSetorComercial)); Integer referenciaInicial = (Integer)parametros.get("referenciaInicial"); Integer referenciaFinal = (Integer)parametros.get("referenciaFinal"); Short tipo = (Short)parametros.get("tipo"); Short periodicidade = (Short)parametros.get("periodicidade"); Map contasBaixadasContabilmenteMap = null; StringBuilder contasBaixadasContabilmenteTXT = new StringBuilder(); String nomeZip = ""; String nomeDiretorio = ""; if(periodicidade.equals(ConstantesSistema.ACUMULADO)){ nomeDiretorio = "ContasBContabilAcumulado" + referenciaFinal; }else{ if(referenciaInicial.equals(referenciaFinal)){ nomeDiretorio = "ContasBContabilMensal"+referenciaInicial; }else{ nomeDiretorio = "ContasBContabilMensal"+referenciaInicial + "A" + referenciaFinal; } } IoUtil.criarDiretorio(nomeDiretorio); if(tipo.equals(ConstantesSistema.ANALITICO)){ Collection colecaoQuadras = getControladorLocalidade().pesquisarIdQuadraPorSetorComercial(idSetorComercial); Iterator iterator = colecaoQuadras.iterator(); while (iterator.hasNext()) { Integer idQuadra = (Integer) iterator.next(); contasBaixadasContabilmenteMap = this .consultarDadosContasBaixadasContabilmenteTXT( referenciaInicial, referenciaFinal, idQuadra, faixa, periodicidade); StringBuilder txtContasBaixadasContabilmentePorQuadra = (StringBuilder)contasBaixadasContabilmenteMap.get("linhasTXT"); if (txtContasBaixadasContabilmentePorQuadra != null){ contasBaixadasContabilmenteTXT.append(txtContasBaixadasContabilmentePorQuadra); } } nomeZip = "CONTAS_BAIXADAS_CONTABILMENTE_" + Util.adicionarZerosEsquedaNumero(3,"" + idSetorComercial) + "_F" + faixa ; }else if (tipo.equals(ConstantesSistema.SINTETICO)){ contasBaixadasContabilmenteTXT.append(this. consultarSomatorioValorContasBaixadasContabilmenteTXT( referenciaInicial, referenciaFinal, periodicidade)); nomeZip = "CONTAS_BAIXADAS_CONTABILMENTE_SINTETICO" ; } if (contasBaixadasContabilmenteTXT != null && contasBaixadasContabilmenteTXT.length() != 0) { BufferedWriter out = null; File arquivoTxt = new File(nomeDiretorio + "/" + nomeZip + ".txt"); System.out.println("CRIANDO ZIP -- " + idSetorComercial); out = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(arquivoTxt.getAbsolutePath()))); out.write(contasBaixadasContabilmenteTXT.toString()); out.flush(); out.close(); out = null; arquivoTxt = null; contasBaixadasContabilmenteTXT = null; } getControladorBatch().encerrarUnidadeProcessamentoBatch(null,idUnidadeIniciada, false); } catch (Exception ex) { ex.printStackTrace(); getControladorBatch().encerrarUnidadeProcessamentoBatch(ex,idUnidadeIniciada, true); throw new EJBException(ex); } } /** * [UC0799] - Gerar Txt das Contas Baixadas Contabilmente * * @author: Vivianne Sousa * @param quantidadeMaxima * @param indice * @date: 09/04/2008 */ public Map consultarDadosContasBaixadasContabilmenteTXT( Integer referenciaInicio, Integer referenciaFinal, Integer idQuadra, Integer faixa,Short periodicidade)throws ControladorException{ StringBuilder contasBaixadasContabilmenteTXT = null; Collection colecaoDadosContasBaixadasContabilmente = null; Map retorno = new HashMap(); try { if (faixa.equals(ConstantesSistema.FAIXA_1)){ colecaoDadosContasBaixadasContabilmente = repositorioFinanceiro .consultarDadosContasBaixadasContabilmentePorQuadraFaixa1( referenciaInicio, referenciaFinal, idQuadra, periodicidade); }else if (faixa.equals(ConstantesSistema.FAIXA_2)){ colecaoDadosContasBaixadasContabilmente = repositorioFinanceiro .consultarDadosContasBaixadasContabilmentePorQuadraFaixa2( referenciaInicio, referenciaFinal, idQuadra, periodicidade); }else if (faixa.equals(ConstantesSistema.FAIXA_3)){ colecaoDadosContasBaixadasContabilmente = repositorioFinanceiro .consultarDadosContasBaixadasContabilmentePorQuadraFaixa3( referenciaInicio, referenciaFinal, idQuadra,periodicidade); } if (colecaoDadosContasBaixadasContabilmente != null && !colecaoDadosContasBaixadasContabilmente.isEmpty()) { Iterator iteratorColecaoDadosContasBaixadasContabilmente = colecaoDadosContasBaixadasContabilmente.iterator(); contasBaixadasContabilmenteTXT = new StringBuilder(); StringBuilder contaTxt = null; Imovel imovel = null; Localidade localidade = null; SetorComercial setorComercial = null; Quadra quadra = null; while (iteratorColecaoDadosContasBaixadasContabilmente.hasNext()) { Object[] arrayDados = (Object[]) iteratorColecaoDadosContasBaixadasContabilmente.next(); contaTxt = new StringBuilder(); imovel = new Imovel(); //referencia Baixa Contabil String referenciaBaixaContabil = ""; if (arrayDados[0] != null) { referenciaBaixaContabil = Util.formatarAnoMesParaMesAno((Integer) arrayDados[0]); } //matricula e endere�o do imovel String matriculaImovel = ""; String endereco = ""; if (arrayDados[1] != null) { matriculaImovel = ((Integer) arrayDados[1]).toString(); endereco = getControladorEndereco().pesquisarEndereco((Integer) arrayDados[1]); } //referencia da fatura String referenciaFatura = ""; if (arrayDados[2] != null) { referenciaFatura = Util.formatarAnoMesParaMesAno((Integer) arrayDados[2]); } //id Localidade localidade = new Localidade(); if (arrayDados[3] != null) { localidade.setId((Integer) arrayDados[3]); imovel.setLocalidade(localidade); } //codigo do setor comercial setorComercial = new SetorComercial(); if (arrayDados[4] != null) { setorComercial.setId((Integer) arrayDados[4]); imovel.setSetorComercial(setorComercial); } //numero da quadra if (arrayDados[5] != null) { quadra = new Quadra(); quadra.setNumeroQuadra((Integer) arrayDados[5]); imovel.setQuadra(quadra); } //lote if (arrayDados[6] != null) { imovel.setLote((Short) arrayDados[6]); } if (arrayDados[7] != null) { imovel.setLote((Short) arrayDados[7]); } //valor da conta String valorContaFormatado = ""; if (arrayDados[8] != null) { BigDecimal valorConta = (BigDecimal) arrayDados[8]; valorContaFormatado = Util.formatarMoedaReal(valorConta); } //nome do usuario String nomeUsuario = ""; if (arrayDados[9] != null) { nomeUsuario = (String) arrayDados[9]; } //situa��o de ligacao agua String situacaoAgua = ""; if (arrayDados[10] != null) { situacaoAgua = (String) arrayDados[10]; } //situa��o de liga��o esgoto String situacaoEsgoto = ""; if (arrayDados[11] != null) { situacaoEsgoto = (String) arrayDados[11]; } contaTxt.append(Util.completaString(referenciaBaixaContabil,10)); contaTxt.append(Util.completaString(matriculaImovel,12)); contaTxt.append(Util.completaString(imovel.getInscricaoFormatada(),23)); contaTxt.append(Util.completaString(nomeUsuario,53)); contaTxt.append(Util.completaString(endereco,53)); contaTxt.append(Util.completaString(situacaoAgua,23)); contaTxt.append(Util.completaString(situacaoEsgoto,23)); contaTxt.append(Util.completaString(referenciaFatura,10)); contaTxt.append(Util.completaStringComEspacoAEsquerda(valorContaFormatado,15)); contasBaixadasContabilmenteTXT.append(contaTxt.toString()); contaTxt = null; contasBaixadasContabilmenteTXT.append(System.getProperty("line.separator")); iteratorColecaoDadosContasBaixadasContabilmente.remove(); } } colecaoDadosContasBaixadasContabilmente = null; retorno.put("linhasTXT",contasBaixadasContabilmenteTXT); return retorno; } catch (ErroRepositorioException ex) { throw new ControladorException("erro.sistema", ex); } } /** * [UC0799] - Gerar Txt das Contas Baixadas Contabilmente * * @author: Vivianne Sousa * @date: 20/05/2008 */ public Map consultarSomatorioValorContasBaixadasContabilmenteFaixaTXT( Integer referenciaInicio, Integer referenciaFinal,Integer faixa,Short periodicidade)throws ControladorException{ StringBuilder somatorioValorContasBaixadasContabilmenteTXT = null; Collection colecaoSomatorioValorContasBaixadasContabilmente = null; String mensagemFaixa = ""; Map retorno = new HashMap(); try { if (faixa.equals(ConstantesSistema.FAIXA_1)){ colecaoSomatorioValorContasBaixadasContabilmente = repositorioFinanceiro .consultarSomatorioValorContasBaixadasContabilmenteFaixa1( referenciaInicio, referenciaFinal, periodicidade); mensagemFaixa = ConstantesSistema.MENSAGEM_FAIXA_1; System.out.println("FAIXA_1"); }else if (faixa.equals(ConstantesSistema.FAIXA_2)){ colecaoSomatorioValorContasBaixadasContabilmente = repositorioFinanceiro .consultarSomatorioValorContasBaixadasContabilmenteFaixa2( referenciaInicio, referenciaFinal, periodicidade); mensagemFaixa = ConstantesSistema.MENSAGEM_FAIXA_2; System.out.println("FAIXA_2"); }else if (faixa.equals(ConstantesSistema.FAIXA_3)){ colecaoSomatorioValorContasBaixadasContabilmente = repositorioFinanceiro .consultarSomatorioValorContasBaixadasContabilmenteFaixa3( referenciaInicio, referenciaFinal, periodicidade); mensagemFaixa = ConstantesSistema.MENSAGEM_FAIXA_3; System.out.println("FAIXA_3"); } BigDecimal valorAcumulado = BigDecimal.ZERO; valorAcumulado = valorAcumulado.setScale(2, BigDecimal.ROUND_HALF_DOWN); if (colecaoSomatorioValorContasBaixadasContabilmente != null && !colecaoSomatorioValorContasBaixadasContabilmente.isEmpty()) { Iterator iteratorColecaoSomatorioValorContasBaixadasContabilmente = colecaoSomatorioValorContasBaixadasContabilmente.iterator(); somatorioValorContasBaixadasContabilmenteTXT = new StringBuilder(); while (iteratorColecaoSomatorioValorContasBaixadasContabilmente.hasNext()) { Object valorObject = iteratorColecaoSomatorioValorContasBaixadasContabilmente.next(); if (valorObject != null){ BigDecimal valor = (BigDecimal) valorObject; valorAcumulado = valorAcumulado.add(valor); } } //valor da conta String valorFormatado = ""; valorFormatado = Util.formatarMoedaReal(valorAcumulado); somatorioValorContasBaixadasContabilmenteTXT.append(Util.completaString(mensagemFaixa,50)); somatorioValorContasBaixadasContabilmenteTXT.append(Util.completaStringComEspacoAEsquerda(valorFormatado,15)); somatorioValorContasBaixadasContabilmenteTXT.append(System.getProperty("line.separator")); } colecaoSomatorioValorContasBaixadasContabilmente = null; retorno.put("linhasTXT",somatorioValorContasBaixadasContabilmenteTXT); retorno.put("somatorio",valorAcumulado); return retorno; } catch (ErroRepositorioException ex) { throw new ControladorException("erro.sistema", ex); } } /** * [UC0799] - Gerar Txt das Contas Baixadas Contabilmente * * @author: Vivianne Sousa * @date: 26/05/2008 */ public StringBuilder consultarSomatorioValorContasBaixadasContabilmenteTXT( Integer referenciaInicial, Integer referenciaFinal,Short periodicidade)throws ControladorException{ StringBuilder somatorioValorContasBaixadasContabilmenteTXT = new StringBuilder(); Map contasBaixadasContabilmenteMap = null; StringBuilder txtSomatorioValorContasBaixadasContabilmente = null; BigDecimal somatorioValor = BigDecimal.ZERO; BigDecimal somatorioValorTotal = BigDecimal.ZERO; String cabecalho = "RELA��O DAS CONTAS BAIXADAS CONTABILMENTE EM " + Util.formatarAnoMesParaMesAno(referenciaFinal); somatorioValorContasBaixadasContabilmenteTXT.append(Util.completaStringComEspacoAEsquerda("",10)); somatorioValorContasBaixadasContabilmenteTXT.append(cabecalho); somatorioValorContasBaixadasContabilmenteTXT.append(System.getProperty("line.separator")); contasBaixadasContabilmenteMap = this.consultarSomatorioValorContasBaixadasContabilmenteFaixaTXT( referenciaInicial, referenciaFinal, ConstantesSistema.FAIXA_1, periodicidade); txtSomatorioValorContasBaixadasContabilmente = (StringBuilder)contasBaixadasContabilmenteMap.get("linhasTXT"); if (txtSomatorioValorContasBaixadasContabilmente != null){ somatorioValorContasBaixadasContabilmenteTXT.append(txtSomatorioValorContasBaixadasContabilmente); somatorioValor = (BigDecimal)contasBaixadasContabilmenteMap.get("somatorio"); somatorioValorTotal = somatorioValor; } contasBaixadasContabilmenteMap = null; contasBaixadasContabilmenteMap = this.consultarSomatorioValorContasBaixadasContabilmenteFaixaTXT( referenciaInicial, referenciaFinal, ConstantesSistema.FAIXA_2, periodicidade); txtSomatorioValorContasBaixadasContabilmente = (StringBuilder)contasBaixadasContabilmenteMap.get("linhasTXT"); if (txtSomatorioValorContasBaixadasContabilmente != null){ somatorioValorContasBaixadasContabilmenteTXT.append(txtSomatorioValorContasBaixadasContabilmente); somatorioValor = (BigDecimal)contasBaixadasContabilmenteMap.get("somatorio"); somatorioValorTotal = somatorioValorTotal.add(somatorioValor); } contasBaixadasContabilmenteMap = null; contasBaixadasContabilmenteMap = this.consultarSomatorioValorContasBaixadasContabilmenteFaixaTXT( referenciaInicial, referenciaFinal, ConstantesSistema.FAIXA_3, periodicidade); txtSomatorioValorContasBaixadasContabilmente = (StringBuilder)contasBaixadasContabilmenteMap.get("linhasTXT"); if (txtSomatorioValorContasBaixadasContabilmente != null){ somatorioValorContasBaixadasContabilmenteTXT.append(txtSomatorioValorContasBaixadasContabilmente); somatorioValor = (BigDecimal)contasBaixadasContabilmenteMap.get("somatorio"); somatorioValorTotal = somatorioValorTotal.add(somatorioValor); } somatorioValorContasBaixadasContabilmenteTXT.append(System.getProperty("line.separator")); somatorioValorContasBaixadasContabilmenteTXT.append(Util.completaString("VALOR TOTAL",50)); somatorioValorContasBaixadasContabilmenteTXT.append(Util.completaStringComEspacoAEsquerda( Util.formatarMoedaReal(somatorioValorTotal),15)); return somatorioValorContasBaixadasContabilmenteTXT; } /** * [UC0824] Gerar Relat�rio dos Par�metros Cont�beis * * @author Bruno Barros * @date 08/07/2008 * * @return Collection<RelatorioParametrosContabeisFaturamentoBean> * @throws ErroRepositorioException */ public Collection<RelatorioParametrosContabeisFaturamentoBean> pesquisarDadosRelatorioParametrosContabeisFaturamento( String referenciaContabil ) throws ControladorException { Collection pesquisaDados = new ArrayList(); Integer anoMes = null; // Verificamos se o ano mes de referencia foi informado if ( referenciaContabil != null && !referenciaContabil.equals( "" )){ anoMes = Integer.parseInt( Util.formatarMesAnoParaAnoMesSemBarra( referenciaContabil ) ); } Collection<RelatorioParametrosContabeisFaturamentoBean> colRetorno = new ArrayList(); try { pesquisaDados = repositorioFinanceiro.pesquisarDadosRelatorioParametrosContabeisFaturamento( anoMes ); // Montamos os dados Iterator iter = pesquisaDados.iterator(); while(iter.hasNext()){ Object[] objetos = (Object[]) iter.next(); RelatorioParametrosContabeisFaturamentoBean bean = new RelatorioParametrosContabeisFaturamentoBean( (String) objetos[0], // Descricao do tipo de lancamento (String) objetos[1], // Descricao do Item de lancamento (String) objetos[2], // Descricao do Item de lancamento contabil (String) objetos[3], // Descricao da categoria (String) objetos[4], // Numero da conta para debito (String) objetos[5], // Numero da conta para credito ( objetos.length > 6 ? (BigDecimal) objetos[6] : null ) // So informamos o valor caso esse tenha sido calculado ); colRetorno.add( bean ); } } catch (ErroRepositorioException e) { sessionContext.setRollbackOnly(); throw new ControladorException("erro.sistema", e); } return colRetorno; } /** * [UC0824] Gerar Relat�rio dos Par�metros Cont�beis * * @author Bruno Barros * @date 08/07/2008 * * @return Collection<RelatorioParametrosContabeisArrecadacaoBean> * @throws ErroRepositorioException */ public Collection<RelatorioParametrosContabeisArrecadacaoBean> pesquisarDadosRelatorioParametrosContabeisArrecadacao( String referenciaContabil ) throws ControladorException { Collection pesquisaDados = new ArrayList(); Integer anoMes = null; // Verificamos se o ano mes de referencia foi informado if ( referenciaContabil != null && !referenciaContabil.equals( "" )){ anoMes = Integer.parseInt( Util.formatarMesAnoParaAnoMesSemBarra( referenciaContabil ) ); } Collection<RelatorioParametrosContabeisArrecadacaoBean> colRetorno = new ArrayList(); try { pesquisaDados = repositorioFinanceiro.pesquisarDadosRelatorioParametrosContabeisArrecadacao( anoMes ); // Montamos os dados Iterator iter = pesquisaDados.iterator(); while(iter.hasNext()){ Object[] objetos = (Object[]) iter.next(); RelatorioParametrosContabeisArrecadacaoBean bean = new RelatorioParametrosContabeisArrecadacaoBean( (String) objetos[0], // Descricao do tipo de recebimento (String) objetos[1], // Descricao do tipo de lancamento (String) objetos[2], // Descricao do Item de lancamento (String) objetos[3], // Descricao do Item de lancamento contabil (String) objetos[4], // Descricao da categoria (String) objetos[5], // Numero da conta para cr�dito (String) objetos[6], // Numero da conta para debito ( objetos.length > 7 ? (BigDecimal) objetos[7] : null ) // So informamos o valor caso esse tenha sido calculado ); colRetorno.add( bean ); } } catch (ErroRepositorioException e) { sessionContext.setRollbackOnly(); throw new ControladorException("erro.sistema", e); } return colRetorno; } /** * [UC0822] Gerar Relat�rio do Valor Referente a Volumes Consumidos e N�o Faturados * * @author Victor Cisneiros * @date 15/07/2008 */ public List<RelatorioVolumesConsumidosNaoFaturadosBean> pesquisarVolumesConsumidosNaoFaturados( Integer mesAno, String opcaoTotalizacao, Integer idEntidade) throws ControladorException { try { return repositorioFinanceiro.pesquisarVolumesConsumidosNaoFaturados(mesAno, opcaoTotalizacao, idEntidade); } catch (ErroRepositorioException e) { throw new ControladorException(e.getMessage(), e); } } /** * [UC0714] Gerar Contas a Receber Cont�bil * Adiciona os Valores Contabilizados como Perdas * @author Vivianne Sousa * @date 14/08/2009 */ private void adicionarContaAReceberContabilValoresContabilizadosComoPerdas( Integer idLocalidade, int anoMesAnteriorFaturamento, Collection colecaoContasAReceberContabil) throws ErroRepositorioException { Map<Integer, BigDecimal> mapValoresContabilizadosComoPerdas = null; Integer gerenciaRegionalId = null; Integer unidadeNegocioId = null; Integer localidadeId = null; Collection colecaoDadosContaAguaEsgoto = repositorioFinanceiro .pesquisarDadosContasCategoriaValorAguaEsgoto(idLocalidade); if (colecaoDadosContaAguaEsgoto != null && !colecaoDadosContaAguaEsgoto.isEmpty()) { //Acumula CTCG_VLAGUA a CTCG_VLESGOTO da tabela CONTA_CATEGORIA e //da tabela CONTA com CNTA_AMREFERENCIABAIXACONTABIL diferente de nulo mapValoresContabilizadosComoPerdas = new HashMap(); Iterator colecaoDadosContaAguaEsgotoIterator = colecaoDadosContaAguaEsgoto.iterator(); while (colecaoDadosContaAguaEsgotoIterator.hasNext()) { Object[] dadosContaAguaEsgoto = (Object[]) colecaoDadosContaAguaEsgotoIterator.next(); if(gerenciaRegionalId == null){ gerenciaRegionalId = (Integer) dadosContaAguaEsgoto[0]; unidadeNegocioId = (Integer) dadosContaAguaEsgoto[1]; localidadeId = (Integer) dadosContaAguaEsgoto[2]; } Integer idCategoriaConta = (Integer) dadosContaAguaEsgoto[3]; BigDecimal valorAgua = new BigDecimal("0.00"); if (dadosContaAguaEsgoto[4] != null) { valorAgua = (BigDecimal) dadosContaAguaEsgoto[4]; } BigDecimal valorEsgoto = new BigDecimal("0.00"); if (dadosContaAguaEsgoto[5] != null) { valorEsgoto = (BigDecimal) dadosContaAguaEsgoto[5]; } BigDecimal valorCategoria = valorAgua.add(valorEsgoto); if (!mapValoresContabilizadosComoPerdas.containsKey(idCategoriaConta)) { mapValoresContabilizadosComoPerdas.put(idCategoriaConta,BigDecimal.ZERO); } mapValoresContabilizadosComoPerdas.put(idCategoriaConta, mapValoresContabilizadosComoPerdas.get(idCategoriaConta).add(valorCategoria)); } } Collection colecaoDadosDebitoCobrado = repositorioFinanceiro .pesquisarDadosDebitosCobradosCategoria(idLocalidade); if (colecaoDadosDebitoCobrado != null && !colecaoDadosDebitoCobrado.isEmpty()) { //Acumula DCCG_VLCATEGORIA da tabela DEBITO_COBRADO_CATEGORIA //com DBCB_ID=DBCB_ID da tabela DEBITO_COBRADO e //CNTA_ID=CNTA_ID da tabela CONTA com CNTA_AMREFERENCIABAIXACONTABIL diferente de nulo Iterator colecaoDadosDebitoCobradoIterator = colecaoDadosDebitoCobrado.iterator(); while (colecaoDadosDebitoCobradoIterator.hasNext()) { Object[] dadosDebitoCobrado = (Object[]) colecaoDadosDebitoCobradoIterator.next(); if(gerenciaRegionalId == null){ gerenciaRegionalId = (Integer) dadosDebitoCobrado[0]; unidadeNegocioId = (Integer) dadosDebitoCobrado[1]; localidadeId = (Integer) dadosDebitoCobrado[2]; } Integer idCategoriaConta = (Integer) dadosDebitoCobrado[3]; BigDecimal valorCategoria = new BigDecimal("0.00"); if (dadosDebitoCobrado[4] != null) { valorCategoria = (BigDecimal)dadosDebitoCobrado[4]; } if (!mapValoresContabilizadosComoPerdas.containsKey(idCategoriaConta)) { mapValoresContabilizadosComoPerdas.put(idCategoriaConta,BigDecimal.ZERO); } mapValoresContabilizadosComoPerdas.put(idCategoriaConta, mapValoresContabilizadosComoPerdas.get(idCategoriaConta).add(valorCategoria)); } } Collection colecaoDadosCreditoRealizado = repositorioFinanceiro .pesquisarDadosCreditosRealizadosCategoria(idLocalidade); if (colecaoDadosCreditoRealizado != null && !colecaoDadosCreditoRealizado.isEmpty()) { //Acumula negativamente CRCG_VLCATEGORIA da tabela CREDITO_REALIZADO_CATEGORIA //com CRRZ_ID=CRRZ_ID da tabela CREDITO_REALIZADO e //CNTA_ID=CNTA_ID da tabela CONTA com CNTA_AMREFERENCIABAIXACONTABIL diferente de nulo Iterator colecaoDadosCreditoRealizadoIterator = colecaoDadosCreditoRealizado.iterator(); while (colecaoDadosCreditoRealizadoIterator.hasNext()) { Object[] dadosCreditoRealizado = (Object[]) colecaoDadosCreditoRealizadoIterator.next(); if(gerenciaRegionalId == null){ gerenciaRegionalId = (Integer) dadosCreditoRealizado[0]; unidadeNegocioId = (Integer) dadosCreditoRealizado[1]; localidadeId = (Integer) dadosCreditoRealizado[2]; } Integer idCategoriaConta = (Integer) dadosCreditoRealizado[3]; BigDecimal valorCategoria = new BigDecimal("0.00"); if (dadosCreditoRealizado[4] != null) { valorCategoria = (BigDecimal)dadosCreditoRealizado[4]; } if (!mapValoresContabilizadosComoPerdas.containsKey(idCategoriaConta)) { mapValoresContabilizadosComoPerdas.put(idCategoriaConta,BigDecimal.ZERO); } mapValoresContabilizadosComoPerdas.put(idCategoriaConta, mapValoresContabilizadosComoPerdas.get(idCategoriaConta).subtract(valorCategoria)); } } if(mapValoresContabilizadosComoPerdas != null){ //Pesquisa a cole��o de categorias no sistema Collection<Integer> colecaoIdsCategorias = this.repositorioArrecadacao.pesquisarIdsCategorias(); for (Integer idCategoria : colecaoIdsCategorias) { if (mapValoresContabilizadosComoPerdas.containsKey(idCategoria)) { if (mapValoresContabilizadosComoPerdas.get(idCategoria).doubleValue() > 0.00) { BigDecimal valorCategoria = mapValoresContabilizadosComoPerdas.get(idCategoria); //Gravar o valor com sinal negativo ContaAReceberContabil contaAReceberContabil = criarContaAReceberContabil( anoMesAnteriorFaturamento, gerenciaRegionalId, unidadeNegocioId, localidadeId, idCategoria, valorCategoria.multiply(new BigDecimal("-1")), LancamentoTipo.VALORES_CONTABILIZADOS_COMO_PERDAS, 700, LancamentoItem.VALORES_CONTABILIZADOS_COMO_PERDAS, 60, null); colecaoContasAReceberContabil.add(contaAReceberContabil); } } } } } /** * [UC0714] Gerar Contas a Receber Cont�bil * Adiciona os Recebimentos N�o Identificados * @author Vivianne Sousa, Ivan Sergio * @date 17/08/2009, 08/11/2010 * @alteracao: 08/11/2010 - RM2477 - Altera��o no Relat�rio de Saldo de contas cont�bil (Item 4) */ private void adicionarContaAReceberContabilRecebimentosNaoIdentificados( Integer idLocalidade, int anoMesAnteriorFaturamento, int anoMesArrecadacao, Collection colecaoContasAReceberContabil) throws ControladorException,ErroRepositorioException { Localidade localidade = repositorioFinanceiro.pesquisarUnidadeNegocioEGerenciaDaLocalidade(idLocalidade); Integer idGerenciaRegional = localidade.getGerenciaRegional().getId(); Integer idUnidadeNegocio = localidade.getUnidadeNegocio().getId(); Collection colecaoValorPagamentoImovel = repositorioFinanceiro .pesquisarValorPagamentoImovel(idLocalidade,anoMesArrecadacao); Map<Integer, BigDecimal> mapRecebimentosNaoIdentificados = null; if (colecaoValorPagamentoImovel != null && !colecaoValorPagamentoImovel.isEmpty()) { Iterator iterValorPagamentoImovel = colecaoValorPagamentoImovel.iterator(); BigDecimal valorPagamento = BigDecimal.ZERO; Integer idImovel = null; Imovel imovel = null; mapRecebimentosNaoIdentificados = new HashMap(); while (iterValorPagamentoImovel.hasNext()) { Object[] arrayDadosPagamento = (Object[]) iterValorPagamentoImovel.next(); idImovel = (Integer) arrayDadosPagamento[0]; imovel = new Imovel(); imovel.setId(idImovel); valorPagamento = (BigDecimal) arrayDadosPagamento[1]; if (idImovel != null) { // [UC0108 - Obter Quantidade de Economias por Categoria] Collection colecaoCategoriasImovel = getControladorImovel(). obterQuantidadeEconomiasCategoria(imovel); Iterator iteratorColecaoCategoriasImovel = colecaoCategoriasImovel.iterator(); // [UC0185 - Obter Valor por Categoria] Iterator iteratorColecaoValorPagamentoPorCategoria = (getControladorImovel() .obterValorPorCategoria(colecaoCategoriasImovel,valorPagamento)).iterator(); while (iteratorColecaoCategoriasImovel.hasNext() && iteratorColecaoValorPagamentoPorCategoria.hasNext()) { Categoria categoria = (Categoria) iteratorColecaoCategoriasImovel.next(); valorPagamento = (BigDecimal) iteratorColecaoValorPagamentoPorCategoria.next(); if (!mapRecebimentosNaoIdentificados.containsKey(categoria.getId())) { mapRecebimentosNaoIdentificados.put(categoria.getId(),BigDecimal.ZERO); } mapRecebimentosNaoIdentificados.put(categoria.getId(), mapRecebimentosNaoIdentificados.get(categoria.getId()).add(valorPagamento)); } } else { if (!mapRecebimentosNaoIdentificados.containsKey(Categoria.RESIDENCIAL)) { mapRecebimentosNaoIdentificados.put(Categoria.RESIDENCIAL,BigDecimal.ZERO); } mapRecebimentosNaoIdentificados.put(Categoria.RESIDENCIAL, mapRecebimentosNaoIdentificados.get(Categoria.RESIDENCIAL).add(valorPagamento)); } } //Pesquisa a cole��o de categorias no sistema Collection<Integer> colecaoIdsCategorias = this.repositorioArrecadacao.pesquisarIdsCategorias(); for (Integer idCategoria : colecaoIdsCategorias) { if (mapRecebimentosNaoIdentificados.containsKey(idCategoria)) { if (mapRecebimentosNaoIdentificados.get(idCategoria).doubleValue() > 0.00) { BigDecimal valorCategoria = mapRecebimentosNaoIdentificados.get(idCategoria); //Gravar o valor com sinal negativo ContaAReceberContabil contaAReceberContabil = criarContaAReceberContabil( anoMesAnteriorFaturamento, idGerenciaRegional, idUnidadeNegocio, idLocalidade, idCategoria, valorCategoria.multiply(new BigDecimal("-1")), LancamentoTipo.VALORES_CONTABILIZADOS_COMO_PERDAS, 800, LancamentoItem.RECEBIMENTOS_NAO_IDENTIFICADOS, 60, null); colecaoContasAReceberContabil.add(contaAReceberContabil); } } } } } public void gerarLancamentosContabeisAvisosBancarios(Integer anoMesArrecadacao, int idFuncionalidadeIniciada) throws ControladorException { int idUnidadeIniciada = getControladorBatch().iniciarUnidadeProcessamentoBatch(idFuncionalidadeIniciada, UnidadeProcessamento.FUNCIONALIDADE, 0); try { /* * Seleciona, a partir da tabela AVISO_BANCARIO com ano/m�s de refer�ncia da arrecada��o (AVBC_AMREFERENCIAARRECADACAO) menor ou igual ao ano/m�s da * arrecada��o recebido e com valor contabilizado (AVBC_VLCONTABILIZADO) diferente do valor realizado (AVBC_VLREALIZADO) e com valor realizado maior * que zero ordenando pelo arrecadador (ARRC_ID) e pela data de realiza��o (AVBC_DTREALIZADA) */ Collection colecaoAvisosBancarios = this.pesquisarAvisosBancariosParaGerarLancamentosContabeis(anoMesArrecadacao); if (colecaoAvisosBancarios != null && !colecaoAvisosBancarios.isEmpty()) { // Gera os lan�amentos cont�beis na tabela LANCAMENTO_CONTABIL para o m�s e ano da arrecada��o (LCNB_AMLANCAMENTO) e origem com o valor correspondente a aviso banc�rio (LCOR_ID) LancamentoContabil lancamentoContabil = this.gerarLancamentoContabilParaAvisoBancario(anoMesArrecadacao); Iterator iterator = colecaoAvisosBancarios.iterator(); while (iterator.hasNext()) { AvisoBancario avisoBancario = (AvisoBancario) iterator.next(); BigDecimal valorASerContabilizado = avisoBancario.getValorRealizado().subtract(avisoBancario.getValorContabilizado()); /* * Para os avisos banc�rios de cr�dito (AVBC_ICCREDITODEBITO=1) e com o valor a ser contabilizado positivo * OU * Para os avisos banc�rios de d�bito (AVBC_ICCREDITODEBITO=2) e com valor a ser contabilizado negativo: */ if ((avisoBancario.getIndicadorCreditoDebito().equals(AvisoBancario.INDICADOR_CREDITO) && valorASerContabilizado.compareTo(new BigDecimal("0.00")) > 0) || (avisoBancario.getIndicadorCreditoDebito().equals(AvisoBancario.INDICADOR_DEBITO) && valorASerContabilizado.compareTo(new BigDecimal("0.00")) < 0)) { /* * CONTA CONT�BIL = CNCT_IDDEBITO da tabela CONTA_CONTABIL com o nome da conta (CNCT_NMCONTA) correspondente a BANCO * C�DIGO TERCEIRO = (CTBC_NNCONTACONTABIL da tabela CONTA_BANCARIA com CTBC_ID igual a CTBC_ID da tabela AVISO_BANCARIO) */ ContaContabil contaContabilDebito = this.pesquisarContaContabilPorNomeConta("BANCO"); this.gerarLancamentoContabilItem(anoMesArrecadacao, lancamentoContabil, AvisoBancario.INDICADOR_DEBITO, avisoBancario, contaContabilDebito, valorASerContabilizado.abs(), avisoBancario.getContaBancaria().getNumeroContaContabil()); /* * CONTA CONT�BIL = CNCT_IDDEBITO da tabela CONTA_CONTABIL com o nome da conta (CNCT_NMCONTA) correspondente a ARRECADACAO A DISCRIMINAR * C�DIGO TERCEIRO = NULL */ ContaContabil contaContabilCredito = this.pesquisarContaContabilPorNomeConta("ARRECADACAO A DISCRIMINAR"); this.gerarLancamentoContabilItem(anoMesArrecadacao, lancamentoContabil, AvisoBancario.INDICADOR_CREDITO, avisoBancario, contaContabilCredito, valorASerContabilizado.abs(), null); } /* * Para os avisos banc�rios de d�bito (AVBC_ICCREDITODEBITO=2) e com o valor a ser contabilizado positivo * OU * Para os avisos banc�rios de cr�dito (AVBC_ICCREDITODEBITO=1) e com valor a ser contabilizado negativo */ else { /* * CONTA CONT�BIL = CNCT_IDDEBITO da tabela CONTA_CONTABIL com o nome da conta (CNCT_NMCONTA) correspondente a ARRECADACAO A DISCRIMINAR * C�DIGO TERCEIRO = NULL */ ContaContabil contaContabilDebito = this.pesquisarContaContabilPorNomeConta("ARRECADACAO A DISCRIMINAR"); this.gerarLancamentoContabilItem(anoMesArrecadacao, lancamentoContabil, AvisoBancario.INDICADOR_DEBITO, avisoBancario, contaContabilDebito, valorASerContabilizado.abs(), null); /* * CONTA CONT�BIL = CNCT_IDDEBITO da tabela CONTA_CONTABIL com o nome da conta (CNCT_NMCONTA) correspondente a BANCO * C�DIGO TERCEIRO = (CTBC_NNCONTACONTABIL da tabela CONTA_BANCARIA com CTBC_ID igual a CTBC_ID da tabela AVISO_BANCARIO) */ ContaContabil contaContabilCredito = this.pesquisarContaContabilPorNomeConta("BANCO"); this.gerarLancamentoContabilItem(anoMesArrecadacao, lancamentoContabil, AvisoBancario.INDICADOR_CREDITO, avisoBancario, contaContabilCredito, valorASerContabilizado.abs(), avisoBancario.getContaBancaria().getNumeroContaContabil()); } BigDecimal valorContabilizado = avisoBancario.getValorContabilizado().add(valorASerContabilizado); this.atualizarValorContabilizado(avisoBancario.getId(), valorContabilizado); } } getControladorBatch().encerrarUnidadeProcessamentoBatch(null, idUnidadeIniciada, false); } catch (Exception ex) { getControladorBatch().encerrarUnidadeProcessamentoBatch(ex, idUnidadeIniciada, true); throw new EJBException(ex); } } protected List<AvisoBancario> pesquisarAvisosBancariosParaGerarLancamentosContabeis(Integer anoMesReferenciaArrecadacao) throws ControladorException { List<AvisoBancario> retorno = null; try { retorno = repositorioFinanceiro.pesquisarAvisosBancariosParaGerarLancamentosContabeis(anoMesReferenciaArrecadacao); } catch (ErroRepositorioException ex) { ex.printStackTrace(); throw new ControladorException("erro.sistema", ex); } return retorno; } /** * [UC0992] Gerar Lan�amentos Cont�beis dos Avisos Banc�rios * * @author Raphael Rossiter * @date 22/02/2010 * * @param anoMesReferenciaArrecadacao * @return LancamentoContabil * @throws ControladorException */ protected LancamentoContabil gerarLancamentoContabilParaAvisoBancario(Integer anoMesReferenciaArrecadacao) throws ControladorException { LancamentoContabil lancamentoContabil = new LancamentoContabil(); //ANO M�S LAN�AMENTO = Ano/m�s de refer�ncia da arrecada��o recebido lancamentoContabil.setAnoMes(anoMesReferenciaArrecadacao.intValue()); //ORIGEM DO LAN�AMENTO = Valor correspondente a aviso banc�rio da tabela LANCAMENTO_ORIGEM LancamentoOrigem lancamentoOrigem = new LancamentoOrigem(); lancamentoOrigem.setId(LancamentoOrigem.AVISO_BANCARIO); lancamentoContabil.setLancamentoOrigem(lancamentoOrigem); /* * TIPO DO LANCAMENTO = Tipo de Lan�amento (LCTP_ID da tabela LANCAMENTO_TIPO com o * valor correspondente a aviso banc�rio) */ LancamentoTipo lancamentoTipo = new LancamentoTipo(); lancamentoTipo.setId(LancamentoTipo.AVISO_BANCARIO); lancamentoContabil.setLancamentoTipo(lancamentoTipo); //LOCALIDADE = LOCA_ID da tabela LOCALIDADE com LOCA_ICSEDE = 1 Localidade localidadeSede = this.getControladorCobranca().pesquisarLocalidadeSede(); lancamentoContabil.setLocalidade(localidadeSede); //�LTIMA ALTERA��O lancamentoContabil.setUltimaAlteracao(new Date()); //INSERINDO O LAN�AMENTO CONT�BIL Integer idLancamentoContabil = (Integer) this.getControladorUtil().inserir(lancamentoContabil); lancamentoContabil.setId(idLancamentoContabil); return lancamentoContabil; } /** * [UC0992] Gerar Lan�amentos Cont�beis dos Avisos Banc�rios */ protected LancamentoContabilItem gerarLancamentoContabilItem(Integer anoMesReferenciaArrecadacao, LancamentoContabil lancamentoContabil, Short indicadorCreditoDebito, AvisoBancario avisoBancario, ContaContabil contaContabil, BigDecimal valorLancamento, Integer codigoTerceiro) throws ControladorException { LancamentoContabilItem lancamentoContabilItem = new LancamentoContabilItem(); lancamentoContabilItem.setLancamentoContabil(lancamentoContabil); lancamentoContabilItem.setIndicadorDebitoCredito(indicadorCreditoDebito); lancamentoContabilItem.setValorLancamento(valorLancamento); lancamentoContabilItem.setContaContabil(contaContabil); /* * DESCRI��O HIST�RICO = Descri��o da forma de arrecada��o * (ARFM_DSARRECADACAOFORMA da tabela ARRECADACAO_FORMA com ARFM_ID da * tabela AVISO_BANCARIO) concatenado com a data de realiza��o do aviso * banc�rio (AVBC_DTREALIZADA) no formato DD/MM/AAAA e com a data de * lan�amento do aviso banc�rio (AVBC_DTLANCAMENTO) no formato * DD/MM/AAAA. Separar os campos com ponto e v�rgula. */ String descricaoArrecadacaoForma = ""; if (avisoBancario.getDataRealizada() != null) { descricaoArrecadacaoForma = descricaoArrecadacaoForma + Util.formatarData(avisoBancario.getDataRealizada()) + ";"; } descricaoArrecadacaoForma = descricaoArrecadacaoForma + Util.formatarData(avisoBancario.getDataLancamento()); if (avisoBancario.getArrecadacaoForma() != null) { descricaoArrecadacaoForma = descricaoArrecadacaoForma + ";" + Util.completaString(avisoBancario.getArrecadacaoForma().getDescricao(), 38); } lancamentoContabilItem.setDescricaoHistorico(descricaoArrecadacaoForma); lancamentoContabilItem.setCodigoTerceiro(codigoTerceiro); /* * Caso o ano/m�s de refer�ncia da arrecada��o recebido seja igual ao * ano/m�s da data de realiza��o do aviso banc�rio (AVBC_DTREALIZADA), * atribuir a data de realiza��o do aviso banc�rio; * * Caso contr�rio atribuir a data do �ltimo dia do ano/m�s de refer�ncia * da arrecada��o recebido. */ if (avisoBancario.getDataRealizada() != null && anoMesReferenciaArrecadacao.equals(Util.getAnoMesComoInteger(avisoBancario.getDataRealizada()))) { lancamentoContabilItem.setDataLancamento(avisoBancario.getDataRealizada()); } else { Date dataLancamento = Util.obterUltimaDataMes(Util.obterMes(anoMesReferenciaArrecadacao), Util.obterAno(anoMesReferenciaArrecadacao)); lancamentoContabilItem.setDataLancamento(dataLancamento); } lancamentoContabilItem.setUltimaAlteracao(new Date()); Integer idLancamentoContabilItem = (Integer) this.getControladorUtil().inserir(lancamentoContabilItem); lancamentoContabilItem.setId(idLancamentoContabilItem); return lancamentoContabilItem; } /** * [UC0992] Gerar Lan�amentos Cont�beis dos Avisos Banc�rios * * @author Raphael Rossiter * @date 22/02/2010 * * @param nomeConta * @return ContaContabil * @throws ControladorException */ public ContaContabil pesquisarContaContabilPorNomeConta(String nomeConta) throws ControladorException{ ContaContabil retorno = null; try { retorno = repositorioFinanceiro.pesquisarContaContabilPorNomeConta(nomeConta); } catch (ErroRepositorioException ex) { ex.printStackTrace(); throw new ControladorException("erro.sistema", ex); } return retorno; } /** * [UC0992] Gerar Lan�amentos Cont�beis dos Avisos Banc�rios * * @author Raphael Rossiter * @date 22/02/2010 * * @param idAvisoBancario * @param valorContabilizado * @throws ControladorException */ protected void atualizarValorContabilizado(Integer idAvisoBancario, BigDecimal valorContabilizado) throws ControladorException { try { repositorioFinanceiro.atualizarValorContabilizado(idAvisoBancario, valorContabilizado); } catch (ErroRepositorioException ex) { ex.printStackTrace(); throw new ControladorException("erro.sistema", ex); } } /** * @author Raphael Rossiter * @date 24/02/2010 * * @return O valor de controladorCobrancaLocal */ protected ControladorCobrancaLocal getControladorCobranca() { ControladorCobrancaLocalHome localHome = null; ControladorCobrancaLocal local = null; // pega a inst�ncia do ServiceLocator. ServiceLocator locator = null; try { locator = ServiceLocator.getInstancia(); localHome = (ControladorCobrancaLocalHome) locator .getLocalHomePorEmpresa(ConstantesJNDI.CONTROLADOR_COBRANCA_SEJB); // guarda a referencia de um objeto capaz de fazer chamadas � // objetos remotamente local = localHome.create(); return local; } catch (CreateException e) { throw new SistemaException(e); } catch (ServiceLocatorException e) { throw new SistemaException(e); } } /** * [UC0989] Gerar Resumo de Documentos a Receber * * @author Raphael Rossiter * @date 10/03/2010 * * @param idLocalidade * @param idFuncionalidadeIniciada * @throws ControladorException */ public void gerarResumoDocumentosAReceber(Integer idLocalidade, int idFuncionalidadeIniciada) throws ControladorException { System.out.println("LOCALIDADE " + idLocalidade); int idUnidadeIniciada = 0; // ------------------------- // // Registrar o in�cio do processamento da Unidade de // Processamento // do Batch // // ------------------------- idUnidadeIniciada = getControladorBatch().iniciarUnidadeProcessamentoBatch( idFuncionalidadeIniciada, UnidadeProcessamento.LOCALIDADE, idLocalidade); Session session = HibernateUtil.getSession(); try { Collection colecaoDocumentosAReceberResumo = new ArrayList(); /* * O sistema verifica se o resumo j� foi gerado para o �ltimo faturamento encerrado; * Caso existam, o sistema exclui os dados de refer�ncia igual � �ltima refer�ncia de * faturamento gerada (ocorr�ncias da tabela DOCUMENTOS_A_RECEBER_RESUMO com * DRRS_AMREFERENCIADOCUMENTOS=PARM_AMREFERENCIAFATURAMENTO -1 da tabela SISTEMA_PARAMETROS); */ SistemaParametro sistemaParametro = getControladorUtil().pesquisarParametrosDoSistema(); int anoMesReferenciaFaturamentoMenosUm = Util.subtrairMesDoAnoMes( sistemaParametro.getAnoMesFaturamento(), 1); this.removerDocumentosAReceberFaixaResumo(anoMesReferenciaFaturamentoMenosUm, idLocalidade, session); this.removerDocumentosAReceberResumo(anoMesReferenciaFaturamentoMenosUm, idLocalidade, session); //[SB0001 � Gerar resumo a partir de contas]; this.gerarResumoAPartirConta(anoMesReferenciaFaturamentoMenosUm, idLocalidade, colecaoDocumentosAReceberResumo, session); //[SB0002 � Gerar resumo a partir de guias de pagamento] this.gerarResumoAPartirGuiaPagamento(anoMesReferenciaFaturamentoMenosUm, idLocalidade, colecaoDocumentosAReceberResumo, session); //[SB0003 � Gerar resumo a partir de d�bitos a cobrar] this.gerarResumoAPartirDebitoACobrar(anoMesReferenciaFaturamentoMenosUm, idLocalidade, colecaoDocumentosAReceberResumo, session); //[SB0004 � Gerar resumo a partir de cr�ditos a realizar] this.gerarResumoAPartirCreditoARealizar(anoMesReferenciaFaturamentoMenosUm, idLocalidade, colecaoDocumentosAReceberResumo, session); //ENCERRANDO A UNIDADE DE PROCESSAMENTO getControladorBatch().encerrarUnidadeProcessamentoBatch(null, idUnidadeIniciada, false); System.out.println("FIM DA GERA��O - Localidade " + idLocalidade); } catch (Exception e) { getControladorBatch().encerrarUnidadeProcessamentoBatch(e, idUnidadeIniciada, true); throw new EJBException(e); } finally { HibernateUtil.closeSession(session); } } /** * [UC0989] Gerar Resumo de Documentos a Receber * * @author Raphael Rossiter * @date 10/03/2010 * * @param anoMesReferenciaRecebimentos * @param idLocalidade * @throws ErroRepositorioException */ public void removerDocumentosAReceberResumo(int anoMesReferenciaFaturamento, Integer idLocalidade, Session session) throws ControladorException { try { repositorioFinanceiro.removerDocumentosAReceberResumo(anoMesReferenciaFaturamento, idLocalidade, session); } catch (ErroRepositorioException ex) { ex.printStackTrace(); throw new ControladorException("erro.sistema", ex); } } /** * [UC0989] Gerar Resumo de Documentos a Receber * * [SB0001 � Gerar resumo a partir de contas] * * @author Raphael Rossiter * @date 10/03/2010 * * @param anoMesReferenciaContabil * @param idLocalidade * @param colecaoDocumentosAReceberResumo * @throws ControladorException */ public void gerarResumoAPartirConta(int anoMesReferenciaFaturamento, Integer idLocalidade, Collection<DocumentosAReceberResumo> colecaoDocumentosAReceberResumo, Session session) throws ControladorException{ Collection<Object[]> colecaoResumoContas = null; try { colecaoResumoContas = repositorioFinanceiro.pesquisarContasAReceberParaResumo( anoMesReferenciaFaturamento, idLocalidade, session); } catch (ErroRepositorioException ex) { ex.printStackTrace(); throw new ControladorException("erro.sistema", ex); } //GERANDO O RESUMO POR DOCUMENTO this.gerarDocumentosAReceberResumo(anoMesReferenciaFaturamento, colecaoResumoContas); } /** * [UC0989] Gerar Resumo de Documentos a Receber * * [SB0002 � Gerar resumo a partir de guias de pagamento] * * @author Raphael Rossiter * @date 10/03/2010 * * @param anoMesReferenciaContabil * @param idLocalidade * @param colecaoDocumentosAReceberResumo * @throws ControladorException */ public void gerarResumoAPartirGuiaPagamento(int anoMesReferenciaFaturamento, Integer idLocalidade, Collection<DocumentosAReceberResumo> colecaoDocumentosAReceberResumo, Session session) throws ControladorException{ Collection<Object[]> colecaoResumoGuiasPagamento = null; try { colecaoResumoGuiasPagamento = repositorioFinanceiro.pesquisarGuiasPagamentoAReceberParaResumo( anoMesReferenciaFaturamento, idLocalidade, session); } catch (ErroRepositorioException ex) { ex.printStackTrace(); throw new ControladorException("erro.sistema", ex); } //GERANDO O RESUMO POR DOCUMENTO this.gerarDocumentosAReceberResumo(anoMesReferenciaFaturamento, colecaoResumoGuiasPagamento); } /** * [UC0989] Gerar Resumo de Documentos a Receber * * [SB0003 � Gerar resumo a partir de d�bitos a cobrar] * * @author Raphael Rossiter * @date 10/03/2010 * * @param anoMesReferenciaContabil * @param idLocalidade * @param colecaoDocumentosAReceberResumo * @throws ControladorException */ public void gerarResumoAPartirDebitoACobrar(int anoMesReferenciaFaturamento, Integer idLocalidade, Collection<DocumentosAReceberResumo> colecaoDocumentosAReceberResumo, Session session) throws ControladorException{ Collection<Object[]> colecaoResumoDebitosACobrar = null; try { colecaoResumoDebitosACobrar = repositorioFinanceiro.pesquisarDebitosACobrarAReceberParaResumo( anoMesReferenciaFaturamento, idLocalidade, session); } catch (ErroRepositorioException ex) { ex.printStackTrace(); throw new ControladorException("erro.sistema", ex); } //GERANDO O RESUMO POR DOCUMENTO this.gerarDocumentosAReceberResumo(anoMesReferenciaFaturamento, colecaoResumoDebitosACobrar); } /** * [UC0989] Gerar Resumo de Documentos a Receber * * [SB0004 � Gerar resumo a partir de cr�ditos a realizar] * * @author Raphael Rossiter * @date 10/03/2010 * * @param anoMesReferenciaContabil * @param idLocalidade * @param colecaoDocumentosAReceberResumo * @throws ControladorException */ public void gerarResumoAPartirCreditoARealizar(int anoMesReferenciaFaturamento, Integer idLocalidade, Collection<DocumentosAReceberResumo> colecaoDocumentosAReceberResumo, Session session) throws ControladorException{ Collection<Object[]> colecaoResumoCreditoARealizar = null; try { colecaoResumoCreditoARealizar = repositorioFinanceiro.pesquisarCreditosARealizarAReceberParaResumo( anoMesReferenciaFaturamento, idLocalidade, session); } catch (ErroRepositorioException ex) { ex.printStackTrace(); throw new ControladorException("erro.sistema", ex); } //GERANDO O RESUMO POR DOCUMENTO this.gerarDocumentosAReceberResumo(anoMesReferenciaFaturamento, colecaoResumoCreditoARealizar); } /** * [UC0989] Gerar Resumo de Documentos a Receber * * @author Raphael Rossiter, Mariana Victor * @date 11/03/2010, 29/03/2011 * * @param anoMesReferenciaFaturamento * @param colecaoDocumentosAcumulados * @return Collection<DocumentosAReceberResumo> * @throws ControladorException */ public void gerarDocumentosAReceberResumo(int anoMesReferenciaFaturamento, Collection<Object[]> colecaoDocumentosAcumulados) throws ControladorException{ Collection<DocumentosAReceberFaixaResumo> colecaoDocumentosAReceberFaixaResumo = new ArrayList(); if (colecaoDocumentosAcumulados != null && !colecaoDocumentosAcumulados.isEmpty()){ Iterator iterator = colecaoDocumentosAcumulados.iterator(); DocumentosAReceberResumo documentosAReceberResumo = null; Date dataVencimentoDocumentoAuxiliar = null; while (iterator.hasNext()){ Object[] dadosAcumulados = (Object[]) iterator.next(); //GERENCIA REGIONAL GerenciaRegional gerenciaRegional = new GerenciaRegional(); gerenciaRegional.setId((Integer) dadosAcumulados[0]); //UNIDADE DE NEGOCIO UnidadeNegocio unidadeNegocio = new UnidadeNegocio(); unidadeNegocio.setId((Integer) dadosAcumulados[1]); //LOCALIDADE Localidade localidade = new Localidade(); localidade.setId((Integer) dadosAcumulados[2]); //IMOVEL PERFIL ImovelPerfil imovelPerfil = new ImovelPerfil(); imovelPerfil.setId((Integer) dadosAcumulados[3]); //ESFERA PODER EsferaPoder esferaPoder = new EsferaPoder(); esferaPoder.setId((Integer) dadosAcumulados[4]); //CATEGORIA Categoria categoria = new Categoria(); categoria.setId((Integer) dadosAcumulados[5]); //DOCUMENTO TIPO DocumentoTipo documentoTipo = new DocumentoTipo(); documentoTipo.setId((Integer) dadosAcumulados[6]); /* * QUANTIDADE DE DIAS VENCIDOS * * Para os documentos do tipo CONTA E GUIA DE PAGAMENTO: * Calcular a quantidade de dias vencidos a partir da data de vencimento do documento em * rela��o ao �ltimo dia do m�s de refer�ncia do faturamento (data referente ao �ltimo dia * de PARM_AMREFERENCIAFATURAMENTO da tabela SISTEMA_PARAMETROS menos a data de * vencimento do documento); * * Caso contr�rio atribuir 0 (zero) a quantidade de dias de vencimento */ Integer quantidadeDiasVencido = 0; Date dataVencimentoDocumento = null; if (documentoTipo.getId().equals(DocumentoTipo.CONTA) || documentoTipo.getId().equals(DocumentoTipo.GUIA_PAGAMENTO)){ dataVencimentoDocumento = (Date) dadosAcumulados[7]; Date dataUltimoDiaReferenciaFaturamento = Util.obterUltimaDataMes(Util.obterMes( anoMesReferenciaFaturamento), Util.obterAno(anoMesReferenciaFaturamento)); if (dataUltimoDiaReferenciaFaturamento.compareTo(dataVencimentoDocumento) > 0){ quantidadeDiasVencido = Util.obterQuantidadeDiasEntreDuasDatas(dataVencimentoDocumento, dataUltimoDiaReferenciaFaturamento); } } if (documentosAReceberResumo != null && !(documentosAReceberResumo.getGerenciaRegional().getId().equals(gerenciaRegional.getId()) && documentosAReceberResumo.getUnidadeNegocio().getId().equals(unidadeNegocio.getId()) && documentosAReceberResumo.getLocalidade().getId().equals(localidade.getId()) && documentosAReceberResumo.getImovelPerfil().getId().equals(imovelPerfil.getId()) && documentosAReceberResumo.getEsferaPoder().getId().equals(esferaPoder.getId()) && documentosAReceberResumo.getCategoria().getId().equals(categoria.getId()) && documentosAReceberResumo.getDocumentoTipo().getId().equals(documentoTipo.getId()) && ((dataVencimentoDocumento == null && dataVencimentoDocumentoAuxiliar == null) || (dataVencimentoDocumento != null && dataVencimentoDocumentoAuxiliar != null && dataVencimentoDocumento.compareTo(dataVencimentoDocumentoAuxiliar) == 0)))) { this.inserirDocumentosAReceberResumo(documentosAReceberResumo, colecaoDocumentosAReceberFaixaResumo); colecaoDocumentosAReceberFaixaResumo = new ArrayList(); documentosAReceberResumo = new DocumentosAReceberResumo(); dataVencimentoDocumentoAuxiliar = null; } if (dataVencimentoDocumento != null) { dataVencimentoDocumentoAuxiliar = (Date) dataVencimentoDocumento.clone(); } else { dataVencimentoDocumentoAuxiliar = null; } if (documentosAReceberResumo == null) { documentosAReceberResumo = new DocumentosAReceberResumo(); dataVencimentoDocumentoAuxiliar = null; } /* * Ano e M�s de Refer�ncia dos documentos a receber (PARM_AMREFERENCIAFATURAMENTO - 1 da * tabela SISTEMA_PARAMETROS) */ documentosAReceberResumo.setAnoMesReferenciaRecebimentos(anoMesReferenciaFaturamento); documentosAReceberResumo.setGerenciaRegional(gerenciaRegional); documentosAReceberResumo.setUnidadeNegocio(unidadeNegocio); documentosAReceberResumo.setLocalidade(localidade); documentosAReceberResumo.setImovelPerfil(imovelPerfil); documentosAReceberResumo.setEsferaPoder(esferaPoder); documentosAReceberResumo.setCategoria(categoria); documentosAReceberResumo.setDocumentoTipo(documentoTipo); documentosAReceberResumo.setQuantidadeDiasVencidos(quantidadeDiasVencido); /* * INDICADOR SITUCAO DOCUMENTO * Para os documentos do tipo CONTA E GUIA DE PAGAMENTO colocar 2 - VENCIDO, j� para os documentos * do tipo DEBITO A COBRAR e CREDITO A REALIZAR colocar 1 - A VENCER */ if (documentosAReceberResumo.getDocumentoTipo().getId().equals(DocumentoTipo.CONTA) || documentosAReceberResumo.getDocumentoTipo().getId().equals(DocumentoTipo.GUIA_PAGAMENTO)){ if (quantidadeDiasVencido == 0){ documentosAReceberResumo.setIndicadorSituacaoDocumentos( DocumentosAReceberResumo.DOCUMENTO_A_VENCER); } else{ documentosAReceberResumo.setIndicadorSituacaoDocumentos( DocumentosAReceberResumo.DOCUMENTO_VENCIDO); } } else{ documentosAReceberResumo.setIndicadorSituacaoDocumentos( DocumentosAReceberResumo.DOCUMENTO_A_VENCER); } documentosAReceberResumo.setQuantidadeDiasVencidos(quantidadeDiasVencido); DocumentosAReceberFaixaResumo documentosAReceberFaixaResumo = new DocumentosAReceberFaixaResumo(); //QUANTIDADE DE DOCUMENTOS if (documentosAReceberResumo.getDocumentoTipo().getId().equals(DocumentoTipo.CONTA) || documentosAReceberResumo.getDocumentoTipo().getId().equals(DocumentoTipo.GUIA_PAGAMENTO)){ documentosAReceberFaixaResumo.setQuantidadeDocumentos((Integer) dadosAcumulados[8]); if (documentosAReceberResumo.getQuantidadeDocumentos() != null && documentosAReceberResumo.getQuantidadeDocumentos() > 0) { documentosAReceberResumo.setQuantidadeDocumentos(documentosAReceberResumo.getQuantidadeDocumentos() + (Integer) dadosAcumulados[8]); } else { documentosAReceberResumo.setQuantidadeDocumentos((Integer) dadosAcumulados[8]); } } else{ documentosAReceberFaixaResumo.setQuantidadeDocumentos((Integer) dadosAcumulados[7]); if (documentosAReceberResumo.getQuantidadeDocumentos() != null && documentosAReceberResumo.getQuantidadeDocumentos() > 0) { documentosAReceberResumo.setQuantidadeDocumentos(documentosAReceberResumo.getQuantidadeDocumentos() + (Integer) dadosAcumulados[7]); } else { documentosAReceberResumo.setQuantidadeDocumentos((Integer) dadosAcumulados[7]); } } //VALOR DOS DOCUMENTOS if (documentosAReceberResumo.getDocumentoTipo().getId().equals(DocumentoTipo.CONTA)){ Conta contaParaCalculo = new Conta(); contaParaCalculo.setValorAgua((BigDecimal) dadosAcumulados[9]); contaParaCalculo.setValorEsgoto((BigDecimal) dadosAcumulados[10]); contaParaCalculo.setDebitos((BigDecimal) dadosAcumulados[11]); contaParaCalculo.setValorCreditos((BigDecimal) dadosAcumulados[12]); contaParaCalculo.setValorImposto((BigDecimal) dadosAcumulados[13]); documentosAReceberFaixaResumo.setValorDocumentos(contaParaCalculo.getValorTotalContaBigDecimal()); if (documentosAReceberResumo.getValorDocumentos() != null && !documentosAReceberResumo.getValorDocumentos().equals(BigDecimal.ZERO)) { documentosAReceberResumo.setValorDocumentos(documentosAReceberResumo.getValorDocumentos() .add(contaParaCalculo.getValorTotalContaBigDecimal())); } else { documentosAReceberResumo.setValorDocumentos(contaParaCalculo.getValorTotalContaBigDecimal()); } } else if (documentosAReceberResumo.getDocumentoTipo().getId().equals(DocumentoTipo.GUIA_PAGAMENTO)){ documentosAReceberFaixaResumo.setValorDocumentos((BigDecimal) dadosAcumulados[9]); if (documentosAReceberResumo.getValorDocumentos() != null && !documentosAReceberResumo.getValorDocumentos().equals(BigDecimal.ZERO)) { documentosAReceberResumo.setValorDocumentos(documentosAReceberResumo.getValorDocumentos() .add((BigDecimal) dadosAcumulados[9])); } else { documentosAReceberResumo.setValorDocumentos((BigDecimal) dadosAcumulados[9]); } } else{ documentosAReceberFaixaResumo.setValorDocumentos((BigDecimal) dadosAcumulados[8]); if (documentosAReceberResumo.getValorDocumentos() != null && !documentosAReceberResumo.getValorDocumentos().equals(BigDecimal.ZERO)) { documentosAReceberResumo.setValorDocumentos(documentosAReceberResumo.getValorDocumentos().add((BigDecimal) dadosAcumulados[8])); } else { documentosAReceberResumo.setValorDocumentos((BigDecimal) dadosAcumulados[8]); } if (documentosAReceberResumo.getValorDocumentosSemParcelaAtual() != null && !documentosAReceberResumo.getValorDocumentosSemParcelaAtual().equals(BigDecimal.ZERO)) { documentosAReceberResumo.setValorDocumentosSemParcelaAtual(documentosAReceberResumo.getValorDocumentosSemParcelaAtual().add((BigDecimal) dadosAcumulados[10])); } else { documentosAReceberResumo.setValorDocumentosSemParcelaAtual((BigDecimal) dadosAcumulados[10]); } } //ULTIMA ALTERACAO documentosAReceberResumo.setUltimaAlteracao(new Date()); //FAIXA FaixaDocumentosAReceber faixaDocumentosAReceber = new FaixaDocumentosAReceber(); if (documentosAReceberResumo.getDocumentoTipo().getId().equals(DocumentoTipo.CONTA)){ faixaDocumentosAReceber.setId((Integer) dadosAcumulados[14]); } else if (documentosAReceberResumo.getDocumentoTipo().getId().equals(DocumentoTipo.GUIA_PAGAMENTO)){ faixaDocumentosAReceber.setId((Integer) dadosAcumulados[10]); } else { faixaDocumentosAReceber.setId((Integer) dadosAcumulados[9]); } documentosAReceberFaixaResumo.setFaixaDocumentosAReceber(faixaDocumentosAReceber); documentosAReceberFaixaResumo.setUltimaAlteracao(new Date()); colecaoDocumentosAReceberFaixaResumo.add(documentosAReceberFaixaResumo); if (!iterator.hasNext()) { this.inserirDocumentosAReceberResumo(documentosAReceberResumo, colecaoDocumentosAReceberFaixaResumo); colecaoDocumentosAReceberFaixaResumo = new ArrayList(); } } } } private void inserirDocumentosAReceberResumo(DocumentosAReceberResumo documentosAReceberResumo, Collection<DocumentosAReceberFaixaResumo> colecaoDocumentosAReceberFaixaResumo) throws ControladorException{ Integer idDocumentosAReceberResumo = (Integer) getControladorBatch().inserirObjetoParaBatch( documentosAReceberResumo); if (colecaoDocumentosAReceberFaixaResumo != null && !colecaoDocumentosAReceberFaixaResumo.isEmpty()) { DocumentosAReceberResumo documentosAReceberResumoInserido = new DocumentosAReceberResumo(); documentosAReceberResumoInserido.setId(idDocumentosAReceberResumo); Iterator iteratorDocumentosFaixa = colecaoDocumentosAReceberFaixaResumo.iterator(); while (iteratorDocumentosFaixa.hasNext()) { DocumentosAReceberFaixaResumo documentosAReceberFaixaResumo = (DocumentosAReceberFaixaResumo) iteratorDocumentosFaixa.next(); documentosAReceberFaixaResumo.setDocumentosAReceberResumo(documentosAReceberResumoInserido); getControladorBatch().inserirObjetoParaBatch( documentosAReceberFaixaResumo); } } } /** * [UC 0982] Gerar Resumo da Receita * autor: Fl�vio Cordeiro * data: 22/02/2010 * * Este caso de uso gera o resumo da receita aberta e ser� executado * atrav�s de um batch */ public void gerarResumoReceita(int idFuncionalidadeIniciada) throws ControladorException{ int idUnidadeIniciada = 0; idUnidadeIniciada = getControladorBatch().iniciarUnidadeProcessamentoBatch( idFuncionalidadeIniciada, UnidadeProcessamento.FUNCIONALIDADE,0); try { //1. apagar dados da tabela resumo_receita this.apagarDadosResumoReceitaMesAnoArrecadacao(); SistemaParametro sistemaParametro = getControladorUtil().pesquisarParametrosDoSistema(); int anoMes = sistemaParametro.getAnoMesArrecadacao(); String mes = (anoMes+"").substring(4,6); String ano = (anoMes+"").substring(0,4); String ultimoDiaMes = Util.obterUltimoDiaMes(new Integer(mes), new Integer(ano)); String dataFinal = ultimoDiaMes+"/"+mes+"/"+ano; String dataInicial = "01/"+mes+"/"+ano; this.inserirDadosContasResumoReceita(dataInicial, dataFinal, sistemaParametro); this.inserirDadosContasHistoricoResumoReceita(dataInicial, dataFinal, sistemaParametro); this.inserirDadosContasOutrosResumoReceita(dataInicial, dataFinal, sistemaParametro); getControladorBatch().encerrarUnidadeProcessamentoBatch( null, idUnidadeIniciada, false); } catch (ControladorException e) { e.printStackTrace(); getControladorBatch().encerrarUnidadeProcessamentoBatch(e, idUnidadeIniciada, true); } } /** * [UC 0982] Gerar Resumo da Receita * autor: Fl�vio Cordeiro * data: 22/02/2010 * * Este caso de uso gera o resumo da receita aberta e ser� executado * atrav�s de um batch */ public void inserirDadosContasResumoReceita(String dataInicial, String dataFinal, SistemaParametro sistemaParametro){ try{ //[SB001] - Resumo dos Pagamentos de Contas Collection colecaoImpostos = this.pesquisarImpostoResumoPagamentoConta(Util.converteStringParaDate(dataInicial), Util.converteStringParaDate(dataFinal)); Collection colecaoContas = this.pesquisarResumoPagamentoConta(Util.converteStringParaDate(dataInicial), Util.converteStringParaDate(dataFinal)); Collection colecaoDividaAtiva = this.pesquisarDividaAtivaResumoPagamentoConta(Util.converteStringParaDate(dataInicial), Util.converteStringParaDate(dataFinal)); Collection colecaoCredito = pesquisarResumoPagamentoContaCredito(Util.converteStringParaDate(dataInicial), Util.converteStringParaDate(dataFinal)); Collection colecaoServico = pesquisarResumoPagamentoContaServico(Util.converteStringParaDate(dataInicial), Util.converteStringParaDate(dataFinal)); //---INSERIR ResumoReceitaHelper helper = null; ResumoReceita resumoReceitaInserir = null; Arrecadador arrecadador = null; Banco banco = null; ContaBancaria contaBancaria= null; GerenciaRegional gerenciaRegional = null; UnidadeNegocio unidadeNegocio = null; Localidade localidade = null; ContaContabil contabil = null; Categoria categoria = null; //apartir da colecaoContas if(colecaoContas != null && !colecaoContas.isEmpty()){ Iterator<ResumoReceitaHelper> iteratorContas = colecaoContas.iterator(); while(iteratorContas.hasNext()){ helper = iteratorContas.next(); resumoReceitaInserir = new ResumoReceita(); resumoReceitaInserir.setAnoMesReferencia(sistemaParametro.getAnoMesArrecadacao()); arrecadador = new Arrecadador(); arrecadador.setId(helper.getArrecadadorId()); contaBancaria = new ContaBancaria(); contaBancaria.setId(helper.getContaBancariaId()); banco = new Banco(); banco.setId(helper.getBancoId()); gerenciaRegional = new GerenciaRegional(); gerenciaRegional.setId(helper.getGerenciaRegionalId()); unidadeNegocio = new UnidadeNegocio(); unidadeNegocio.setId(helper.getUnidadeNegocioId()); localidade = new Localidade(); localidade.setId(helper.getLocalidadeId()); categoria = new Categoria(); categoria.setId(helper.getCategoriaId()); resumoReceitaInserir.setArrecadador(arrecadador); resumoReceitaInserir.setContaBancaria(contaBancaria); resumoReceitaInserir.setBanco(banco); resumoReceitaInserir.setGerenciaRegional(gerenciaRegional); resumoReceitaInserir.setLocalidade(localidade); resumoReceitaInserir.setDataRealizada(helper.getDataRealizacao()); resumoReceitaInserir.setUltimaAlteracao(new Date()); resumoReceitaInserir.setCategoria(categoria); resumoReceitaInserir.setUnidadeNegocio(unidadeNegocio); if(helper.getSomaAgua() != null && !helper.getSomaAgua().equals(BigDecimal.ZERO)){ contabil = new ContaContabil(); contabil.setId(new Integer(ContaContabil.RECEITA_AGUA)); resumoReceitaInserir.setContaContabil(contabil); resumoReceitaInserir.setValorReceita(helper.getSomaAgua()); resumoReceitaInserir.setId(null); getControladorUtil().inserir(resumoReceitaInserir); } if(helper.getSomaEsgoto() != null && !helper.getSomaEsgoto().equals(BigDecimal.ZERO)){ contabil = new ContaContabil(); contabil.setId(new Integer(ContaContabil.RECEITA_ESGOTO)); resumoReceitaInserir.setContaContabil(contabil); resumoReceitaInserir.setValorReceita(helper.getSomaEsgoto()); resumoReceitaInserir.setId(null); getControladorUtil().inserir(resumoReceitaInserir); } } } if(colecaoCredito != null && !colecaoCredito.isEmpty()){ Iterator<ResumoReceitaHelper> iteratorCredito = colecaoCredito.iterator(); while(iteratorCredito.hasNext()){ helper = iteratorCredito.next(); resumoReceitaInserir = new ResumoReceita(); resumoReceitaInserir.setAnoMesReferencia(sistemaParametro.getAnoMesArrecadacao()); arrecadador = new Arrecadador(); arrecadador.setId(helper.getArrecadadorId()); contaBancaria = new ContaBancaria(); contaBancaria.setId(helper.getContaBancariaId()); banco = new Banco(); banco.setId(helper.getBancoId()); gerenciaRegional = new GerenciaRegional(); gerenciaRegional.setId(helper.getGerenciaRegionalId()); unidadeNegocio = new UnidadeNegocio(); unidadeNegocio.setId(helper.getUnidadeNegocioId()); localidade = new Localidade(); localidade.setId(helper.getLocalidadeId()); categoria = new Categoria(); categoria.setId(helper.getCategoriaId()); resumoReceitaInserir.setArrecadador(arrecadador); resumoReceitaInserir.setContaBancaria(contaBancaria); resumoReceitaInserir.setBanco(banco); resumoReceitaInserir.setGerenciaRegional(gerenciaRegional); resumoReceitaInserir.setLocalidade(localidade); resumoReceitaInserir.setDataRealizada(helper.getDataRealizacao()); resumoReceitaInserir.setUltimaAlteracao(new Date()); resumoReceitaInserir.setCategoria(categoria); resumoReceitaInserir.setUnidadeNegocio(unidadeNegocio); if(helper.getSomaCredito() != null && !helper.getSomaCredito().equals(BigDecimal.ZERO)){ contabil = new ContaContabil(); contabil.setId(new Integer(ContaContabil.RECEITA_CREDITO)); resumoReceitaInserir.setContaContabil(contabil); BigDecimal valorInserir = new BigDecimal("-"+helper.getSomaCredito()); resumoReceitaInserir.setValorReceita(valorInserir); resumoReceitaInserir.setId(null); getControladorUtil().inserir(resumoReceitaInserir); } } } if(colecaoServico != null && !colecaoServico.isEmpty()){ Iterator<ResumoReceitaHelper> iteratorServico = colecaoServico.iterator(); while(iteratorServico.hasNext()){ helper = iteratorServico.next(); resumoReceitaInserir = new ResumoReceita(); resumoReceitaInserir.setAnoMesReferencia(sistemaParametro.getAnoMesArrecadacao()); arrecadador = new Arrecadador(); arrecadador.setId(helper.getArrecadadorId()); contaBancaria = new ContaBancaria(); contaBancaria.setId(helper.getContaBancariaId()); banco = new Banco(); banco.setId(helper.getBancoId()); gerenciaRegional = new GerenciaRegional(); gerenciaRegional.setId(helper.getGerenciaRegionalId()); unidadeNegocio = new UnidadeNegocio(); unidadeNegocio.setId(helper.getUnidadeNegocioId()); localidade = new Localidade(); localidade.setId(helper.getLocalidadeId()); categoria = new Categoria(); categoria.setId(helper.getCategoriaId()); resumoReceitaInserir.setArrecadador(arrecadador); resumoReceitaInserir.setContaBancaria(contaBancaria); resumoReceitaInserir.setBanco(banco); resumoReceitaInserir.setGerenciaRegional(gerenciaRegional); resumoReceitaInserir.setLocalidade(localidade); resumoReceitaInserir.setDataRealizada(helper.getDataRealizacao()); resumoReceitaInserir.setUltimaAlteracao(new Date()); resumoReceitaInserir.setCategoria(categoria); resumoReceitaInserir.setUnidadeNegocio(unidadeNegocio); if(helper.getSomaServico() != null && !helper.getSomaServico().equals(BigDecimal.ZERO)){ contabil = new ContaContabil(); //contabil.setId(new Integer(ContaContabil.RECEITA_SERVICOS)); contabil.setId(helper.getContaContabil()); resumoReceitaInserir.setContaContabil(contabil); resumoReceitaInserir.setValorReceita(helper.getSomaServico()); resumoReceitaInserir.setId(null); getControladorUtil().inserir(resumoReceitaInserir); } } } //apartir da colecaoImpostos if(colecaoImpostos != null && !colecaoImpostos.isEmpty()){ Iterator<ResumoReceitaHelper> iteratorImpostos = colecaoImpostos.iterator(); while(iteratorImpostos.hasNext()){ helper = iteratorImpostos.next(); resumoReceitaInserir = new ResumoReceita(); resumoReceitaInserir.setAnoMesReferencia(sistemaParametro.getAnoMesArrecadacao()); arrecadador = new Arrecadador(); arrecadador.setId(helper.getArrecadadorId()); contaBancaria = new ContaBancaria(); contaBancaria.setId(helper.getContaBancariaId()); banco = new Banco(); banco.setId(helper.getBancoId()); gerenciaRegional = new GerenciaRegional(); gerenciaRegional.setId(helper.getGerenciaRegionalId()); unidadeNegocio = new UnidadeNegocio(); unidadeNegocio.setId(helper.getUnidadeNegocioId()); localidade = new Localidade(); localidade.setId(helper.getLocalidadeId()); categoria = new Categoria(); categoria.setId(helper.getCategoriaId()); resumoReceitaInserir.setArrecadador(arrecadador); resumoReceitaInserir.setContaBancaria(contaBancaria); resumoReceitaInserir.setBanco(banco); resumoReceitaInserir.setGerenciaRegional(gerenciaRegional); System.out.println("categoria imposto:"+ categoria.getId()); resumoReceitaInserir.setCategoria(categoria); resumoReceitaInserir.setLocalidade(localidade); resumoReceitaInserir.setDataRealizada(helper.getDataRealizacao()); resumoReceitaInserir.setUltimaAlteracao(new Date()); resumoReceitaInserir.setUnidadeNegocio(unidadeNegocio); if(helper.getSomaImposto() != null && !helper.getSomaImposto().equals(BigDecimal.ZERO)){ contabil = new ContaContabil(); contabil.setId(new Integer(ContaContabil.RECEITA_IMPOSTOS)); resumoReceitaInserir.setContaContabil(contabil); BigDecimal valorInserir = new BigDecimal("-"+helper.getValorTotal()); resumoReceitaInserir.setValorReceita(valorInserir); resumoReceitaInserir.setId(null); getControladorUtil().inserir(resumoReceitaInserir); } } } //apartir da colecaoDividaAtiva if(colecaoDividaAtiva != null && !colecaoDividaAtiva.isEmpty()){ Iterator<ResumoReceitaHelper> iteratorDividaAtiva = colecaoDividaAtiva.iterator(); while(iteratorDividaAtiva.hasNext()){ helper = iteratorDividaAtiva.next(); resumoReceitaInserir = new ResumoReceita(); resumoReceitaInserir.setAnoMesReferencia(sistemaParametro.getAnoMesArrecadacao()); arrecadador = new Arrecadador(); arrecadador.setId(helper.getArrecadadorId()); contaBancaria = new ContaBancaria(); contaBancaria.setId(helper.getContaBancariaId()); banco = new Banco(); banco.setId(helper.getBancoId()); gerenciaRegional = new GerenciaRegional(); gerenciaRegional.setId(helper.getGerenciaRegionalId()); unidadeNegocio = new UnidadeNegocio(); unidadeNegocio.setId(helper.getUnidadeNegocioId()); localidade = new Localidade(); localidade.setId(helper.getLocalidadeId()); categoria = new Categoria(); categoria.setId(helper.getCategoriaId()); resumoReceitaInserir.setArrecadador(arrecadador); resumoReceitaInserir.setContaBancaria(contaBancaria); resumoReceitaInserir.setBanco(banco); resumoReceitaInserir.setGerenciaRegional(gerenciaRegional); resumoReceitaInserir.setLocalidade(localidade); resumoReceitaInserir.setDataRealizada(helper.getDataRealizacao()); resumoReceitaInserir.setUltimaAlteracao(new Date()); resumoReceitaInserir.setCategoria(categoria); resumoReceitaInserir.setUnidadeNegocio(unidadeNegocio); if(helper.getSomaDividaAtiva() != null && !helper.getSomaDividaAtiva().equals(BigDecimal.ZERO)){ contabil = new ContaContabil(); contabil.setId(new Integer(ContaContabil.RECEITA_DIVIDA_ATIVA)); resumoReceitaInserir.setContaContabil(contabil); resumoReceitaInserir.setValorReceita(helper.getValorTotal()); resumoReceitaInserir.setId(null); getControladorUtil().inserir(resumoReceitaInserir); } } } } catch (ControladorException e) { e.printStackTrace(); } } /** * [UC 0982] Gerar Resumo da Receita * autor: Fl�vio Cordeiro * data: 22/02/2010 * * Este caso de uso gera o resumo da receita aberta e ser� executado * atrav�s de um batch */ public void inserirDadosContasHistoricoResumoReceita(String dataInicial, String dataFinal, SistemaParametro sistemaParametro){ try{ //[SB001] - Resumo dos Pagamentos de Contas Collection colecaoImpostos = this.pesquisarImpostoHistoricoResumoPagamentoConta(Util.converteStringParaDate(dataInicial), Util.converteStringParaDate(dataFinal)); Collection colecaoContas = this.pesquisarResumoHistoricoPagamentoConta(Util.converteStringParaDate(dataInicial), Util.converteStringParaDate(dataFinal)); Collection colecaoDividaAtiva = this.pesquisarDividaAtivaHistoricoResumoPagamentoConta(Util.converteStringParaDate(dataInicial), Util.converteStringParaDate(dataFinal)); Collection colecaoCredito = pesquisarResumoHistoricoPagamentoContaCredito(Util.converteStringParaDate(dataInicial), Util.converteStringParaDate(dataFinal)); Collection colecaoServico = pesquisarResumoHistoricoPagamentoContaServico(Util.converteStringParaDate(dataInicial), Util.converteStringParaDate(dataFinal)); //---INSERIR ResumoReceitaHelper helper = null; ResumoReceita resumoReceitaInserir = null; Arrecadador arrecadador = null; Banco banco = null; ContaBancaria contaBancaria= null; GerenciaRegional gerenciaRegional = null; UnidadeNegocio unidadeNegocio = null; Localidade localidade = null; ContaContabil contabil = null; Categoria categoria = null; //apartir da colecaoContas if(colecaoContas != null && !colecaoContas.isEmpty()){ Iterator<ResumoReceitaHelper> iteratorContas = colecaoContas.iterator(); while(iteratorContas.hasNext()){ helper = iteratorContas.next(); resumoReceitaInserir = new ResumoReceita(); resumoReceitaInserir.setAnoMesReferencia(sistemaParametro.getAnoMesArrecadacao()); arrecadador = new Arrecadador(); arrecadador.setId(helper.getArrecadadorId()); contaBancaria = new ContaBancaria(); contaBancaria.setId(helper.getContaBancariaId()); banco = new Banco(); banco.setId(helper.getBancoId()); gerenciaRegional = new GerenciaRegional(); gerenciaRegional.setId(helper.getGerenciaRegionalId()); unidadeNegocio = new UnidadeNegocio(); unidadeNegocio.setId(helper.getUnidadeNegocioId()); localidade = new Localidade(); localidade.setId(helper.getLocalidadeId()); categoria = new Categoria(); categoria.setId(helper.getCategoriaId()); resumoReceitaInserir.setArrecadador(arrecadador); resumoReceitaInserir.setContaBancaria(contaBancaria); resumoReceitaInserir.setBanco(banco); resumoReceitaInserir.setGerenciaRegional(gerenciaRegional); resumoReceitaInserir.setLocalidade(localidade); resumoReceitaInserir.setDataRealizada(helper.getDataRealizacao()); resumoReceitaInserir.setUltimaAlteracao(new Date()); resumoReceitaInserir.setCategoria(categoria); resumoReceitaInserir.setUnidadeNegocio(unidadeNegocio); if(helper.getSomaAgua() != null && !helper.getSomaAgua().equals(BigDecimal.ZERO)){ contabil = new ContaContabil(); contabil.setId(new Integer(ContaContabil.RECEITA_AGUA)); resumoReceitaInserir.setContaContabil(contabil); resumoReceitaInserir.setValorReceita(helper.getSomaAgua()); resumoReceitaInserir.setId(null); getControladorUtil().inserir(resumoReceitaInserir); } if(helper.getSomaEsgoto() != null && !helper.getSomaEsgoto().equals(BigDecimal.ZERO)){ contabil = new ContaContabil(); contabil.setId(new Integer(ContaContabil.RECEITA_ESGOTO)); resumoReceitaInserir.setContaContabil(contabil); resumoReceitaInserir.setValorReceita(helper.getSomaEsgoto()); resumoReceitaInserir.setId(null); getControladorUtil().inserir(resumoReceitaInserir); } } } if(colecaoCredito != null && !colecaoCredito.isEmpty()){ Iterator<ResumoReceitaHelper> iteratorCredito = colecaoCredito.iterator(); while(iteratorCredito.hasNext()){ helper = iteratorCredito.next(); resumoReceitaInserir = new ResumoReceita(); resumoReceitaInserir.setAnoMesReferencia(sistemaParametro.getAnoMesArrecadacao()); arrecadador = new Arrecadador(); arrecadador.setId(helper.getArrecadadorId()); contaBancaria = new ContaBancaria(); contaBancaria.setId(helper.getContaBancariaId()); banco = new Banco(); banco.setId(helper.getBancoId()); gerenciaRegional = new GerenciaRegional(); gerenciaRegional.setId(helper.getGerenciaRegionalId()); unidadeNegocio = new UnidadeNegocio(); unidadeNegocio.setId(helper.getUnidadeNegocioId()); localidade = new Localidade(); localidade.setId(helper.getLocalidadeId()); categoria = new Categoria(); categoria.setId(helper.getCategoriaId()); resumoReceitaInserir.setArrecadador(arrecadador); resumoReceitaInserir.setContaBancaria(contaBancaria); resumoReceitaInserir.setBanco(banco); resumoReceitaInserir.setGerenciaRegional(gerenciaRegional); resumoReceitaInserir.setLocalidade(localidade); resumoReceitaInserir.setDataRealizada(helper.getDataRealizacao()); resumoReceitaInserir.setUltimaAlteracao(new Date()); resumoReceitaInserir.setCategoria(categoria); resumoReceitaInserir.setUnidadeNegocio(unidadeNegocio); if(helper.getSomaCredito() != null && !helper.getSomaCredito().equals(BigDecimal.ZERO)){ contabil = new ContaContabil(); contabil.setId(new Integer(ContaContabil.RECEITA_CREDITO)); resumoReceitaInserir.setContaContabil(contabil); BigDecimal valorInserir = new BigDecimal("-"+helper.getSomaCredito()); resumoReceitaInserir.setValorReceita(valorInserir); resumoReceitaInserir.setId(null); getControladorUtil().inserir(resumoReceitaInserir); } } } if(colecaoServico != null && !colecaoServico.isEmpty()){ Iterator<ResumoReceitaHelper> iteratorServico = colecaoServico.iterator(); while(iteratorServico.hasNext()){ helper = iteratorServico.next(); resumoReceitaInserir = new ResumoReceita(); resumoReceitaInserir.setAnoMesReferencia(sistemaParametro.getAnoMesArrecadacao()); arrecadador = new Arrecadador(); arrecadador.setId(helper.getArrecadadorId()); contaBancaria = new ContaBancaria(); contaBancaria.setId(helper.getContaBancariaId()); banco = new Banco(); banco.setId(helper.getBancoId()); gerenciaRegional = new GerenciaRegional(); gerenciaRegional.setId(helper.getGerenciaRegionalId()); unidadeNegocio = new UnidadeNegocio(); unidadeNegocio.setId(helper.getUnidadeNegocioId()); localidade = new Localidade(); localidade.setId(helper.getLocalidadeId()); categoria = new Categoria(); categoria.setId(helper.getCategoriaId()); resumoReceitaInserir.setArrecadador(arrecadador); resumoReceitaInserir.setContaBancaria(contaBancaria); resumoReceitaInserir.setBanco(banco); resumoReceitaInserir.setGerenciaRegional(gerenciaRegional); resumoReceitaInserir.setLocalidade(localidade); resumoReceitaInserir.setDataRealizada(helper.getDataRealizacao()); resumoReceitaInserir.setUltimaAlteracao(new Date()); resumoReceitaInserir.setCategoria(categoria); resumoReceitaInserir.setUnidadeNegocio(unidadeNegocio); if(helper.getSomaServico() != null && !helper.getSomaServico().equals(BigDecimal.ZERO)){ contabil = new ContaContabil(); // contabil.setId(new Integer(ContaContabil.RECEITA_SERVICOS)); contabil.setId(helper.getContaContabil()); resumoReceitaInserir.setContaContabil(contabil); resumoReceitaInserir.setValorReceita(helper.getSomaServico()); resumoReceitaInserir.setId(null); getControladorUtil().inserir(resumoReceitaInserir); } } } //apartir da colecaoImpostos if(colecaoImpostos != null && !colecaoImpostos.isEmpty()){ Iterator<ResumoReceitaHelper> iteratorImpostos = colecaoImpostos.iterator(); while(iteratorImpostos.hasNext()){ helper = iteratorImpostos.next(); resumoReceitaInserir = new ResumoReceita(); resumoReceitaInserir.setAnoMesReferencia(sistemaParametro.getAnoMesArrecadacao()); arrecadador = new Arrecadador(); arrecadador.setId(helper.getArrecadadorId()); contaBancaria = new ContaBancaria(); contaBancaria.setId(helper.getContaBancariaId()); banco = new Banco(); banco.setId(helper.getBancoId()); gerenciaRegional = new GerenciaRegional(); gerenciaRegional.setId(helper.getGerenciaRegionalId()); unidadeNegocio = new UnidadeNegocio(); unidadeNegocio.setId(helper.getUnidadeNegocioId()); localidade = new Localidade(); localidade.setId(helper.getLocalidadeId()); categoria = new Categoria(); categoria.setId(helper.getCategoriaId()); resumoReceitaInserir.setArrecadador(arrecadador); resumoReceitaInserir.setContaBancaria(contaBancaria); resumoReceitaInserir.setBanco(banco); resumoReceitaInserir.setGerenciaRegional(gerenciaRegional); resumoReceitaInserir.setLocalidade(localidade); resumoReceitaInserir.setDataRealizada(helper.getDataRealizacao()); resumoReceitaInserir.setUltimaAlteracao(new Date()); resumoReceitaInserir.setCategoria(categoria); resumoReceitaInserir.setUnidadeNegocio(unidadeNegocio); if(helper.getSomaImposto() != null && !helper.getSomaImposto().equals(BigDecimal.ZERO)){ contabil = new ContaContabil(); contabil.setId(new Integer(ContaContabil.RECEITA_IMPOSTOS)); resumoReceitaInserir.setContaContabil(contabil); BigDecimal valorInserir = new BigDecimal("-"+helper.getValorTotal()); resumoReceitaInserir.setValorReceita(valorInserir); System.out.println("conta contabil:"+contabil.getId().toString() + " valor:"+helper.getValorTotal()); resumoReceitaInserir.setId(null); getControladorUtil().inserir(resumoReceitaInserir); } } } //apartir da colecaoDividaAtiva if(colecaoDividaAtiva != null && !colecaoDividaAtiva.isEmpty()){ Iterator<ResumoReceitaHelper> iteratorDividaAtiva = colecaoDividaAtiva.iterator(); while(iteratorDividaAtiva.hasNext()){ helper = iteratorDividaAtiva.next(); resumoReceitaInserir = new ResumoReceita(); resumoReceitaInserir.setAnoMesReferencia(sistemaParametro.getAnoMesArrecadacao()); arrecadador = new Arrecadador(); arrecadador.setId(helper.getArrecadadorId()); contaBancaria = new ContaBancaria(); contaBancaria.setId(helper.getContaBancariaId()); banco = new Banco(); banco.setId(helper.getBancoId()); gerenciaRegional = new GerenciaRegional(); gerenciaRegional.setId(helper.getGerenciaRegionalId()); unidadeNegocio = new UnidadeNegocio(); unidadeNegocio.setId(helper.getUnidadeNegocioId()); localidade = new Localidade(); localidade.setId(helper.getLocalidadeId()); categoria = new Categoria(); categoria.setId(helper.getCategoriaId()); resumoReceitaInserir.setArrecadador(arrecadador); resumoReceitaInserir.setContaBancaria(contaBancaria); resumoReceitaInserir.setBanco(banco); resumoReceitaInserir.setGerenciaRegional(gerenciaRegional); resumoReceitaInserir.setLocalidade(localidade); resumoReceitaInserir.setDataRealizada(helper.getDataRealizacao()); resumoReceitaInserir.setUltimaAlteracao(new Date()); resumoReceitaInserir.setCategoria(categoria); resumoReceitaInserir.setUnidadeNegocio(unidadeNegocio); if(helper.getSomaDividaAtiva() != null && !helper.getSomaDividaAtiva().equals(BigDecimal.ZERO)){ contabil = new ContaContabil(); contabil.setId(new Integer(ContaContabil.RECEITA_DIVIDA_ATIVA)); resumoReceitaInserir.setContaContabil(contabil); resumoReceitaInserir.setValorReceita(helper.getValorTotal()); resumoReceitaInserir.setId(null); getControladorUtil().inserir(resumoReceitaInserir); } } } } catch (ControladorException e) { e.printStackTrace(); } } /** * [UC 0982] Gerar Resumo da Receita * autor: Fl�vio Cordeiro * data: 22/02/2010 * * Este caso de uso gera o resumo da receita aberta e ser� executado * atrav�s de um batch */ public void inserirDadosContasOutrosResumoReceita(String dataInicial, String dataFinal, SistemaParametro sistemaParametro){ try{ Collection colecaoGuias = this.pesquisarPagamentoGuiaResumoPagamentoConta(Util.converteStringParaDate(dataInicial), Util.converteStringParaDate(dataFinal)); Collection colecaoGuiasHistorico = this.pesquisarPagamentoGuiaHistoricoResumoPagamentoConta(Util.converteStringParaDate(dataInicial), Util.converteStringParaDate(dataFinal)); Collection colecaoOutrasReceitas = this.pesquisarOutrasReceitasResumoPagamentoConta(Util.converteStringParaDate(dataInicial), Util.converteStringParaDate(dataFinal)); Collection colecaoOutrasReceitasHistorico = this.pesquisarOutrasReceitasHistoricoResumoPagamentoConta(Util.converteStringParaDate(dataInicial), Util.converteStringParaDate(dataFinal)); Collection colecaoNaoClassificado = this.pesquisarPagamentoNaoClassificadoResumoPagamentoConta(Util.converteStringParaDate(dataInicial), Util.converteStringParaDate(dataFinal)); Collection colecaoNaoClassificadoHistorico = this.pesquisarPagamentoNaoClassificadoHistoricoResumoPagamentoConta(Util.converteStringParaDate(dataInicial), Util.converteStringParaDate(dataFinal)); Collection colecaoDebitoACobrar = this.pesquisarPagamentoDebitoCobrarResumoPagamentoConta(Util.converteStringParaDate(dataInicial), Util.converteStringParaDate(dataFinal)); Collection colecaoDebitoACobrarHistorico = this.pesquisarPagamentoDebitoCobrarHistoricoResumoPagamentoConta(Util.converteStringParaDate(dataInicial), Util.converteStringParaDate(dataFinal)); Collection colecaoHistoricoSemCorrespondente = this.pesquisarPagamentoHistoricoSemCorrespondenteResumoPagamentoConta(Util.converteStringParaDate(dataInicial), Util.converteStringParaDate(dataFinal)); Collection colecaoDevolucaoAvisoBancario = this.pesquisarDevolucaoAvisoBancarioResumo(Util.converteStringParaDate(dataInicial), Util.converteStringParaDate(dataFinal)); Collection colecaoDevolucaoAvisoBancarioHistorico = this.pesquisarDevolucaoAvisoBancarioHistoricoResumo(Util.converteStringParaDate(dataInicial), Util.converteStringParaDate(dataFinal)); //---INSERIR ResumoReceitaHelper helper = null; ResumoReceita resumoReceitaInserir = null; Arrecadador arrecadador = null; Banco banco = null; ContaBancaria contaBancaria= null; GerenciaRegional gerenciaRegional = null; UnidadeNegocio unidadeNegocio = null; Localidade localidade = null; ContaContabil contabil = null; Categoria categoria = null; //apartir if(colecaoGuias != null && !colecaoGuias.isEmpty()){ Iterator<ResumoReceitaHelper> iteratorContas = colecaoGuias.iterator(); while(iteratorContas.hasNext()){ helper = iteratorContas.next(); resumoReceitaInserir = new ResumoReceita(); resumoReceitaInserir.setAnoMesReferencia(sistemaParametro.getAnoMesArrecadacao()); arrecadador = new Arrecadador(); arrecadador.setId(helper.getArrecadadorId()); contaBancaria = new ContaBancaria(); contaBancaria.setId(helper.getContaBancariaId()); banco = new Banco(); banco.setId(helper.getBancoId()); gerenciaRegional = new GerenciaRegional(); gerenciaRegional.setId(helper.getGerenciaRegionalId()); unidadeNegocio = new UnidadeNegocio(); unidadeNegocio.setId(helper.getUnidadeNegocioId()); localidade = new Localidade(); localidade.setId(helper.getLocalidadeId()); categoria = new Categoria(); categoria.setId(helper.getCategoriaId()); resumoReceitaInserir.setArrecadador(arrecadador); resumoReceitaInserir.setContaBancaria(contaBancaria); resumoReceitaInserir.setBanco(banco); resumoReceitaInserir.setGerenciaRegional(gerenciaRegional); resumoReceitaInserir.setLocalidade(localidade); resumoReceitaInserir.setDataRealizada(helper.getDataRealizacao()); resumoReceitaInserir.setUltimaAlteracao(new Date()); resumoReceitaInserir.setCategoria(categoria); resumoReceitaInserir.setUnidadeNegocio(unidadeNegocio); if(helper.getSomaPagamentoGuia() != null && !helper.getSomaPagamentoGuia().equals(BigDecimal.ZERO)){ contabil = new ContaContabil(); contabil.setId(new Integer(helper.getContaContabil())); resumoReceitaInserir.setContaContabil(contabil); resumoReceitaInserir.setValorReceita(helper.getSomaPagamentoGuia()); resumoReceitaInserir.setId(null); getControladorUtil().inserir(resumoReceitaInserir); } } } if(colecaoGuiasHistorico != null && !colecaoGuiasHistorico.isEmpty()){ Iterator<ResumoReceitaHelper> iteratorContas = colecaoGuiasHistorico.iterator(); while(iteratorContas.hasNext()){ helper = iteratorContas.next(); resumoReceitaInserir = new ResumoReceita(); resumoReceitaInserir.setAnoMesReferencia(sistemaParametro.getAnoMesArrecadacao()); arrecadador = new Arrecadador(); arrecadador.setId(helper.getArrecadadorId()); contaBancaria = new ContaBancaria(); contaBancaria.setId(helper.getContaBancariaId()); banco = new Banco(); banco.setId(helper.getBancoId()); gerenciaRegional = new GerenciaRegional(); gerenciaRegional.setId(helper.getGerenciaRegionalId()); unidadeNegocio = new UnidadeNegocio(); unidadeNegocio.setId(helper.getUnidadeNegocioId()); localidade = new Localidade(); localidade.setId(helper.getLocalidadeId()); categoria = new Categoria(); categoria.setId(helper.getCategoriaId()); resumoReceitaInserir.setArrecadador(arrecadador); resumoReceitaInserir.setContaBancaria(contaBancaria); resumoReceitaInserir.setBanco(banco); resumoReceitaInserir.setGerenciaRegional(gerenciaRegional); resumoReceitaInserir.setLocalidade(localidade); resumoReceitaInserir.setDataRealizada(helper.getDataRealizacao()); resumoReceitaInserir.setUnidadeNegocio(unidadeNegocio); if(helper.getSomaPagamentoGuia() != null && !helper.getSomaPagamentoGuia().equals(BigDecimal.ZERO)){ contabil = new ContaContabil(); contabil.setId(new Integer(helper.getContaContabil())); resumoReceitaInserir.setContaContabil(contabil); resumoReceitaInserir.setValorReceita(helper.getSomaPagamentoGuia()); resumoReceitaInserir.setId(null); getControladorUtil().inserir(resumoReceitaInserir); } } } //apartir if(colecaoOutrasReceitas != null && !colecaoOutrasReceitas.isEmpty()){ Iterator<ResumoReceitaHelper> iteratorOutrasReceitas = colecaoOutrasReceitas.iterator(); while(iteratorOutrasReceitas.hasNext()){ helper = iteratorOutrasReceitas.next(); resumoReceitaInserir = new ResumoReceita(); resumoReceitaInserir.setAnoMesReferencia(sistemaParametro.getAnoMesArrecadacao()); arrecadador = new Arrecadador(); arrecadador.setId(helper.getArrecadadorId()); contaBancaria = new ContaBancaria(); contaBancaria.setId(helper.getContaBancariaId()); banco = new Banco(); banco.setId(helper.getBancoId()); gerenciaRegional = new GerenciaRegional(); gerenciaRegional.setId(helper.getGerenciaRegionalId()); unidadeNegocio = new UnidadeNegocio(); unidadeNegocio.setId(helper.getUnidadeNegocioId()); localidade = new Localidade(); localidade.setId(helper.getLocalidadeId()); categoria = new Categoria(); categoria.setId(helper.getCategoriaId()); resumoReceitaInserir.setArrecadador(arrecadador); resumoReceitaInserir.setContaBancaria(contaBancaria); resumoReceitaInserir.setBanco(banco); resumoReceitaInserir.setGerenciaRegional(gerenciaRegional); resumoReceitaInserir.setLocalidade(localidade); resumoReceitaInserir.setDataRealizada(helper.getDataRealizacao()); resumoReceitaInserir.setUltimaAlteracao(new Date()); resumoReceitaInserir.setCategoria(categoria); resumoReceitaInserir.setUnidadeNegocio(unidadeNegocio); if(helper.getSomaOutrasReceitas() != null && !helper.getSomaOutrasReceitas().equals(BigDecimal.ZERO)){ contabil = new ContaContabil(); contabil.setId(new Integer(ContaContabil.OUTRAS_RECEITAS)); resumoReceitaInserir.setContaContabil(contabil); resumoReceitaInserir.setValorReceita(helper.getValorTotal()); resumoReceitaInserir.setId(null); getControladorUtil().inserir(resumoReceitaInserir); } } } //apartir if(colecaoOutrasReceitasHistorico != null && !colecaoOutrasReceitasHistorico.isEmpty()){ Iterator<ResumoReceitaHelper> iteratorOutrasReceitas = colecaoOutrasReceitasHistorico.iterator(); System.out.println("INICIO OUTRAS RECEITAS HISTORICO\n"); while(iteratorOutrasReceitas.hasNext()){ helper = iteratorOutrasReceitas.next(); resumoReceitaInserir = new ResumoReceita(); resumoReceitaInserir.setAnoMesReferencia(sistemaParametro.getAnoMesArrecadacao()); arrecadador = new Arrecadador(); arrecadador.setId(helper.getArrecadadorId()); contaBancaria = new ContaBancaria(); contaBancaria.setId(helper.getContaBancariaId()); banco = new Banco(); banco.setId(helper.getBancoId()); gerenciaRegional = new GerenciaRegional(); gerenciaRegional.setId(helper.getGerenciaRegionalId()); unidadeNegocio = new UnidadeNegocio(); unidadeNegocio.setId(helper.getUnidadeNegocioId()); localidade = new Localidade(); localidade.setId(helper.getLocalidadeId()); categoria = new Categoria(); categoria.setId(helper.getCategoriaId()); resumoReceitaInserir.setArrecadador(arrecadador); resumoReceitaInserir.setContaBancaria(contaBancaria); resumoReceitaInserir.setBanco(banco); resumoReceitaInserir.setGerenciaRegional(gerenciaRegional); resumoReceitaInserir.setLocalidade(localidade); resumoReceitaInserir.setDataRealizada(helper.getDataRealizacao()); resumoReceitaInserir.setUltimaAlteracao(new Date()); resumoReceitaInserir.setCategoria(categoria); resumoReceitaInserir.setUnidadeNegocio(unidadeNegocio); if(helper.getSomaOutrasReceitas() != null && !helper.getSomaOutrasReceitas().equals(BigDecimal.ZERO)){ contabil = new ContaContabil(); contabil.setId(helper.getContaContabil()); resumoReceitaInserir.setContaContabil(contabil); resumoReceitaInserir.setValorReceita(helper.getValorTotal()); resumoReceitaInserir.setId(null); getControladorUtil().inserir(resumoReceitaInserir); } } } //apartir if(colecaoNaoClassificado != null && !colecaoNaoClassificado.isEmpty()){ Iterator<ResumoReceitaHelper> iteratorNaoClassificados = colecaoNaoClassificado.iterator(); while(iteratorNaoClassificados.hasNext()){ helper = iteratorNaoClassificados.next(); resumoReceitaInserir = new ResumoReceita(); resumoReceitaInserir.setAnoMesReferencia(sistemaParametro.getAnoMesArrecadacao()); arrecadador = new Arrecadador(); arrecadador.setId(helper.getArrecadadorId()); contaBancaria = new ContaBancaria(); contaBancaria.setId(helper.getContaBancariaId()); banco = new Banco(); banco.setId(helper.getBancoId()); gerenciaRegional = new GerenciaRegional(); gerenciaRegional.setId(helper.getGerenciaRegionalId()); unidadeNegocio = new UnidadeNegocio(); unidadeNegocio.setId(helper.getUnidadeNegocioId()); localidade = new Localidade(); localidade.setId(helper.getLocalidadeId()); categoria = new Categoria(); categoria.setId(helper.getCategoriaId()); resumoReceitaInserir.setArrecadador(arrecadador); resumoReceitaInserir.setContaBancaria(contaBancaria); resumoReceitaInserir.setBanco(banco); resumoReceitaInserir.setGerenciaRegional(gerenciaRegional); resumoReceitaInserir.setLocalidade(localidade); resumoReceitaInserir.setDataRealizada(helper.getDataRealizacao()); resumoReceitaInserir.setUltimaAlteracao(new Date()); resumoReceitaInserir.setCategoria(categoria); resumoReceitaInserir.setUnidadeNegocio(unidadeNegocio); if(helper.getSomaPagamentoNaoClassificado() != null && !helper.getSomaPagamentoNaoClassificado().equals(BigDecimal.ZERO)){ contabil = new ContaContabil(); contabil.setId(new Integer(ContaContabil.PAGAMENTO_NAO_CLASSIFICADO)); resumoReceitaInserir.setContaContabil(contabil); resumoReceitaInserir.setValorReceita(helper.getValorTotal()); resumoReceitaInserir.setId(null); getControladorUtil().inserir(resumoReceitaInserir); } } } // apartir if(colecaoNaoClassificadoHistorico != null && !colecaoNaoClassificadoHistorico.isEmpty()){ Iterator<ResumoReceitaHelper> iteratorNaoClassificados = colecaoNaoClassificadoHistorico.iterator(); while(iteratorNaoClassificados.hasNext()){ helper = iteratorNaoClassificados.next(); resumoReceitaInserir = new ResumoReceita(); resumoReceitaInserir.setAnoMesReferencia(sistemaParametro.getAnoMesArrecadacao()); arrecadador = new Arrecadador(); arrecadador.setId(helper.getArrecadadorId()); contaBancaria = new ContaBancaria(); contaBancaria.setId(helper.getContaBancariaId()); banco = new Banco(); banco.setId(helper.getBancoId()); gerenciaRegional = new GerenciaRegional(); gerenciaRegional.setId(helper.getGerenciaRegionalId()); unidadeNegocio = new UnidadeNegocio(); unidadeNegocio.setId(helper.getUnidadeNegocioId()); localidade = new Localidade(); localidade.setId(helper.getLocalidadeId()); categoria = new Categoria(); categoria.setId(helper.getCategoriaId()); resumoReceitaInserir.setArrecadador(arrecadador); resumoReceitaInserir.setContaBancaria(contaBancaria); resumoReceitaInserir.setBanco(banco); resumoReceitaInserir.setGerenciaRegional(gerenciaRegional); resumoReceitaInserir.setLocalidade(localidade); resumoReceitaInserir.setDataRealizada(helper.getDataRealizacao()); resumoReceitaInserir.setUltimaAlteracao(new Date()); resumoReceitaInserir.setCategoria(categoria); resumoReceitaInserir.setUnidadeNegocio(unidadeNegocio); if(helper.getSomaPagamentoNaoClassificado() != null && !helper.getSomaPagamentoNaoClassificado().equals(BigDecimal.ZERO)){ contabil = new ContaContabil(); contabil.setId(new Integer(ContaContabil.HISTORICO_PAG_NAO_CLASSIFICADO)); resumoReceitaInserir.setContaContabil(contabil); resumoReceitaInserir.setValorReceita(helper.getValorTotal()); resumoReceitaInserir.setId(null); getControladorUtil().inserir(resumoReceitaInserir); } } } //apartir if(colecaoDebitoACobrar != null && !colecaoDebitoACobrar.isEmpty()){ Iterator<ResumoReceitaHelper> iteratorDebitoCobrar = colecaoDebitoACobrar.iterator(); while(iteratorDebitoCobrar.hasNext()){ helper = iteratorDebitoCobrar.next(); resumoReceitaInserir = new ResumoReceita(); resumoReceitaInserir.setAnoMesReferencia(sistemaParametro.getAnoMesArrecadacao()); arrecadador = new Arrecadador(); arrecadador.setId(helper.getArrecadadorId()); contaBancaria = new ContaBancaria(); contaBancaria.setId(helper.getContaBancariaId()); banco = new Banco(); banco.setId(helper.getBancoId()); gerenciaRegional = new GerenciaRegional(); gerenciaRegional.setId(helper.getGerenciaRegionalId()); unidadeNegocio = new UnidadeNegocio(); unidadeNegocio.setId(helper.getUnidadeNegocioId()); localidade = new Localidade(); localidade.setId(helper.getLocalidadeId()); categoria = new Categoria(); categoria.setId(helper.getCategoriaId()); resumoReceitaInserir.setArrecadador(arrecadador); resumoReceitaInserir.setContaBancaria(contaBancaria); resumoReceitaInserir.setBanco(banco); resumoReceitaInserir.setGerenciaRegional(gerenciaRegional); resumoReceitaInserir.setLocalidade(localidade); resumoReceitaInserir.setDataRealizada(helper.getDataRealizacao()); resumoReceitaInserir.setUltimaAlteracao(new Date()); resumoReceitaInserir.setCategoria(categoria); resumoReceitaInserir.setUnidadeNegocio(unidadeNegocio); if(helper.getSomaPagamentoDebCobrar() != null && !helper.getSomaPagamentoDebCobrar().equals(BigDecimal.ZERO)){ System.out.println("contaCOntabil:"+ helper.getContaContabil()); contabil = new ContaContabil(); contabil.setId(new Integer(helper.getContaContabil())); //contabil.setId(new Integer("18")); resumoReceitaInserir.setContaContabil(contabil); resumoReceitaInserir.setValorReceita(helper.getSomaPagamentoDebCobrar()); resumoReceitaInserir.setId(null); getControladorUtil().inserir(resumoReceitaInserir); } } } // apartir if(colecaoDebitoACobrarHistorico != null && !colecaoDebitoACobrarHistorico.isEmpty()){ Iterator<ResumoReceitaHelper> iteratorDebitoCobrar = colecaoDebitoACobrarHistorico.iterator(); while(iteratorDebitoCobrar.hasNext()){ helper = iteratorDebitoCobrar.next(); resumoReceitaInserir = new ResumoReceita(); resumoReceitaInserir.setAnoMesReferencia(sistemaParametro.getAnoMesArrecadacao()); arrecadador = new Arrecadador(); arrecadador.setId(helper.getArrecadadorId()); contaBancaria = new ContaBancaria(); contaBancaria.setId(helper.getContaBancariaId()); banco = new Banco(); banco.setId(helper.getBancoId()); gerenciaRegional = new GerenciaRegional(); gerenciaRegional.setId(helper.getGerenciaRegionalId()); unidadeNegocio = new UnidadeNegocio(); unidadeNegocio.setId(helper.getUnidadeNegocioId()); localidade = new Localidade(); localidade.setId(helper.getLocalidadeId()); categoria = new Categoria(); categoria.setId(helper.getCategoriaId()); resumoReceitaInserir.setArrecadador(arrecadador); resumoReceitaInserir.setContaBancaria(contaBancaria); resumoReceitaInserir.setBanco(banco); resumoReceitaInserir.setGerenciaRegional(gerenciaRegional); resumoReceitaInserir.setLocalidade(localidade); resumoReceitaInserir.setDataRealizada(helper.getDataRealizacao()); resumoReceitaInserir.setUltimaAlteracao(new Date()); resumoReceitaInserir.setCategoria(categoria); resumoReceitaInserir.setUnidadeNegocio(unidadeNegocio); if(helper.getSomaPagamentoDebCobrar() != null && !helper.getSomaPagamentoDebCobrar().equals(BigDecimal.ZERO)){ contabil = new ContaContabil(); contabil.setId(new Integer(helper.getContaContabil())); //contabil.setId(new Integer("18")); resumoReceitaInserir.setContaContabil(contabil); resumoReceitaInserir.setValorReceita(helper.getSomaPagamentoDebCobrar()); resumoReceitaInserir.setId(null); getControladorUtil().inserir(resumoReceitaInserir); } } } // apartir if(colecaoHistoricoSemCorrespondente != null && !colecaoHistoricoSemCorrespondente.isEmpty()){ Iterator<ResumoReceitaHelper> iteratorSemCorrespondente = colecaoHistoricoSemCorrespondente.iterator(); while(iteratorSemCorrespondente.hasNext()){ helper = iteratorSemCorrespondente.next(); resumoReceitaInserir = new ResumoReceita(); resumoReceitaInserir.setAnoMesReferencia(sistemaParametro.getAnoMesArrecadacao()); arrecadador = new Arrecadador(); arrecadador.setId(helper.getArrecadadorId()); contaBancaria = new ContaBancaria(); contaBancaria.setId(helper.getContaBancariaId()); banco = new Banco(); banco.setId(helper.getBancoId()); gerenciaRegional = new GerenciaRegional(); gerenciaRegional.setId(helper.getGerenciaRegionalId()); unidadeNegocio = new UnidadeNegocio(); unidadeNegocio.setId(helper.getUnidadeNegocioId()); localidade = new Localidade(); localidade.setId(helper.getLocalidadeId()); categoria = new Categoria(); categoria.setId(helper.getCategoriaId()); resumoReceitaInserir.setArrecadador(arrecadador); resumoReceitaInserir.setContaBancaria(contaBancaria); resumoReceitaInserir.setBanco(banco); resumoReceitaInserir.setGerenciaRegional(gerenciaRegional); resumoReceitaInserir.setLocalidade(localidade); resumoReceitaInserir.setDataRealizada(helper.getDataRealizacao()); resumoReceitaInserir.setUltimaAlteracao(new Date()); resumoReceitaInserir.setCategoria(categoria); resumoReceitaInserir.setUnidadeNegocio(unidadeNegocio); if(helper.getSomaPagamentoHistoricoSemCorrespondente() != null && !helper.getSomaPagamentoHistoricoSemCorrespondente().equals(BigDecimal.ZERO)){ contabil = new ContaContabil(); contabil.setId(new Integer(ContaContabil.PAG_HISTORICO_SEM_CORRESPONDENTE)); resumoReceitaInserir.setContaContabil(contabil); resumoReceitaInserir.setValorReceita(helper.getValorTotal()); resumoReceitaInserir.setId(null); getControladorUtil().inserir(resumoReceitaInserir); } } } //apartir if(colecaoDevolucaoAvisoBancario != null && !colecaoDevolucaoAvisoBancario.isEmpty()){ Iterator<ResumoReceitaHelper> iteratorDevolucaoAvisoBancario = colecaoDevolucaoAvisoBancario.iterator(); while(iteratorDevolucaoAvisoBancario.hasNext()){ helper = iteratorDevolucaoAvisoBancario.next(); resumoReceitaInserir = new ResumoReceita(); resumoReceitaInserir.setAnoMesReferencia(sistemaParametro.getAnoMesArrecadacao()); arrecadador = new Arrecadador(); arrecadador.setId(helper.getArrecadadorId()); contaBancaria = new ContaBancaria(); contaBancaria.setId(helper.getContaBancariaId()); banco = new Banco(); banco.setId(helper.getBancoId()); gerenciaRegional = new GerenciaRegional(); gerenciaRegional.setId(helper.getGerenciaRegionalId()); unidadeNegocio = new UnidadeNegocio(); unidadeNegocio.setId(helper.getUnidadeNegocioId()); localidade = new Localidade(); localidade.setId(helper.getLocalidadeId()); categoria = new Categoria(); categoria.setId(helper.getCategoriaId()); resumoReceitaInserir.setArrecadador(arrecadador); resumoReceitaInserir.setContaBancaria(contaBancaria); resumoReceitaInserir.setBanco(banco); resumoReceitaInserir.setGerenciaRegional(gerenciaRegional); resumoReceitaInserir.setLocalidade(localidade); resumoReceitaInserir.setDataRealizada(helper.getDataRealizacao()); resumoReceitaInserir.setUltimaAlteracao(new Date()); resumoReceitaInserir.setCategoria(categoria); resumoReceitaInserir.setUnidadeNegocio(unidadeNegocio); if(helper.getSomaPagamentoNaoClassificado() != null && !helper.getSomaPagamentoNaoClassificado().equals(BigDecimal.ZERO)){ contabil = new ContaContabil(); contabil.setId(new Integer(ContaContabil.DEVOLUCAO_AVISO_BANCARIO)); resumoReceitaInserir.setContaContabil(contabil); resumoReceitaInserir.setValorReceita(new BigDecimal("-"+helper.getValorTotal())); resumoReceitaInserir.setId(null); getControladorUtil().inserir(resumoReceitaInserir); } } } //apartir if(colecaoDevolucaoAvisoBancarioHistorico != null && !colecaoDevolucaoAvisoBancarioHistorico.isEmpty()){ Iterator<ResumoReceitaHelper> iteratorDevolucaoAvisoBancario = colecaoDevolucaoAvisoBancarioHistorico.iterator(); while(iteratorDevolucaoAvisoBancario.hasNext()){ helper = iteratorDevolucaoAvisoBancario.next(); resumoReceitaInserir = new ResumoReceita(); resumoReceitaInserir.setAnoMesReferencia(sistemaParametro.getAnoMesArrecadacao()); arrecadador = new Arrecadador(); arrecadador.setId(helper.getArrecadadorId()); contaBancaria = new ContaBancaria(); contaBancaria.setId(helper.getContaBancariaId()); banco = new Banco(); banco.setId(helper.getBancoId()); gerenciaRegional = new GerenciaRegional(); gerenciaRegional.setId(helper.getGerenciaRegionalId()); unidadeNegocio = new UnidadeNegocio(); unidadeNegocio.setId(helper.getUnidadeNegocioId()); localidade = new Localidade(); localidade.setId(helper.getLocalidadeId()); categoria = new Categoria(); categoria.setId(helper.getCategoriaId()); resumoReceitaInserir.setArrecadador(arrecadador); resumoReceitaInserir.setContaBancaria(contaBancaria); resumoReceitaInserir.setBanco(banco); resumoReceitaInserir.setGerenciaRegional(gerenciaRegional); resumoReceitaInserir.setLocalidade(localidade); resumoReceitaInserir.setDataRealizada(helper.getDataRealizacao()); resumoReceitaInserir.setUltimaAlteracao(new Date()); resumoReceitaInserir.setCategoria(categoria); resumoReceitaInserir.setUnidadeNegocio(unidadeNegocio); if(helper.getSomaPagamentoNaoClassificado() != null && !helper.getSomaPagamentoNaoClassificado().equals(BigDecimal.ZERO)){ contabil = new ContaContabil(); contabil.setId(new Integer(ContaContabil.DEVOLUCAO_AVISO_BANCARIO)); resumoReceitaInserir.setContaContabil(contabil); resumoReceitaInserir.setValorReceita(new BigDecimal("-"+helper.getValorTotal())); resumoReceitaInserir.setId(null); getControladorUtil().inserir(resumoReceitaInserir); } } } } catch (ControladorException e) { e.printStackTrace(); } } /** * [UC 0982] Gerar Resumo da Receita * * 1.O sistema apaga os dados da tabela RESUMO_RECEITA referente ao M�s/Ano da * arrecada��o que est� aberta. * * Autor: Fl�vio Cordeiro */ public void apagarDadosResumoReceitaMesAnoArrecadacao(){ try { SistemaParametro sistemaParametro = getControladorUtil().pesquisarParametrosDoSistema(); FiltroResumoReceita filtroResumoReceita = new FiltroResumoReceita(); filtroResumoReceita.adicionarParametro( new ParametroSimples(FiltroResumoReceita.ANO_MES_REFERENCIA, sistemaParametro.getAnoMesArrecadacao())); Collection<ResumoReceita> colecaoResumoReceita = getControladorUtil().pesquisar(filtroResumoReceita, ResumoReceita.class.getName()); if(!colecaoResumoReceita.isEmpty()){ Iterator iter = colecaoResumoReceita.iterator(); ResumoReceita resumoReceita = null; while (iter.hasNext()) { resumoReceita = (ResumoReceita)iter.next(); getControladorUtil().remover(resumoReceita); } } } catch (ControladorException e) { e.printStackTrace(); } } /** * * @param dataInicial * @param dataFinal * @return * @throws ErroRepositorioException * * Autor: Fl�vio Cordeiro * [UC 0982] Gerar Resumo da Receita * [SB 0001] Resumo dos Pagamentos de Contas * */ public Collection pesquisarResumoPagamentoConta(Date dataInicial, Date dataFinal) throws ControladorException{ Collection colecaoPesquisada = null; Collection colecaoRetorno = new ArrayList(); try { colecaoPesquisada = repositorioFinanceiro.pesquisarResumoPagamentoConta(dataInicial, dataFinal); if(!colecaoPesquisada.isEmpty()){ Object[] objeto = null; ResumoReceitaHelper helper = null; Iterator iteratorObjetos = colecaoPesquisada.iterator(); while (iteratorObjetos.hasNext()) { objeto = (Object[]) iteratorObjetos.next(); helper = new ResumoReceitaHelper(); if(objeto[0] != null){ helper.setGerenciaRegionalId((Integer)objeto[0]); } if(objeto[1] != null){ helper.setUnidadeNegocioId((Integer)objeto[1]); } if(objeto[2] != null){ helper.setLocalidadeId((Integer)objeto[2]); } if(objeto[3] != null){ helper.setCategoriaId((Integer)objeto[3]); } if(objeto[4] != null){ helper.setArrecadadorId((Integer)objeto[4]); } if(objeto[5] != null){ helper.setBancoId((Integer)objeto[5]); } if(objeto[6] != null){ helper.setContaBancariaId((Integer)objeto[6]); } if(objeto[7] != null){ helper.setDataRealizacao((Timestamp)objeto[7]); } if(objeto[8] != null){ helper.setSomaAgua((BigDecimal)objeto[8]); } if(objeto[9] != null){ helper.setSomaEsgoto((BigDecimal)objeto[9]); } colecaoRetorno.add(helper); } } } catch (ErroRepositorioException e) { e.printStackTrace(); } return colecaoRetorno; } /** * * @param dataInicial * @param dataFinal * @return * @throws ErroRepositorioException * * Autor: Fl�vio Cordeiro * [UC 0982] Gerar Resumo da Receita * [SB 0001] Resumo dos Pagamentos de Contas * */ public Collection pesquisarResumoPagamentoContaCredito(Date dataInicial, Date dataFinal) throws ControladorException{ Collection colecaoPesquisada = null; Collection colecaoRetorno = new ArrayList(); try { colecaoPesquisada = repositorioFinanceiro.pesquisarResumoPagamentoContaCredito(dataInicial, dataFinal); if(!colecaoPesquisada.isEmpty()){ Object[] objeto = null; ResumoReceitaHelper helper = null; Iterator iteratorObjetos = colecaoPesquisada.iterator(); while (iteratorObjetos.hasNext()) { objeto = (Object[]) iteratorObjetos.next(); helper = new ResumoReceitaHelper(); if(objeto[0] != null){ helper.setGerenciaRegionalId((Integer)objeto[0]); } if(objeto[1] != null){ helper.setUnidadeNegocioId((Integer)objeto[1]); } if(objeto[2] != null){ helper.setLocalidadeId((Integer)objeto[2]); } if(objeto[3] != null){ helper.setCategoriaId((Integer)objeto[3]); } if(objeto[4] != null){ helper.setArrecadadorId((Integer)objeto[4]); } if(objeto[5] != null){ helper.setBancoId((Integer)objeto[5]); } if(objeto[6] != null){ helper.setContaBancariaId((Integer)objeto[6]); } if(objeto[7] != null){ helper.setDataRealizacao((Timestamp)objeto[7]); } if(objeto[8] != null){ helper.setSomaCredito((BigDecimal)objeto[8]); } colecaoRetorno.add(helper); } } } catch (ErroRepositorioException e) { e.printStackTrace(); } return colecaoRetorno; } /** * * @param dataInicial * @param dataFinal * @return * @throws ErroRepositorioException * * Autor: Fl�vio Cordeiro * [UC 0982] Gerar Resumo da Receita * [SB 0001] Resumo dos Pagamentos de Contas * */ public Collection pesquisarResumoHistoricoPagamentoContaCredito(Date dataInicial, Date dataFinal) throws ControladorException{ Collection colecaoPesquisada = null; Collection colecaoRetorno = new ArrayList(); try { colecaoPesquisada = repositorioFinanceiro.pesquisarResumoHistoricoPagamentoContaCredito(dataInicial, dataFinal); if(!colecaoPesquisada.isEmpty()){ Object[] objeto = null; ResumoReceitaHelper helper = null; Iterator iteratorObjetos = colecaoPesquisada.iterator(); while (iteratorObjetos.hasNext()) { objeto = (Object[]) iteratorObjetos.next(); helper = new ResumoReceitaHelper(); if(objeto[0] != null){ helper.setGerenciaRegionalId((Integer)objeto[0]); } if(objeto[1] != null){ helper.setUnidadeNegocioId((Integer)objeto[1]); } if(objeto[2] != null){ helper.setLocalidadeId((Integer)objeto[2]); } if(objeto[3] != null){ helper.setCategoriaId((Integer)objeto[3]); } if(objeto[4] != null){ helper.setArrecadadorId((Integer)objeto[4]); } if(objeto[5] != null){ helper.setBancoId((Integer)objeto[5]); } if(objeto[6] != null){ helper.setContaBancariaId((Integer)objeto[6]); } if(objeto[7] != null){ helper.setDataRealizacao((Timestamp)objeto[7]); } if(objeto[8] != null){ helper.setSomaCredito((BigDecimal)objeto[8]); } colecaoRetorno.add(helper); } } } catch (ErroRepositorioException e) { e.printStackTrace(); } return colecaoRetorno; } /** * * @param dataInicial * @param dataFinal * @return * @throws ErroRepositorioException * * Autor: Fl�vio Cordeiro * [UC 0982] Gerar Resumo da Receita * [SB 0001] Resumo dos Pagamentos de Contas * */ public Collection pesquisarResumoPagamentoContaServico(Date dataInicial, Date dataFinal) throws ControladorException{ Collection colecaoPesquisada = null; Collection colecaoRetorno = new ArrayList(); try { colecaoPesquisada = repositorioFinanceiro.pesquisarResumoPagamentoContaServico(dataInicial, dataFinal); if(!colecaoPesquisada.isEmpty()){ Object[] objeto = null; ResumoReceitaHelper helper = null; Iterator iteratorObjetos = colecaoPesquisada.iterator(); while (iteratorObjetos.hasNext()) { objeto = (Object[]) iteratorObjetos.next(); helper = new ResumoReceitaHelper(); if(objeto[0] != null){ helper.setGerenciaRegionalId((Integer)objeto[0]); } if(objeto[1] != null){ helper.setUnidadeNegocioId((Integer)objeto[1]); } if(objeto[2] != null){ helper.setLocalidadeId((Integer)objeto[2]); } if(objeto[3] != null){ helper.setCategoriaId((Integer)objeto[3]); } if(objeto[4] != null){ helper.setArrecadadorId((Integer)objeto[4]); } if(objeto[5] != null){ helper.setBancoId((Integer)objeto[5]); } if(objeto[6] != null){ helper.setContaBancariaId((Integer)objeto[6]); } if(objeto[7] != null){ helper.setDataRealizacao((Timestamp)objeto[7]); } if(objeto[8] != null){ helper.setSomaServico((BigDecimal)objeto[8]); } if(objeto[9] != null){ helper.setContaContabil((Integer)objeto[9]); } colecaoRetorno.add(helper); } } } catch (ErroRepositorioException e) { e.printStackTrace(); } return colecaoRetorno; } /** * * @param dataInicial * @param dataFinal * @return * @throws ErroRepositorioException * * Autor: Fl�vio Cordeiro * [UC 0982] Gerar Resumo da Receita * [SB 0001] Resumo dos Pagamentos de Contas * */ public Collection pesquisarResumoHistoricoPagamentoContaServico(Date dataInicial, Date dataFinal) throws ControladorException{ Collection colecaoPesquisada = null; Collection colecaoRetorno = new ArrayList(); try { colecaoPesquisada = repositorioFinanceiro.pesquisarResumoHistoricoPagamentoContaServico(dataInicial, dataFinal); if(!colecaoPesquisada.isEmpty()){ Object[] objeto = null; ResumoReceitaHelper helper = null; Iterator iteratorObjetos = colecaoPesquisada.iterator(); while (iteratorObjetos.hasNext()) { objeto = (Object[]) iteratorObjetos.next(); helper = new ResumoReceitaHelper(); if(objeto[0] != null){ helper.setGerenciaRegionalId((Integer)objeto[0]); } if(objeto[1] != null){ helper.setUnidadeNegocioId((Integer)objeto[1]); } if(objeto[2] != null){ helper.setLocalidadeId((Integer)objeto[2]); } if(objeto[3] != null){ helper.setCategoriaId((Integer)objeto[3]); } if(objeto[4] != null){ helper.setArrecadadorId((Integer)objeto[4]); } if(objeto[5] != null){ helper.setBancoId((Integer)objeto[5]); } if(objeto[6] != null){ helper.setContaBancariaId((Integer)objeto[6]); } if(objeto[7] != null){ helper.setDataRealizacao((Timestamp)objeto[7]); } if(objeto[8] != null){ helper.setSomaServico((BigDecimal)objeto[8]); } if ( objeto[9] != null ){ helper.setContaContabil((Integer)objeto[9]); } colecaoRetorno.add(helper); } } } catch (ErroRepositorioException e) { e.printStackTrace(); } return colecaoRetorno; } /** * * @param dataInicial * @param dataFinal * @return * @throws ErroRepositorioException * * Autor: Fl�vio Cordeiro * [UC 0982] Gerar Resumo da Receita * [SB 0001] Resumo dos Pagamentos de Contas * */ public Collection pesquisarImpostoResumoPagamentoConta(Date dataInicial, Date dataFinal) throws ControladorException{ Collection colecaoPesquisada = null; Collection colecaoRetorno = new ArrayList(); Collection colecaoAgrupada = new ArrayList(); List<ResumoReceitaHelper> quebra = new ArrayList<ResumoReceitaHelper>(); try { colecaoPesquisada = repositorioFinanceiro.pesquisarImpostoResumoPagamentoConta(dataInicial, dataFinal); if(!colecaoPesquisada.isEmpty()){ Object[] objeto = null; ResumoReceitaHelper helper = null; Iterator iteratorObjetos = colecaoPesquisada.iterator(); while (iteratorObjetos.hasNext()) { objeto = (Object[]) iteratorObjetos.next(); helper = new ResumoReceitaHelper(); if(objeto[0] != null){ helper.setGerenciaRegionalId((Integer)objeto[0]); } if(objeto[1] != null){ helper.setUnidadeNegocioId((Integer)objeto[1]); } if(objeto[2] != null){ helper.setLocalidadeId((Integer)objeto[2]); } if(objeto[3] != null){ helper.setImovelId((Integer)objeto[3]); } if(objeto[4] != null){ helper.setDataRealizacao((Timestamp)objeto[4]); } if(objeto[5] != null){ helper.setLocalidadeNome((String)objeto[5]); } if(objeto[6] != null){ helper.setSomaImposto((BigDecimal)objeto[6]); } if(objeto[7] != null){ helper.setContaBancariaId((Integer)objeto[7]); } if(objeto[8] != null){ helper.setBancoId((Integer)objeto[8]); } if(objeto[9] != null){ helper.setArrecadadorId((Integer)objeto[9]); } //dividir valores por categoria if(objeto[6] != null){ Collection<ImovelSubcategoria> colecaoImovelSubCategoria = new ArrayList(); if(objeto[3] != null && !objeto[3].equals("")){ colecaoImovelSubCategoria = getControladorImovel().pesquisarCategoriasImovel((Integer)objeto[3]); }else{ ImovelSubcategoria imovelSubcategoria = new ImovelSubcategoria(); ImovelSubcategoriaPK imovelSubcategoriaPK = new ImovelSubcategoriaPK(); Subcategoria subcategoria = new Subcategoria(); Categoria categoria = new Categoria(); categoria.setId(Categoria.RESIDENCIAL); categoria.setQuantidadeEconomiasCategoria(1); subcategoria.setCategoria(categoria); imovelSubcategoriaPK.setSubcategoria(subcategoria); imovelSubcategoria.setComp_id(imovelSubcategoriaPK); colecaoImovelSubCategoria.add(imovelSubcategoria); } BigDecimal valorCategoria = BigDecimal.ZERO; if(!colecaoImovelSubCategoria.isEmpty()){ Iterator iteratorSubCategoria = colecaoImovelSubCategoria.iterator(); Collection colecaoCategoria = new ArrayList(); while(iteratorSubCategoria.hasNext()){ ImovelSubcategoria imovelSubcategoria = (ImovelSubcategoria)iteratorSubCategoria.next(); Categoria categoria = imovelSubcategoria.getComp_id().getSubcategoria().getCategoria(); colecaoCategoria.add(categoria); } Collection colecaoValores = getControladorImovel().obterValorPorCategoria( colecaoCategoria, helper.getSomaImposto()); Iterator iteratorCategoria = colecaoCategoria.iterator(); Categoria categoriaImovel = null; ResumoReceitaHelper resumoHelper = null; Iterator iteValorCategoria = colecaoValores.iterator(); while(iteratorCategoria.hasNext() && iteValorCategoria.hasNext()){ categoriaImovel = (Categoria)iteratorCategoria.next(); // valorCategoria = (BigDecimal)colecaoValores.iterator().next(); valorCategoria = (BigDecimal)iteValorCategoria.next(); resumoHelper = new ResumoReceitaHelper(helper); resumoHelper.setCategoriaId(categoriaImovel.getId()); resumoHelper.setSomaImposto(valorCategoria); colecaoRetorno.add(resumoHelper); } } } } if ( colecaoRetorno != null && !colecaoRetorno.isEmpty() ){ Iterator iteColRetorno = colecaoRetorno.iterator(); while ( iteColRetorno.hasNext() ){ ResumoReceitaHelper resumoHelper = (ResumoReceitaHelper)iteColRetorno.next(); // Verificamos se o objeto ja possue uma quebra cadastrada if (quebra.contains(resumoHelper)) { int posicao = quebra.indexOf(resumoHelper); ResumoReceitaHelper jaCadastrado = (ResumoReceitaHelper) quebra.get(posicao); jaCadastrado.setValorTotal(jaCadastrado.getValorTotal().add(resumoHelper.retornaValorTotal())); } else { resumoHelper.setValorTotal(resumoHelper.retornaValorTotal()); quebra.add(resumoHelper); } //-------------------------------------- } } // Agrupar Valores // colecaoAgrupada = agruparDadosColecaoResumoreceita(colecaoRetorno); colecaoAgrupada = quebra; } } catch (ErroRepositorioException e) { e.printStackTrace(); } return colecaoAgrupada; } /** * * @param dataInicial * @param dataFinal * @return * @throws ErroRepositorioException * * Autor: Fl�vio Cordeiro * [UC 0982] Gerar Resumo da Receita * [SB 0001] Resumo dos Pagamentos de Contas * */ public Collection pesquisarImpostoHistoricoResumoPagamentoConta(Date dataInicial, Date dataFinal) throws ControladorException{ Collection colecaoPesquisada = null; Collection colecaoRetorno = new ArrayList(); Collection colecaoAgrupada = new ArrayList(); List<ResumoReceitaHelper> quebra = new ArrayList<ResumoReceitaHelper>(); try { colecaoPesquisada = repositorioFinanceiro.pesquisarImpostoHistoricoResumoPagamentoConta(dataInicial, dataFinal); if(!colecaoPesquisada.isEmpty()){ Object[] objeto = null; ResumoReceitaHelper helper = null; Iterator iteratorObjetos = colecaoPesquisada.iterator(); while (iteratorObjetos.hasNext()) { objeto = (Object[]) iteratorObjetos.next(); helper = new ResumoReceitaHelper(); if(objeto[0] != null){ helper.setGerenciaRegionalId((Integer)objeto[0]); } if(objeto[1] != null){ helper.setUnidadeNegocioId((Integer)objeto[1]); } if(objeto[2] != null){ helper.setLocalidadeId((Integer)objeto[2]); } if(objeto[3] != null){ helper.setImovelId((Integer)objeto[3]); } if(objeto[4] != null){ helper.setDataRealizacao((Timestamp)objeto[4]); } if(objeto[5] != null){ helper.setLocalidadeNome((String)objeto[5]); } if(objeto[6] != null){ helper.setSomaImposto((BigDecimal)objeto[6]); } if(objeto[7] != null){ helper.setContaBancariaId((Integer)objeto[7]); } if(objeto[8] != null){ helper.setBancoId((Integer)objeto[8]); } if(objeto[9] != null){ helper.setArrecadadorId((Integer)objeto[9]); } //dividir valores por categoria if(helper.getSomaImposto() != null && objeto[3] != null){ Collection<ImovelSubcategoria> colecaoImovelSubCategoria = new ArrayList(); if(objeto[3] != null && !objeto[3].equals("")){ colecaoImovelSubCategoria = getControladorImovel().pesquisarCategoriasImovel((Integer)objeto[3]); }else{ ImovelSubcategoria imovelSubcategoria = new ImovelSubcategoria(); ImovelSubcategoriaPK imovelSubcategoriaPK = new ImovelSubcategoriaPK(); Subcategoria subcategoria = new Subcategoria(); Categoria categoria = new Categoria(); categoria.setId(Categoria.RESIDENCIAL); categoria.setQuantidadeEconomiasCategoria(1); subcategoria.setCategoria(categoria); imovelSubcategoriaPK.setSubcategoria(subcategoria); imovelSubcategoria.setComp_id(imovelSubcategoriaPK); colecaoImovelSubCategoria.add(imovelSubcategoria); } BigDecimal valorCategoria = BigDecimal.ZERO; if(!colecaoImovelSubCategoria.isEmpty()){ Iterator iteratorSubCategoria = colecaoImovelSubCategoria.iterator(); Collection colecaoCategoria = new ArrayList(); while(iteratorSubCategoria.hasNext()){ ImovelSubcategoria imovelSubcategoria = (ImovelSubcategoria)iteratorSubCategoria.next(); Categoria categoria = imovelSubcategoria.getComp_id().getSubcategoria().getCategoria(); colecaoCategoria.add(categoria); } Collection colecaoValores = getControladorImovel().obterValorPorCategoria( colecaoCategoria, helper.getSomaImposto()); Iterator iteratorCategoria = colecaoCategoria.iterator(); Categoria categoriaImovel = null; ResumoReceitaHelper resumoHelper = null; Iterator iteValorCategoria = colecaoValores.iterator(); while(iteratorCategoria.hasNext() && iteValorCategoria.hasNext()){ categoriaImovel = (Categoria)iteratorCategoria.next(); // valorCategoria = (BigDecimal)colecaoValores.iterator().next(); valorCategoria = (BigDecimal)iteValorCategoria.next(); resumoHelper = new ResumoReceitaHelper(helper); resumoHelper.setCategoriaId(categoriaImovel.getId()); resumoHelper.setSomaImposto(valorCategoria); colecaoRetorno.add(resumoHelper); } } } } if ( colecaoRetorno != null && !colecaoRetorno.isEmpty() ){ Iterator iteColRetorno = colecaoRetorno.iterator(); while ( iteColRetorno.hasNext() ){ ResumoReceitaHelper resumoHelper = (ResumoReceitaHelper)iteColRetorno.next(); // Verificamos se o objeto ja possue uma quebra cadastrada if (quebra.contains(resumoHelper)) { int posicao = quebra.indexOf(resumoHelper); ResumoReceitaHelper jaCadastrado = (ResumoReceitaHelper) quebra.get(posicao); jaCadastrado.setValorTotal(jaCadastrado.getValorTotal().add(resumoHelper.retornaValorTotal())); } else { resumoHelper.setValorTotal(resumoHelper.retornaValorTotal()); quebra.add(resumoHelper); } //-------------------------------------- } } // Agrupar Valores // colecaoAgrupada = agruparDadosColecaoResumoreceita(colecaoRetorno); colecaoAgrupada = quebra; } } catch (ErroRepositorioException e) { e.printStackTrace(); } return colecaoAgrupada; } /** * * @param dataInicial * @param dataFinal * @return * @throws ErroRepositorioException * * Autor: Fl�vio Cordeiro * [UC 0982] Gerar Resumo da Receita * [SB 0001] Resumo dos Pagamentos de Contas * */ public Collection pesquisarDividaAtivaResumoPagamentoConta(Date dataInicial, Date dataFinal) throws ControladorException{ Collection colecaoPesquisada = null; Collection colecaoRetorno = new ArrayList(); Collection colecaoAgrupada = new ArrayList(); List<ResumoReceitaHelper> quebra = new ArrayList<ResumoReceitaHelper>(); try { colecaoPesquisada = repositorioFinanceiro.pesquisarDividaAtivaResumoPagamentoConta(dataInicial, dataFinal); if(!colecaoPesquisada.isEmpty()){ Object[] objeto = null; ResumoReceitaHelper helper = null; Iterator iteratorObjetos = colecaoPesquisada.iterator(); while (iteratorObjetos.hasNext()) { objeto = (Object[]) iteratorObjetos.next(); helper = new ResumoReceitaHelper(); if(objeto[0] != null){ helper.setGerenciaRegionalId((Integer)objeto[0]); } if(objeto[1] != null){ helper.setUnidadeNegocioId((Integer)objeto[1]); } if(objeto[2] != null){ helper.setLocalidadeId((Integer)objeto[2]); } if(objeto[3] != null){ helper.setImovelId((Integer)objeto[3]); } if(objeto[4] != null){ helper.setDataRealizacao((Timestamp)objeto[4]); } if(objeto[5] != null){ helper.setSomaDividaAtiva((BigDecimal)objeto[5]); } if(objeto[6] != null){ helper.setContaBancariaId((Integer)objeto[6]); } if(objeto[7] != null){ helper.setBancoId((Integer)objeto[7]); } if(objeto[8] != null){ helper.setArrecadadorId((Integer)objeto[8]); } //dividir valores por categoria if(objeto[6] != null){ Collection<ImovelSubcategoria> colecaoImovelSubCategoria = new ArrayList(); if(objeto[3] != null && !objeto[3].equals("")){ colecaoImovelSubCategoria = getControladorImovel().pesquisarCategoriasImovel((Integer)objeto[3]); }else{ ImovelSubcategoria imovelSubcategoria = new ImovelSubcategoria(); ImovelSubcategoriaPK imovelSubcategoriaPK = new ImovelSubcategoriaPK(); Subcategoria subcategoria = new Subcategoria(); Categoria categoria = new Categoria(); categoria.setId(Categoria.RESIDENCIAL); categoria.setQuantidadeEconomiasCategoria(1); subcategoria.setCategoria(categoria); imovelSubcategoriaPK.setSubcategoria(subcategoria); imovelSubcategoria.setComp_id(imovelSubcategoriaPK); colecaoImovelSubCategoria.add(imovelSubcategoria); } BigDecimal valorCategoria = BigDecimal.ZERO; if(!colecaoImovelSubCategoria.isEmpty()){ Iterator iteratorSubCategoria = colecaoImovelSubCategoria.iterator(); Collection colecaoCategoria = new ArrayList(); while(iteratorSubCategoria.hasNext()){ ImovelSubcategoria imovelSubcategoria = (ImovelSubcategoria)iteratorSubCategoria.next(); Categoria categoria = imovelSubcategoria.getComp_id().getSubcategoria().getCategoria(); colecaoCategoria.add(categoria); } Collection colecaoValores = getControladorImovel().obterValorPorCategoria( colecaoCategoria, helper.getSomaDividaAtiva()); Iterator iteratorCategoria = colecaoCategoria.iterator(); Categoria categoriaImovel = null; ResumoReceitaHelper resumoHelper = null; Iterator iteValorCategoria = colecaoValores.iterator(); while(iteratorCategoria.hasNext() && iteValorCategoria.hasNext()){ categoriaImovel = (Categoria)iteratorCategoria.next(); // valorCategoria = (BigDecimal)colecaoValores.iterator().next(); valorCategoria = (BigDecimal)iteValorCategoria.next(); resumoHelper = new ResumoReceitaHelper(helper); resumoHelper.setCategoriaId(categoriaImovel.getId()); resumoHelper.setSomaDividaAtiva(valorCategoria); colecaoRetorno.add(resumoHelper); } } } } if ( colecaoRetorno != null && !colecaoRetorno.isEmpty() ){ Iterator iteColRetorno = colecaoRetorno.iterator(); while ( iteColRetorno.hasNext() ){ ResumoReceitaHelper resumoHelper = (ResumoReceitaHelper)iteColRetorno.next(); // Verificamos se o objeto ja possue uma quebra cadastrada if (quebra.contains(resumoHelper)) { int posicao = quebra.indexOf(resumoHelper); ResumoReceitaHelper jaCadastrado = (ResumoReceitaHelper) quebra.get(posicao); jaCadastrado.setValorTotal(jaCadastrado.getValorTotal().add(resumoHelper.retornaValorTotal())); } else { resumoHelper.setValorTotal(resumoHelper.retornaValorTotal()); quebra.add(resumoHelper); } //-------------------------------------- } } // Agrupar Valores // colecaoAgrupada = agruparDadosColecaoResumoreceita(colecaoRetorno); colecaoAgrupada = quebra; } } catch (ErroRepositorioException e) { e.printStackTrace(); } return colecaoAgrupada; } /** * * @param dataInicial * @param dataFinal * @return * @throws ErroRepositorioException * * Autor: Fl�vio Cordeiro * [UC 0982] Gerar Resumo da Receita * [SB 0001] Resumo dos Pagamentos de Contas * */ public Collection pesquisarDividaAtivaHistoricoResumoPagamentoConta(Date dataInicial, Date dataFinal) throws ControladorException{ Collection colecaoPesquisada = null; Collection colecaoRetorno = new ArrayList(); Collection colecaoAgrupada = new ArrayList(); List<ResumoReceitaHelper> quebra = new ArrayList<ResumoReceitaHelper>(); try { colecaoPesquisada = repositorioFinanceiro.pesquisarDividaAtivaHistoricoResumoPagamentoConta(dataInicial, dataFinal); if(!colecaoPesquisada.isEmpty()){ Object[] objeto = null; ResumoReceitaHelper helper = null; Iterator iteratorObjetos = colecaoPesquisada.iterator(); while (iteratorObjetos.hasNext()) { objeto = (Object[]) iteratorObjetos.next(); helper = new ResumoReceitaHelper(); if(objeto[0] != null){ helper.setGerenciaRegionalId((Integer)objeto[0]); } if(objeto[1] != null){ helper.setUnidadeNegocioId((Integer)objeto[1]); } if(objeto[2] != null){ helper.setLocalidadeId((Integer)objeto[2]); } if(objeto[3] != null){ helper.setImovelId((Integer)objeto[3]); } if(objeto[4] != null){ helper.setDataRealizacao((Timestamp)objeto[4]); } if(objeto[5] != null){ helper.setSomaDividaAtiva((BigDecimal)objeto[5]); } if(objeto[6] != null){ helper.setContaBancariaId((Integer)objeto[6]); } if(objeto[7] != null){ helper.setBancoId((Integer)objeto[7]); } if(objeto[8] != null){ helper.setArrecadadorId((Integer)objeto[8]); } //dividir valores por categoria if(objeto[5] != null && objeto[3] != null){ Collection<ImovelSubcategoria> colecaoImovelSubCategoria = new ArrayList(); if(objeto[3] != null && !objeto[3].equals("")){ colecaoImovelSubCategoria = getControladorImovel().pesquisarCategoriasImovel((Integer)objeto[3]); }else{ ImovelSubcategoria imovelSubcategoria = new ImovelSubcategoria(); ImovelSubcategoriaPK imovelSubcategoriaPK = new ImovelSubcategoriaPK(); Subcategoria subcategoria = new Subcategoria(); Categoria categoria = new Categoria(); categoria.setId(Categoria.RESIDENCIAL); categoria.setQuantidadeEconomiasCategoria(1); subcategoria.setCategoria(categoria); imovelSubcategoriaPK.setSubcategoria(subcategoria); imovelSubcategoria.setComp_id(imovelSubcategoriaPK); colecaoImovelSubCategoria.add(imovelSubcategoria); } BigDecimal valorCategoria = BigDecimal.ZERO; if(!colecaoImovelSubCategoria.isEmpty()){ Iterator iteratorSubCategoria = colecaoImovelSubCategoria.iterator(); Collection colecaoCategoria = new ArrayList(); while(iteratorSubCategoria.hasNext()){ ImovelSubcategoria imovelSubcategoria = (ImovelSubcategoria)iteratorSubCategoria.next(); Categoria categoria = imovelSubcategoria.getComp_id().getSubcategoria().getCategoria(); colecaoCategoria.add(categoria); } Collection colecaoValores = getControladorImovel().obterValorPorCategoria( colecaoCategoria, (BigDecimal)objeto[5]); Iterator iteratorCategoria = colecaoCategoria.iterator(); Categoria categoriaImovel = null; ResumoReceitaHelper resumoHelper = null; Iterator iteValorCategoria = colecaoValores.iterator(); while(iteratorCategoria.hasNext() && iteValorCategoria.hasNext()){ categoriaImovel = (Categoria)iteratorCategoria.next(); // valorCategoria = (BigDecimal)colecaoValores.iterator().next(); valorCategoria = (BigDecimal)iteValorCategoria.next(); resumoHelper = new ResumoReceitaHelper(helper); resumoHelper.setCategoriaId(categoriaImovel.getId()); resumoHelper.setSomaDividaAtiva(valorCategoria); resumoHelper.setCategoriaId(categoriaImovel.getId()); colecaoRetorno.add(resumoHelper); } } } } if ( colecaoRetorno != null && !colecaoRetorno.isEmpty() ){ Iterator iteColRetorno = colecaoRetorno.iterator(); while ( iteColRetorno.hasNext() ){ ResumoReceitaHelper resumoHelper = (ResumoReceitaHelper)iteColRetorno.next(); // Verificamos se o objeto ja possue uma quebra cadastrada if (quebra.contains(resumoHelper)) { int posicao = quebra.indexOf(resumoHelper); ResumoReceitaHelper jaCadastrado = (ResumoReceitaHelper) quebra.get(posicao); jaCadastrado.setValorTotal(jaCadastrado.getValorTotal().add(resumoHelper.retornaValorTotal())); } else { resumoHelper.setValorTotal(resumoHelper.retornaValorTotal()); quebra.add(resumoHelper); } //-------------------------------------- } } // Agrupar Valores // colecaoAgrupada = agruparDadosColecaoResumoreceita(colecaoRetorno); colecaoAgrupada = quebra; } } catch (ErroRepositorioException e) { e.printStackTrace(); } return colecaoAgrupada; } /** * * @param dataInicial * @param dataFinal * @return * @throws ErroRepositorioException * * Autor: Fl�vio Cordeiro * [UC 0982] Gerar Resumo da Receita * [SB 0001] Resumo dos Pagamentos de Contas * */ public Collection pesquisarResumoHistoricoPagamentoConta(Date dataInicial, Date dataFinal) throws ControladorException{ Collection colecaoPesquisada = null; Collection colecaoRetorno = new ArrayList(); try { colecaoPesquisada = repositorioFinanceiro.pesquisarResumoHistoricoPagamentoConta(dataInicial, dataFinal); if(!colecaoPesquisada.isEmpty()){ Object[] objeto = null; ResumoReceitaHelper helper = null; Iterator iteratorObjetos = colecaoPesquisada.iterator(); while (iteratorObjetos.hasNext()) { objeto = (Object[]) iteratorObjetos.next(); helper = new ResumoReceitaHelper(); if(objeto[0] != null){ helper.setGerenciaRegionalId((Integer)objeto[0]); } if(objeto[1] != null){ helper.setUnidadeNegocioId((Integer)objeto[1]); } if(objeto[2] != null){ helper.setLocalidadeId((Integer)objeto[2]); } if(objeto[3] != null){ helper.setCategoriaId((Integer)objeto[3]); } if(objeto[4] != null){ helper.setArrecadadorId((Integer)objeto[4]); } if(objeto[5] != null){ helper.setContaBancariaId((Integer)objeto[5]); } if(objeto[6] != null){ helper.setBancoId((Integer)objeto[6]); } if(objeto[7] != null){ helper.setDataRealizacao((Timestamp)objeto[7]); } if(objeto[8] != null){ helper.setSomaAgua((BigDecimal)objeto[8]); } if(objeto[9] != null){ helper.setSomaEsgoto((BigDecimal)objeto[9]); } colecaoRetorno.add(helper); } } } catch (ErroRepositorioException e) { e.printStackTrace(); } return colecaoRetorno; } /** * * @param dataInicial * @param dataFinal * @return * @throws ErroRepositorioException * * Autor: Fl�vio Cordeiro * [UC 0982] Gerar Resumo da Receita * [SB 0001] Resumo dos Pagamentos de Contas * */ public Collection pesquisarOutrasReceitasResumoPagamentoConta(Date dataInicial, Date dataFinal) throws ControladorException{ Collection colecaoPesquisada = null; Collection colecaoRetorno = new ArrayList(); Collection colecaoAgrupada = new ArrayList(); List<ResumoReceitaHelper> quebra = new ArrayList<ResumoReceitaHelper>(); try { colecaoPesquisada = repositorioFinanceiro.pesquisarOutrasReceitasResumoPagamentoConta(dataInicial, dataFinal); if(!colecaoPesquisada.isEmpty()){ Object[] objeto = null; ResumoReceitaHelper helper = null; Iterator iteratorObjetos = colecaoPesquisada.iterator(); while (iteratorObjetos.hasNext()) { objeto = (Object[]) iteratorObjetos.next(); helper = new ResumoReceitaHelper(); if(objeto[0] != null){ helper.setGerenciaRegionalId((Integer)objeto[0]); } if(objeto[1] != null){ helper.setUnidadeNegocioId((Integer)objeto[1]); } if(objeto[2] != null){ helper.setLocalidadeId((Integer)objeto[2]); } if(objeto[3] != null){ helper.setImovelId((Integer)objeto[3]); } if(objeto[4] != null){ helper.setDataRealizacao((Timestamp)objeto[4]); } if(objeto[5] != null){ helper.setSomaOutrasReceitas((BigDecimal)objeto[5]); } if(objeto[6] != null){ helper.setContaBancariaId((Integer)objeto[6]); } if(objeto[7] != null){ helper.setBancoId((Integer)objeto[7]); } if(objeto[8] != null){ helper.setArrecadadorId((Integer)objeto[8]); } if(objeto[9] != null){ helper.setCategoriaId((Integer)objeto[9]); } //dividir valores por categoria if(objeto[5] != null && objeto[3] != null){ Collection<ImovelSubcategoria> colecaoImovelSubCategoria = new ArrayList(); if(objeto[3] != null && !objeto[3].equals("")){ colecaoImovelSubCategoria = getControladorImovel().pesquisarCategoriasImovel((Integer)objeto[3]); }else{ ImovelSubcategoria imovelSubcategoria = new ImovelSubcategoria(); ImovelSubcategoriaPK imovelSubcategoriaPK = new ImovelSubcategoriaPK(); Subcategoria subcategoria = new Subcategoria(); Categoria categoria = new Categoria(); categoria.setId(Categoria.RESIDENCIAL); categoria.setQuantidadeEconomiasCategoria(1); subcategoria.setCategoria(categoria); imovelSubcategoriaPK.setSubcategoria(subcategoria); imovelSubcategoria.setComp_id(imovelSubcategoriaPK); colecaoImovelSubCategoria.add(imovelSubcategoria); } BigDecimal valorCategoria = BigDecimal.ZERO; if(!colecaoImovelSubCategoria.isEmpty()){ Iterator iteratorSubCategoria = colecaoImovelSubCategoria.iterator(); Collection colecaoCategoria = new ArrayList(); while(iteratorSubCategoria.hasNext()){ ImovelSubcategoria imovelSubcategoria = (ImovelSubcategoria)iteratorSubCategoria.next(); Categoria categoria = imovelSubcategoria.getComp_id().getSubcategoria().getCategoria(); colecaoCategoria.add(categoria); } Collection colecaoValores = getControladorImovel().obterValorPorCategoria( colecaoCategoria, (BigDecimal)objeto[5]); Iterator iteratorCategoria = colecaoCategoria.iterator(); Categoria categoriaImovel = null; ResumoReceitaHelper resumoHelper = null; Iterator iteValorCategoria = colecaoValores.iterator(); while(iteratorCategoria.hasNext() && iteValorCategoria.hasNext()){ categoriaImovel = (Categoria)iteratorCategoria.next(); // valorCategoria = (BigDecimal)colecaoValores.iterator().next(); valorCategoria = (BigDecimal)iteValorCategoria.next(); resumoHelper = new ResumoReceitaHelper(helper); resumoHelper.setCategoriaId(categoriaImovel.getId()); resumoHelper.setSomaOutrasReceitas(valorCategoria); colecaoRetorno.add(resumoHelper); } } } } if ( colecaoRetorno != null && !colecaoRetorno.isEmpty() ){ Iterator iteColRetorno = colecaoRetorno.iterator(); while ( iteColRetorno.hasNext() ){ ResumoReceitaHelper resumoHelper = (ResumoReceitaHelper)iteColRetorno.next(); // Verificamos se o objeto ja possue uma quebra cadastrada if (quebra.contains(resumoHelper)) { int posicao = quebra.indexOf(resumoHelper); ResumoReceitaHelper jaCadastrado = (ResumoReceitaHelper) quebra.get(posicao); jaCadastrado.setValorTotal(jaCadastrado.getValorTotal().add(resumoHelper.retornaValorTotal())); } else { resumoHelper.setValorTotal(resumoHelper.retornaValorTotal()); quebra.add(resumoHelper); } //-------------------------------------- } } // Agrupar Valores // colecaoAgrupada = agruparDadosColecaoResumoreceita(colecaoRetorno); colecaoAgrupada = quebra; } } catch (ErroRepositorioException e) { e.printStackTrace(); } return colecaoAgrupada; } /** * * @param dataInicial * @param dataFinal * @return * @throws ErroRepositorioException * * Autor: Fl�vio Cordeiro * [UC 0982] Gerar Resumo da Receita * [SB 0001] Resumo dos Pagamentos de Contas * */ public Collection pesquisarPagamentoGuiaResumoPagamentoConta(Date dataInicial, Date dataFinal) throws ControladorException{ Collection colecaoPesquisada = null; Collection colecaoRetorno = new ArrayList(); try { colecaoPesquisada = repositorioFinanceiro.pesquisarPagamentoGuiaResumoPagamentoConta(dataInicial, dataFinal); if(!colecaoPesquisada.isEmpty()){ Object[] objeto = null; ResumoReceitaHelper helper = null; Iterator iteratorObjetos = colecaoPesquisada.iterator(); while (iteratorObjetos.hasNext()) { objeto = (Object[]) iteratorObjetos.next(); helper = new ResumoReceitaHelper(); if(objeto[0] != null){ helper.setGerenciaRegionalId((Integer)objeto[0]); } if(objeto[1] != null){ helper.setUnidadeNegocioId((Integer)objeto[1]); } if(objeto[2] != null){ helper.setLocalidadeId((Integer)objeto[2]); } if(objeto[3] != null){ helper.setCategoriaId((Integer)objeto[3]); } if(objeto[4] != null){ helper.setDataRealizacao((Timestamp)objeto[4]); } if(objeto[5] != null){ helper.setSomaPagamentoGuia((BigDecimal)objeto[5]); } if(objeto[6] != null){ helper.setContaBancariaId((Integer)objeto[6]); } if(objeto[7] != null){ helper.setBancoId((Integer)objeto[7]); } if(objeto[8] != null){ helper.setArrecadadorId((Integer)objeto[8]); } if(objeto[9] != null){ helper.setContaContabil((Integer)objeto[9]); } colecaoRetorno.add(helper); } } } catch (ErroRepositorioException e) { e.printStackTrace(); } return colecaoRetorno; } /** * * @param dataInicial * @param dataFinal * @return * @throws ErroRepositorioException * * Autor: Fl�vio Cordeiro * [UC 0982] Gerar Resumo da Receita * [SB 0001] Resumo dos Pagamentos de Contas * */ public Collection pesquisarPagamentoGuiaHistoricoResumoPagamentoConta(Date dataInicial, Date dataFinal) throws ControladorException{ Collection colecaoPesquisada = null; Collection colecaoRetorno = new ArrayList(); try { colecaoPesquisada = repositorioFinanceiro.pesquisarPagamentoGuiaHistoricoResumoPagamentoConta(dataInicial, dataFinal); if(!colecaoPesquisada.isEmpty()){ Object[] objeto = null; ResumoReceitaHelper helper = null; Iterator iteratorObjetos = colecaoPesquisada.iterator(); while (iteratorObjetos.hasNext()) { objeto = (Object[]) iteratorObjetos.next(); helper = new ResumoReceitaHelper(); if(objeto[0] != null){ helper.setGerenciaRegionalId((Integer)objeto[0]); } if(objeto[1] != null){ helper.setUnidadeNegocioId((Integer)objeto[1]); } if(objeto[2] != null){ helper.setLocalidadeId((Integer)objeto[2]); } if(objeto[3] != null){ helper.setCategoriaId((Integer)objeto[3]); } if(objeto[4] != null){ helper.setDataRealizacao((Timestamp)objeto[4]); } if(objeto[5] != null){ helper.setSomaPagamentoGuia((BigDecimal)objeto[5]); } if(objeto[6] != null){ helper.setContaBancariaId((Integer)objeto[6]); } if(objeto[7] != null){ helper.setBancoId((Integer)objeto[7]); } if(objeto[8] != null){ helper.setArrecadadorId((Integer)objeto[8]); } if (objeto[9] != null){ helper.setContaContabil((Integer)objeto[9]); } colecaoRetorno.add(helper); } } } catch (ErroRepositorioException e) { e.printStackTrace(); } return colecaoRetorno; } /** * * @param dataInicial * @param dataFinal * @return * @throws ErroRepositorioException * * Autor: Fl�vio Cordeiro * [UC 0982] Gerar Resumo da Receita * [SB 0001] Resumo dos Pagamentos de Contas * */ public Collection pesquisarPagamentoNaoClassificadoResumoPagamentoConta(Date dataInicial, Date dataFinal) throws ControladorException{ Collection colecaoPesquisada = null; Collection colecaoRetorno = new ArrayList(); Collection colecaoAgrupada = new ArrayList(); List<ResumoReceitaHelper> quebra = new ArrayList<ResumoReceitaHelper>(); //------------------------------------------ try { colecaoPesquisada = repositorioFinanceiro.pesquisarPagamentoNaoClassificadoResumoPagamentoConta(dataInicial, dataFinal); if(!colecaoPesquisada.isEmpty()){ Object[] objeto = null; ResumoReceitaHelper helper = null; Iterator iteratorObjetos = colecaoPesquisada.iterator(); while (iteratorObjetos.hasNext()) { // ResumoReceitaHelper resumoHelper = null; objeto = (Object[]) iteratorObjetos.next(); helper = new ResumoReceitaHelper(); if(objeto[0] != null){ helper.setGerenciaRegionalId((Integer)objeto[0]); } if(objeto[1] != null){ helper.setUnidadeNegocioId((Integer)objeto[1]); } if(objeto[2] != null){ helper.setLocalidadeId((Integer)objeto[2]); } if(objeto[3] != null && !objeto[3].equals("")){ helper.setImovelId((Integer)objeto[3]); } if(objeto[4] != null){ helper.setDataRealizacao((Timestamp)objeto[4]); } if(objeto[5] != null){ helper.setSomaPagamentoNaoClassificado((BigDecimal)objeto[5]); } if(objeto[6] != null){ helper.setContaBancariaId((Integer)objeto[6]); } if(objeto[7] != null){ helper.setBancoId((Integer)objeto[7]); } if(objeto[8] != null){ helper.setArrecadadorId((Integer)objeto[8]); } helper.setCategoriaId(Categoria.RESIDENCIAL); // dividir valores por categoria if(objeto[5] != null){ Collection<ImovelSubcategoria> colecaoImovelSubCategoria = new ArrayList(); if(helper.getImovelId() != null && !helper.getImovelId().equals("")){ colecaoImovelSubCategoria = getControladorImovel().pesquisarCategoriasImovel(helper.getImovelId()); }else{ ImovelSubcategoria imovelSubcategoria = new ImovelSubcategoria(); ImovelSubcategoriaPK imovelSubcategoriaPK = new ImovelSubcategoriaPK(); Subcategoria subcategoria = new Subcategoria(); Categoria categoria = new Categoria(); categoria.setId(Categoria.RESIDENCIAL); categoria.setQuantidadeEconomiasCategoria(1); subcategoria.setCategoria(categoria); imovelSubcategoriaPK.setSubcategoria(subcategoria); imovelSubcategoria.setComp_id(imovelSubcategoriaPK); colecaoImovelSubCategoria.add(imovelSubcategoria); } BigDecimal valorCategoria = BigDecimal.ZERO; if(!colecaoImovelSubCategoria.isEmpty()){ Iterator iteratorSubCategoria = colecaoImovelSubCategoria.iterator(); Collection colecaoCategoria = new ArrayList(); while(iteratorSubCategoria.hasNext()){ ImovelSubcategoria imovelSubcategoria = (ImovelSubcategoria)iteratorSubCategoria.next(); Categoria categoria = imovelSubcategoria.getComp_id().getSubcategoria().getCategoria(); colecaoCategoria.add(categoria); } Collection colecaoValores = getControladorImovel().obterValorPorCategoria( colecaoCategoria, (BigDecimal)objeto[5]); Iterator iteratorCategoria = colecaoCategoria.iterator(); Categoria categoriaImovel = null; ResumoReceitaHelper resumoHelper = null; System.out.println("========================================================="); System.out.println("INICIO DE PAGAMENTO NAO CLASSIFICADOS"); System.out.println("========================================================\n"); System.out.println("Valor total: "+(BigDecimal)objeto[5]); Iterator iteValorCategoria = colecaoValores.iterator(); while(iteratorCategoria.hasNext() && iteValorCategoria.hasNext()){ categoriaImovel = (Categoria)iteratorCategoria.next(); // valorCategoria = (BigDecimal)colecaoValores.iterator().next(); valorCategoria = (BigDecimal)iteValorCategoria.next(); resumoHelper = new ResumoReceitaHelper(helper); resumoHelper.setCategoriaId(categoriaImovel.getId()); resumoHelper.setSomaPagamentoNaoClassificado(valorCategoria); System.out.println("Valor Categoria: "+valorCategoria); colecaoRetorno.add(resumoHelper); } System.out.println("============================================================="); } } } if ( colecaoRetorno != null && !colecaoRetorno.isEmpty() ){ Iterator iteColRetorno = colecaoRetorno.iterator(); while ( iteColRetorno.hasNext() ){ ResumoReceitaHelper resumoHelper = (ResumoReceitaHelper)iteColRetorno.next(); // Verificamos se o objeto ja possue uma quebra cadastrada if (quebra.contains(resumoHelper)) { int posicao = quebra.indexOf(resumoHelper); ResumoReceitaHelper jaCadastrado = (ResumoReceitaHelper) quebra.get(posicao); jaCadastrado.setValorTotal(jaCadastrado.getValorTotal().add(resumoHelper.retornaValorTotal())); } else { resumoHelper.setValorTotal(resumoHelper.retornaValorTotal()); quebra.add(resumoHelper); } //-------------------------------------- } } // Agrupar Valores // colecaoAgrupada = agruparDadosColecaoResumoreceita(colecaoRetorno); colecaoAgrupada = quebra; } } catch (ErroRepositorioException e) { e.printStackTrace(); } return colecaoAgrupada; } /** * * @param dataInicial * @param dataFinal * @return * @throws ErroRepositorioException * * Autor: Fl�vio Cordeiro * [UC 0982] Gerar Resumo da Receita * [SB 0001] Resumo dos Pagamentos de Contas * */ public Collection pesquisarPagamentoNaoClassificadoHistoricoResumoPagamentoConta(Date dataInicial, Date dataFinal) throws ControladorException{ Collection colecaoPesquisada = null; Collection colecaoRetorno = new ArrayList(); Collection colecaoAgrupada = new ArrayList(); List<ResumoReceitaHelper> quebra = new ArrayList<ResumoReceitaHelper>(); try { colecaoPesquisada = repositorioFinanceiro.pesquisarPagamentoNaoClassificadoHistoricoResumoPagamentoConta(dataInicial, dataFinal); if(!colecaoPesquisada.isEmpty()){ Object[] objeto = null; ResumoReceitaHelper helper = null; Iterator iteratorObjetos = colecaoPesquisada.iterator(); while (iteratorObjetos.hasNext()) { objeto = (Object[]) iteratorObjetos.next(); helper = new ResumoReceitaHelper(); if(objeto[0] != null){ helper.setGerenciaRegionalId((Integer)objeto[0]); } if(objeto[1] != null){ helper.setUnidadeNegocioId((Integer)objeto[1]); } if(objeto[2] != null){ helper.setLocalidadeId((Integer)objeto[2]); } if(objeto[3] != null){ helper.setImovelId((Integer)objeto[3]); } if(objeto[4] != null){ helper.setDataRealizacao((Timestamp)objeto[4]); } if(objeto[5] != null){ helper.setSomaPagamentoNaoClassificado((BigDecimal)objeto[5]); } if(objeto[6] != null){ helper.setContaBancariaId((Integer)objeto[6]); } if(objeto[7] != null){ helper.setBancoId((Integer)objeto[7]); } if(objeto[8] != null){ helper.setArrecadadorId((Integer)objeto[8]); } helper.setCategoriaId(Categoria.RESIDENCIAL); // dividir valores por categoria if(objeto[5] != null){ Collection<ImovelSubcategoria> colecaoImovelSubCategoria = new ArrayList(); if(objeto[3] != null && !objeto[3].equals("")){ colecaoImovelSubCategoria = getControladorImovel().pesquisarCategoriasImovel((Integer)objeto[3]); }else{ ImovelSubcategoria imovelSubcategoria = new ImovelSubcategoria(); ImovelSubcategoriaPK imovelSubcategoriaPK = new ImovelSubcategoriaPK(); Subcategoria subcategoria = new Subcategoria(); Categoria categoria = new Categoria(); categoria.setId(Categoria.RESIDENCIAL); categoria.setQuantidadeEconomiasCategoria(1); subcategoria.setCategoria(categoria); imovelSubcategoriaPK.setSubcategoria(subcategoria); imovelSubcategoria.setComp_id(imovelSubcategoriaPK); colecaoImovelSubCategoria.add(imovelSubcategoria); } BigDecimal valorCategoria = BigDecimal.ZERO; if(!colecaoImovelSubCategoria.isEmpty()){ Iterator iteratorSubCategoria = colecaoImovelSubCategoria.iterator(); Collection colecaoCategoria = new ArrayList(); while(iteratorSubCategoria.hasNext()){ ImovelSubcategoria imovelSubcategoria = (ImovelSubcategoria)iteratorSubCategoria.next(); Categoria categoria = imovelSubcategoria.getComp_id().getSubcategoria().getCategoria(); colecaoCategoria.add(categoria); } Collection colecaoValores = getControladorImovel().obterValorPorCategoria( colecaoCategoria, (BigDecimal)objeto[5]); Iterator iteratorCategoria = colecaoCategoria.iterator(); Categoria categoriaImovel = null; ResumoReceitaHelper resumoHelper = null; Iterator iteValorCategoria = colecaoValores.iterator(); while(iteratorCategoria.hasNext() && iteValorCategoria.hasNext()){ categoriaImovel = (Categoria)iteratorCategoria.next(); // valorCategoria = (BigDecimal)colecaoValores.iterator().next(); valorCategoria = (BigDecimal)iteValorCategoria.next(); resumoHelper = new ResumoReceitaHelper(helper); resumoHelper.setCategoriaId(categoriaImovel.getId()); resumoHelper.setSomaPagamentoNaoClassificado(valorCategoria); colecaoRetorno.add(resumoHelper); } } } } if ( colecaoRetorno != null && !colecaoRetorno.isEmpty() ){ Iterator iteColRetorno = colecaoRetorno.iterator(); while ( iteColRetorno.hasNext() ){ ResumoReceitaHelper resumoHelper = (ResumoReceitaHelper)iteColRetorno.next(); // Verificamos se o objeto ja possue uma quebra cadastrada if (quebra.contains(resumoHelper)) { int posicao = quebra.indexOf(resumoHelper); ResumoReceitaHelper jaCadastrado = (ResumoReceitaHelper) quebra.get(posicao); jaCadastrado.setValorTotal(jaCadastrado.getValorTotal().add(resumoHelper.retornaValorTotal())); } else { resumoHelper.setValorTotal(resumoHelper.retornaValorTotal()); quebra.add(resumoHelper); } //-------------------------------------- } } // Agrupar Valores // colecaoAgrupada = agruparDadosColecaoResumoreceita(colecaoRetorno); colecaoAgrupada = quebra; } } catch (ErroRepositorioException e) { e.printStackTrace(); } return colecaoAgrupada; } /** * * @param dataInicial * @param dataFinal * @return * @throws ErroRepositorioException * * Autor: Fl�vio Cordeiro * [UC 0982] Gerar Resumo da Receita * [SB 0001] Resumo dos Pagamentos de Contas * */ public Collection pesquisarPagamentoDebitoCobrarResumoPagamentoConta(Date dataInicial, Date dataFinal) throws ControladorException{ Collection colecaoPesquisada = null; Collection colecaoRetorno = new ArrayList(); try { colecaoPesquisada = repositorioFinanceiro.pesquisarPagamentoDebitoCobrarResumoPagamentoConta(dataInicial, dataFinal); if(!colecaoPesquisada.isEmpty()){ Object[] objeto = null; ResumoReceitaHelper helper = null; Iterator iteratorObjetos = colecaoPesquisada.iterator(); while (iteratorObjetos.hasNext()) { objeto = (Object[]) iteratorObjetos.next(); helper = new ResumoReceitaHelper(); if(objeto[0] != null){ helper.setGerenciaRegionalId((Integer)objeto[0]); } if(objeto[1] != null){ helper.setUnidadeNegocioId((Integer)objeto[1]); } if(objeto[2] != null){ helper.setLocalidadeId((Integer)objeto[2]); } helper.setCategoriaId(Categoria.RESIDENCIAL); if(objeto[3] != null){ helper.setCategoriaId((Integer)objeto[3]); } if(objeto[4] != null){ helper.setDataRealizacao((Timestamp)objeto[4]); } if(objeto[5] != null){ helper.setSomaPagamentoDebCobrar((BigDecimal)objeto[5]); } if(objeto[6] != null){ helper.setContaBancariaId((Integer)objeto[6]); } if(objeto[7] != null){ helper.setBancoId((Integer)objeto[7]); } if(objeto[8] != null){ helper.setArrecadadorId((Integer)objeto[8]); } if(objeto[9] != null){ helper.setContaContabil((Integer)objeto[9]); } colecaoRetorno.add(helper); } } } catch (ErroRepositorioException e) { e.printStackTrace(); } return colecaoRetorno; } /** * * @param dataInicial * @param dataFinal * @return * @throws ErroRepositorioException * * Autor: Fl�vio Cordeiro * [UC 0982] Gerar Resumo da Receita * [SB 0001] Resumo dos Pagamentos de Contas * */ public Collection pesquisarPagamentoDebitoCobrarHistoricoResumoPagamentoConta(Date dataInicial, Date dataFinal) throws ControladorException{ Collection colecaoPesquisada = null; Collection colecaoRetorno = new ArrayList(); try { colecaoPesquisada = repositorioFinanceiro.pesquisarPagamentoDebitoCobrarHistoricoResumoPagamentoConta(dataInicial, dataFinal); if(!colecaoPesquisada.isEmpty()){ Object[] objeto = null; ResumoReceitaHelper helper = null; Iterator iteratorObjetos = colecaoPesquisada.iterator(); while (iteratorObjetos.hasNext()) { objeto = (Object[]) iteratorObjetos.next(); helper = new ResumoReceitaHelper(); if(objeto[0] != null){ helper.setGerenciaRegionalId((Integer)objeto[0]); } if(objeto[1] != null){ helper.setUnidadeNegocioId((Integer)objeto[1]); } if(objeto[2] != null){ helper.setLocalidadeId((Integer)objeto[2]); } helper.setCategoriaId(Categoria.RESIDENCIAL); if(objeto[3] != null){ helper.setCategoriaId((Integer)objeto[3]); } if(objeto[4] != null){ helper.setDataRealizacao((Timestamp)objeto[4]); } if(objeto[5] != null){ helper.setSomaPagamentoDebCobrar((BigDecimal)objeto[5]); } if(objeto[6] != null){ helper.setContaBancariaId((Integer)objeto[6]); } if(objeto[7] != null){ helper.setBancoId((Integer)objeto[7]); } if(objeto[8] != null){ helper.setArrecadadorId((Integer)objeto[8]); } if(objeto[9] != null){ helper.setContaContabil((Integer)objeto[9]); } colecaoRetorno.add(helper); } } } catch (ErroRepositorioException e) { e.printStackTrace(); } return colecaoRetorno; } /** * * @param dataInicial * @param dataFinal * @return * @throws ErroRepositorioException * * Autor: Fl�vio Cordeiro * [UC 0982] Gerar Resumo da Receita * [SB 0001] Resumo dos Pagamentos de Contas * */ public Collection pesquisarPagamentoHistoricoSemCorrespondenteResumoPagamentoConta(Date dataInicial, Date dataFinal) throws ControladorException{ Collection colecaoPesquisada = null; Collection colecaoRetorno = new ArrayList(); Collection colecaoAgrupada = new ArrayList(); List<ResumoReceitaHelper> quebra = new ArrayList<ResumoReceitaHelper>(); try { colecaoPesquisada = repositorioFinanceiro.pesquisarPagamentoHistoricoSemCorrespondenteResumoPagamentoConta(dataInicial, dataFinal); if(!colecaoPesquisada.isEmpty()){ Object[] objeto = null; ResumoReceitaHelper helper = null; Iterator iteratorObjetos = colecaoPesquisada.iterator(); while (iteratorObjetos.hasNext()) { objeto = (Object[]) iteratorObjetos.next(); helper = new ResumoReceitaHelper(); if(objeto[0] != null){ helper.setGerenciaRegionalId((Integer)objeto[0]); } if(objeto[1] != null){ helper.setUnidadeNegocioId((Integer)objeto[1]); } if(objeto[2] != null){ helper.setLocalidadeId((Integer)objeto[2]); } if(objeto[3] != null){ helper.setImovelId((Integer)objeto[3]); } if(objeto[4] != null){ helper.setDataRealizacao((Timestamp)objeto[4]); } if(objeto[5] != null){ helper.setSomaPagamentoHistoricoSemCorrespondente((BigDecimal)objeto[5]); } if(objeto[6] != null){ helper.setContaBancariaId((Integer)objeto[6]); } if(objeto[7] != null){ helper.setBancoId((Integer)objeto[7]); } if(objeto[8] != null){ helper.setArrecadadorId((Integer)objeto[8]); } helper.setCategoriaId(Categoria.RESIDENCIAL); // dividir valores por categoria if(objeto[5] != null){ Collection<ImovelSubcategoria> colecaoImovelSubCategoria = new ArrayList(); if(objeto[3] != null && !objeto[3].equals("")){ colecaoImovelSubCategoria = getControladorImovel().pesquisarCategoriasImovel((Integer)objeto[3]); }else{ ImovelSubcategoria imovelSubcategoria = new ImovelSubcategoria(); ImovelSubcategoriaPK imovelSubcategoriaPK = new ImovelSubcategoriaPK(); Subcategoria subcategoria = new Subcategoria(); Categoria categoria = new Categoria(); categoria.setId(Categoria.RESIDENCIAL); categoria.setQuantidadeEconomiasCategoria(1); subcategoria.setCategoria(categoria); imovelSubcategoriaPK.setSubcategoria(subcategoria); imovelSubcategoria.setComp_id(imovelSubcategoriaPK); colecaoImovelSubCategoria.add(imovelSubcategoria); } BigDecimal valorCategoria = BigDecimal.ZERO; if(!colecaoImovelSubCategoria.isEmpty()){ Iterator iteratorSubCategoria = colecaoImovelSubCategoria.iterator(); Collection colecaoCategoria = new ArrayList(); while(iteratorSubCategoria.hasNext()){ ImovelSubcategoria imovelSubcategoria = (ImovelSubcategoria)iteratorSubCategoria.next(); Categoria categoria = imovelSubcategoria.getComp_id().getSubcategoria().getCategoria(); colecaoCategoria.add(categoria); } Collection colecaoValores = getControladorImovel().obterValorPorCategoria( colecaoCategoria, (BigDecimal)objeto[5]); Iterator iteratorCategoria = colecaoCategoria.iterator(); Categoria categoriaImovel = null; ResumoReceitaHelper resumoHelper = null; Iterator iteValorCategoria = colecaoValores.iterator(); while(iteratorCategoria.hasNext() && iteValorCategoria.hasNext()){ categoriaImovel = (Categoria)iteratorCategoria.next(); // valorCategoria = (BigDecimal)colecaoValores.iterator().next(); valorCategoria = (BigDecimal)iteValorCategoria.next(); resumoHelper = new ResumoReceitaHelper(helper); resumoHelper.setCategoriaId(categoriaImovel.getId()); resumoHelper.setSomaPagamentoHistoricoSemCorrespondente(valorCategoria); colecaoRetorno.add(resumoHelper); } } } } //Agrupar Valores // colecaoAgrupada = agruparDadosColecaoResumoreceita(colecaoRetorno); if ( colecaoRetorno != null && !colecaoRetorno.isEmpty() ){ Iterator iteColRetorno = colecaoRetorno.iterator(); while ( iteColRetorno.hasNext() ){ ResumoReceitaHelper resumoHelper = (ResumoReceitaHelper)iteColRetorno.next(); // Verificamos se o objeto ja possue uma quebra cadastrada if (quebra.contains(resumoHelper)) { int posicao = quebra.indexOf(resumoHelper); ResumoReceitaHelper jaCadastrado = (ResumoReceitaHelper) quebra.get(posicao); jaCadastrado.setValorTotal(jaCadastrado.getValorTotal().add(resumoHelper.retornaValorTotal())); } else { resumoHelper.setValorTotal(resumoHelper.retornaValorTotal()); quebra.add(resumoHelper); } //-------------------------------------- } } colecaoAgrupada = quebra; } } catch (ErroRepositorioException e) { e.printStackTrace(); } return colecaoAgrupada; } public Collection agruparDadosColecaoResumoreceita(Collection colecaoResumo){ Collection retorno = null; ResumoReceitaHelper resumoReceitaHelper = null; ResumoReceitaHelper resumoReceitaAtual = null; retorno = new ArrayList(); if(!colecaoResumo.isEmpty()){ BigDecimal valorTotal = BigDecimal.ZERO; Iterator iteratorResumo = colecaoResumo.iterator(); while(iteratorResumo.hasNext()) { resumoReceitaAtual = (ResumoReceitaHelper)iteratorResumo.next(); if(resumoReceitaHelper != null && resumoReceitaHelper.getArrecadadorId().equals(resumoReceitaAtual.getArrecadadorId()) && resumoReceitaHelper.getBancoId().equals(resumoReceitaAtual.getBancoId()) && resumoReceitaHelper.getGerenciaRegionalId().equals(resumoReceitaAtual.getGerenciaRegionalId()) && resumoReceitaHelper.getUnidadeNegocioId().equals(resumoReceitaAtual.getUnidadeNegocioId()) && resumoReceitaHelper.getLocalidadeId().equals(resumoReceitaAtual.getLocalidadeId()) && resumoReceitaHelper.getDataRealizacao().equals(resumoReceitaAtual.getDataRealizacao())){ if(valorTotal.equals(BigDecimal.ZERO)){ valorTotal = valorTotal.add(resumoReceitaHelper.retornaValorTotal()); }else{ valorTotal = valorTotal.add(valorTotal); } resumoReceitaHelper.setValorTotal(valorTotal); //retorno.add(resumoReceitaHelper); }else{ if(resumoReceitaHelper == null){ resumoReceitaHelper = resumoReceitaAtual; } valorTotal = valorTotal.add(resumoReceitaHelper.retornaValorTotal()); resumoReceitaHelper.setValorTotal(valorTotal); retorno.add(resumoReceitaHelper); valorTotal = BigDecimal.ZERO; if(iteratorResumo.hasNext()){ resumoReceitaHelper = (ResumoReceitaHelper)iteratorResumo.next(); if(!iteratorResumo.hasNext()){ valorTotal = valorTotal.add(resumoReceitaHelper.retornaValorTotal()); resumoReceitaHelper.setValorTotal(valorTotal); retorno.add(resumoReceitaHelper); } } } } } return retorno; } public Collection pesquisarResumoReceitaAgrupadoPorBanco(ResumoReceitaHelper resumo) throws ControladorException{ Collection colecaoPesquisada = null; Collection colecaoRetorno = new ArrayList(); try { colecaoPesquisada = repositorioFinanceiro.pesquisarResumoReceitaAgrupadoPorBanco(resumo); if(!colecaoPesquisada.isEmpty()){ Object[] objeto = null; ResumoReceita receita = null; Iterator iteratorObjetos = colecaoPesquisada.iterator(); while (iteratorObjetos.hasNext()) { objeto = (Object[]) iteratorObjetos.next(); receita = new ResumoReceita(); if(objeto[0] != null){ Banco banco = new Banco(); FiltroBanco filtroBanco = new FiltroBanco(); filtroBanco.adicionarParametro(new ParametroSimples(FiltroBanco.ID, (Integer)objeto[0])); Collection colecao = getControladorUtil().pesquisar(filtroBanco, Banco.class.getName()); banco = (Banco)Util.retonarObjetoDeColecao(colecao); receita.setBanco(banco); } if(objeto[1] != null){ ContaBancaria contaBancaria = new ContaBancaria(); contaBancaria.setNumeroConta((String)objeto[1]); receita.setContaBancaria(contaBancaria); } if(objeto[2] != null){ ContaContabil contaContabil = new ContaContabil(); contaContabil.setNumeroConta((String)objeto[2]); receita.setContaContabil(contaContabil); } if(objeto[3] != null){ receita.setValorReceita((BigDecimal)objeto[3]); } colecaoRetorno.add(receita); } } } catch (ErroRepositorioException e) { e.printStackTrace(); } return colecaoRetorno; } public Collection pesquisarResumoReceitaRelatorioAnalitico(ResumoReceitaHelper resumo) throws ControladorException{ Collection colecaoPesquisada = null; Collection colecaoRetorno = new ArrayList(); try { colecaoPesquisada = repositorioFinanceiro.pesquisarResumoReceitaRelatorioAnalitico(resumo); if(!colecaoPesquisada.isEmpty()){ Object[] objeto = null; ResumoReceita receita = null; Iterator iteratorObjetos = colecaoPesquisada.iterator(); while (iteratorObjetos.hasNext()) { objeto = (Object[]) iteratorObjetos.next(); receita = new ResumoReceita(); if(objeto[0] != null){ Banco banco = null; FiltroBanco filtroBanco = new FiltroBanco(); filtroBanco.adicionarParametro(new ParametroSimples(FiltroBanco.ID, (Integer)objeto[0])); Collection colecao = getControladorUtil().pesquisar(filtroBanco, Banco.class.getName()); banco = (Banco)Util.retonarObjetoDeColecao(colecao); receita.setBanco(banco); } if(objeto[1] != null){ ContaBancaria contaBancaria = new ContaBancaria(); contaBancaria.setNumeroConta((String)objeto[1]); receita.setContaBancaria(contaBancaria); } if(objeto[2] != null){ Arrecadador arrecadador = null; FiltroArrecadador filtroArrecadador = new FiltroArrecadador(); filtroArrecadador.adicionarParametro(new ParametroSimples(FiltroArrecadador.ID, (Integer)objeto[2])); Collection colecaoArrecadador = getControladorUtil().pesquisar(filtroArrecadador, Arrecadador.class.getName()); arrecadador = (Arrecadador)Util.retonarObjetoDeColecao(colecaoArrecadador); receita.setArrecadador(arrecadador); } if(objeto[3] != null){ receita.setDataRealizada((Date)objeto[3]); } if(objeto[4] != null){ ContaContabil contaContabil = new ContaContabil(); contaContabil.setNumeroConta((String)objeto[4]); receita.setContaContabil(contaContabil); } if(objeto[5] != null){ receita.setValorReceita((BigDecimal)objeto[5]); } colecaoRetorno.add(receita); } } } catch (ErroRepositorioException e) { e.printStackTrace(); } return colecaoRetorno; } /** * * @param dataInicial * @param dataFinal * @return * @throws ErroRepositorioException * * Autor: Fernando Fontelles * [UC 0982] Gerar Resumo da Receita * [SB 0001] Resumo dos Pagamentos de Contas * */ public Collection pesquisarOutrasReceitasHistoricoResumoPagamentoConta(Date dataInicial, Date dataFinal) throws ControladorException{ Collection colecaoPesquisada = null; Collection colecaoRetorno = new ArrayList(); Collection colecaoAgrupada = new ArrayList(); List<ResumoReceitaHelper> quebra = new ArrayList<ResumoReceitaHelper>(); try { colecaoPesquisada = repositorioFinanceiro.pesquisarOutrasReceitasHistoricoResumoPagamentoConta(dataInicial, dataFinal); if(!colecaoPesquisada.isEmpty()){ Object[] objeto = null; ResumoReceitaHelper helper = null; Iterator iteratorObjetos = colecaoPesquisada.iterator(); while (iteratorObjetos.hasNext()) { objeto = (Object[]) iteratorObjetos.next(); helper = new ResumoReceitaHelper(); if(objeto[0] != null){ helper.setGerenciaRegionalId((Integer)objeto[0]); } if(objeto[1] != null){ helper.setUnidadeNegocioId((Integer)objeto[1]); } if(objeto[2] != null){ helper.setLocalidadeId((Integer)objeto[2]); } if(objeto[3] != null){ helper.setImovelId((Integer)objeto[3]); } if(objeto[4] != null){ helper.setDataRealizacao((Timestamp)objeto[4]); } if(objeto[5] != null){ helper.setSomaOutrasReceitas((BigDecimal)objeto[5]); } if(objeto[6] != null){ helper.setContaBancariaId((Integer)objeto[6]); } if(objeto[7] != null){ helper.setBancoId((Integer)objeto[7]); } if(objeto[8] != null){ helper.setArrecadadorId((Integer)objeto[8]); } if(objeto[9] != null){ helper.setContaContabil((Integer)objeto[9]); } helper.setCategoriaId(Categoria.RESIDENCIAL); //dividir valores por categoria if(objeto[5] != null /*&& objeto[3] != null*/){ Collection<ImovelSubcategoria> colecaoImovelSubCategoria = new ArrayList(); if(objeto[3] != null && !objeto[3].equals("")){ colecaoImovelSubCategoria = getControladorImovel().pesquisarCategoriasImovel((Integer)objeto[3]); }else{ ImovelSubcategoria imovelSubcategoria = new ImovelSubcategoria(); ImovelSubcategoriaPK imovelSubcategoriaPK = new ImovelSubcategoriaPK(); Subcategoria subcategoria = new Subcategoria(); Categoria categoria = new Categoria(); categoria.setId(Categoria.RESIDENCIAL); categoria.setQuantidadeEconomiasCategoria(1); subcategoria.setCategoria(categoria); imovelSubcategoriaPK.setSubcategoria(subcategoria); imovelSubcategoria.setComp_id(imovelSubcategoriaPK); colecaoImovelSubCategoria.add(imovelSubcategoria); } BigDecimal valorCategoria = BigDecimal.ZERO; if(!colecaoImovelSubCategoria.isEmpty()){ Iterator iteratorSubCategoria = colecaoImovelSubCategoria.iterator(); Collection colecaoCategoria = new ArrayList(); while(iteratorSubCategoria.hasNext()){ ImovelSubcategoria imovelSubcategoria = (ImovelSubcategoria)iteratorSubCategoria.next(); Categoria categoria = imovelSubcategoria.getComp_id().getSubcategoria().getCategoria(); colecaoCategoria.add(categoria); } Collection colecaoValores = getControladorImovel().obterValorPorCategoria( colecaoCategoria, (BigDecimal)objeto[5]); Iterator iteratorCategoria = colecaoCategoria.iterator(); Categoria categoriaImovel = null; ResumoReceitaHelper resumoHelper = null; Iterator iteValorCategoria = colecaoValores.iterator(); while(iteratorCategoria.hasNext() && iteValorCategoria.hasNext()){ categoriaImovel = (Categoria)iteratorCategoria.next(); // valorCategoria = (BigDecimal)colecaoValores.iterator().next(); valorCategoria = (BigDecimal)iteValorCategoria.next(); resumoHelper = new ResumoReceitaHelper(helper); if ( objeto[9] != null ){ resumoHelper.setContaContabil((Integer)objeto[9]); } resumoHelper.setCategoriaId(categoriaImovel.getId()); resumoHelper.setSomaOutrasReceitas(valorCategoria); colecaoRetorno.add(resumoHelper); } } } } if ( colecaoRetorno != null && !colecaoRetorno.isEmpty() ){ Iterator iteColRetorno = colecaoRetorno.iterator(); while ( iteColRetorno.hasNext() ){ ResumoReceitaHelper resumoHelper = (ResumoReceitaHelper)iteColRetorno.next(); // Verificamos se o objeto ja possue uma quebra cadastrada if (quebra.contains(resumoHelper)) { int posicao = quebra.indexOf(resumoHelper); ResumoReceitaHelper jaCadastrado = (ResumoReceitaHelper) quebra.get(posicao); jaCadastrado.setValorTotal(jaCadastrado.getValorTotal().add(resumoHelper.retornaValorTotal())); } else { resumoHelper.setValorTotal(resumoHelper.retornaValorTotal()); quebra.add(resumoHelper); } //-------------------------------------- } } // Agrupar Valores // colecaoAgrupada = agruparDadosColecaoResumoreceita(colecaoRetorno); colecaoAgrupada = quebra; } } catch (ErroRepositorioException e) { e.printStackTrace(); } return colecaoAgrupada; } /** * * @param dataInicial * @param dataFinal * @return * @throws ErroRepositorioException * * Autor: Fernando Fontelles Filho * [UC 0982] Gerar Resumo da Receita * [SB 0001] Resumo dos Pagamentos de Contas * */ public Collection pesquisarDevolucaoAvisoBancarioResumo(Date dataInicial, Date dataFinal) throws ControladorException{ Collection colecaoPesquisada = null; Collection colecaoRetorno = new ArrayList(); Collection colecaoAgrupada = new ArrayList(); List<ResumoReceitaHelper> quebra = new ArrayList<ResumoReceitaHelper>(); //------------------------------------------ try { colecaoPesquisada = repositorioFinanceiro.pesquisarDevolucaoAvisoBancarioResumo(dataInicial, dataFinal); if(!colecaoPesquisada.isEmpty()){ Object[] objeto = null; ResumoReceitaHelper helper = null; Iterator iteratorObjetos = colecaoPesquisada.iterator(); while (iteratorObjetos.hasNext()) { // ResumoReceitaHelper resumoHelper = null; objeto = (Object[]) iteratorObjetos.next(); helper = new ResumoReceitaHelper(); if(objeto[0] != null){ helper.setGerenciaRegionalId((Integer)objeto[0]); } if(objeto[1] != null){ helper.setUnidadeNegocioId((Integer)objeto[1]); } if(objeto[2] != null){ helper.setLocalidadeId((Integer)objeto[2]); } if(objeto[3] != null && !objeto[3].equals("")){ helper.setImovelId((Integer)objeto[3]); } if(objeto[4] != null){ helper.setDataRealizacao((Timestamp)objeto[4]); } if(objeto[5] != null){ helper.setSomaPagamentoNaoClassificado((BigDecimal)objeto[5]); } if(objeto[6] != null){ helper.setContaBancariaId((Integer)objeto[6]); } if(objeto[7] != null){ helper.setBancoId((Integer)objeto[7]); } if(objeto[8] != null){ helper.setArrecadadorId((Integer)objeto[8]); } helper.setCategoriaId(Categoria.RESIDENCIAL); // dividir valores por categoria if(objeto[5] != null){ Collection<ImovelSubcategoria> colecaoImovelSubCategoria = new ArrayList(); if(helper.getImovelId() != null && !helper.getImovelId().equals("")){ colecaoImovelSubCategoria = getControladorImovel().pesquisarCategoriasImovel(helper.getImovelId()); }else{ ImovelSubcategoria imovelSubcategoria = new ImovelSubcategoria(); ImovelSubcategoriaPK imovelSubcategoriaPK = new ImovelSubcategoriaPK(); Subcategoria subcategoria = new Subcategoria(); Categoria categoria = new Categoria(); categoria.setId(Categoria.RESIDENCIAL); categoria.setQuantidadeEconomiasCategoria(1); subcategoria.setCategoria(categoria); imovelSubcategoriaPK.setSubcategoria(subcategoria); imovelSubcategoria.setComp_id(imovelSubcategoriaPK); colecaoImovelSubCategoria.add(imovelSubcategoria); } BigDecimal valorCategoria = BigDecimal.ZERO; if(!colecaoImovelSubCategoria.isEmpty()){ Iterator iteratorSubCategoria = colecaoImovelSubCategoria.iterator(); Collection colecaoCategoria = new ArrayList(); while(iteratorSubCategoria.hasNext()){ ImovelSubcategoria imovelSubcategoria = (ImovelSubcategoria)iteratorSubCategoria.next(); Categoria categoria = imovelSubcategoria.getComp_id().getSubcategoria().getCategoria(); colecaoCategoria.add(categoria); } Collection colecaoValores = getControladorImovel().obterValorPorCategoria( colecaoCategoria, (BigDecimal)objeto[5]); Iterator iteratorCategoria = colecaoCategoria.iterator(); Categoria categoriaImovel = null; ResumoReceitaHelper resumoHelper = null; Iterator iteValorCategoria = colecaoValores.iterator(); while(iteratorCategoria.hasNext() && iteValorCategoria.hasNext()){ categoriaImovel = (Categoria)iteratorCategoria.next(); // valorCategoria = (BigDecimal)colecaoValores.iterator().next(); valorCategoria = (BigDecimal)iteValorCategoria.next(); resumoHelper = new ResumoReceitaHelper(helper); resumoHelper.setCategoriaId(categoriaImovel.getId()); resumoHelper.setSomaPagamentoNaoClassificado(valorCategoria); colecaoRetorno.add(resumoHelper); } } } } if ( colecaoRetorno != null && !colecaoRetorno.isEmpty() ){ Iterator iteColRetorno = colecaoRetorno.iterator(); while ( iteColRetorno.hasNext() ){ ResumoReceitaHelper resumoHelper = (ResumoReceitaHelper)iteColRetorno.next(); // Verificamos se o objeto ja possue uma quebra cadastrada if (quebra.contains(resumoHelper)) { int posicao = quebra.indexOf(resumoHelper); ResumoReceitaHelper jaCadastrado = (ResumoReceitaHelper) quebra.get(posicao); jaCadastrado.setValorTotal(jaCadastrado.getValorTotal().add(resumoHelper.retornaValorTotal())); } else { resumoHelper.setValorTotal(resumoHelper.retornaValorTotal()); quebra.add(resumoHelper); } //-------------------------------------- } } // Agrupar Valores // colecaoAgrupada = agruparDadosColecaoResumoreceita(colecaoRetorno); colecaoAgrupada = quebra; } } catch (ErroRepositorioException e) { e.printStackTrace(); } return colecaoAgrupada; } /** * * @param dataInicial * @param dataFinal * @return * @throws ErroRepositorioException * * Autor: Fernando Fontelles Filho * [UC 0982] Gerar Resumo da Receita * [SB 0001] Resumo dos Pagamentos de Contas * */ public Collection pesquisarDevolucaoAvisoBancarioHistoricoResumo(Date dataInicial, Date dataFinal) throws ControladorException{ Collection colecaoPesquisada = null; Collection colecaoRetorno = new ArrayList(); Collection colecaoAgrupada = new ArrayList(); List<ResumoReceitaHelper> quebra = new ArrayList<ResumoReceitaHelper>(); //------------------------------------------ try { colecaoPesquisada = repositorioFinanceiro.pesquisarDevolucaoAvisoBancarioHistoricoResumo(dataInicial, dataFinal); if(!colecaoPesquisada.isEmpty()){ Object[] objeto = null; ResumoReceitaHelper helper = null; Iterator iteratorObjetos = colecaoPesquisada.iterator(); while (iteratorObjetos.hasNext()) { // ResumoReceitaHelper resumoHelper = null; objeto = (Object[]) iteratorObjetos.next(); helper = new ResumoReceitaHelper(); if(objeto[0] != null){ helper.setGerenciaRegionalId((Integer)objeto[0]); } if(objeto[1] != null){ helper.setUnidadeNegocioId((Integer)objeto[1]); } if(objeto[2] != null){ helper.setLocalidadeId((Integer)objeto[2]); } if(objeto[3] != null && !objeto[3].equals("")){ helper.setImovelId((Integer)objeto[3]); } if(objeto[4] != null){ helper.setDataRealizacao((Timestamp)objeto[4]); } if(objeto[5] != null){ helper.setSomaPagamentoNaoClassificado((BigDecimal)objeto[5]); } if(objeto[6] != null){ helper.setContaBancariaId((Integer)objeto[6]); } if(objeto[7] != null){ helper.setBancoId((Integer)objeto[7]); } if(objeto[8] != null){ helper.setArrecadadorId((Integer)objeto[8]); } helper.setCategoriaId(Categoria.RESIDENCIAL); // dividir valores por categoria if(objeto[5] != null){ Collection<ImovelSubcategoria> colecaoImovelSubCategoria = new ArrayList(); if(helper.getImovelId() != null && !helper.getImovelId().equals("")){ colecaoImovelSubCategoria = getControladorImovel().pesquisarCategoriasImovel(helper.getImovelId()); }else{ ImovelSubcategoria imovelSubcategoria = new ImovelSubcategoria(); ImovelSubcategoriaPK imovelSubcategoriaPK = new ImovelSubcategoriaPK(); Subcategoria subcategoria = new Subcategoria(); Categoria categoria = new Categoria(); categoria.setId(Categoria.RESIDENCIAL); categoria.setQuantidadeEconomiasCategoria(1); subcategoria.setCategoria(categoria); imovelSubcategoriaPK.setSubcategoria(subcategoria); imovelSubcategoria.setComp_id(imovelSubcategoriaPK); colecaoImovelSubCategoria.add(imovelSubcategoria); } BigDecimal valorCategoria = BigDecimal.ZERO; if(!colecaoImovelSubCategoria.isEmpty()){ Iterator iteratorSubCategoria = colecaoImovelSubCategoria.iterator(); Collection colecaoCategoria = new ArrayList(); while(iteratorSubCategoria.hasNext()){ ImovelSubcategoria imovelSubcategoria = (ImovelSubcategoria)iteratorSubCategoria.next(); Categoria categoria = imovelSubcategoria.getComp_id().getSubcategoria().getCategoria(); colecaoCategoria.add(categoria); } Collection colecaoValores = getControladorImovel().obterValorPorCategoria( colecaoCategoria, (BigDecimal)objeto[5]); Iterator iteratorCategoria = colecaoCategoria.iterator(); Categoria categoriaImovel = null; ResumoReceitaHelper resumoHelper = null; Iterator iteValorCategoria = colecaoValores.iterator(); while(iteratorCategoria.hasNext() && iteValorCategoria.hasNext()){ categoriaImovel = (Categoria)iteratorCategoria.next(); // valorCategoria = (BigDecimal)colecaoValores.iterator().next(); valorCategoria = (BigDecimal)iteValorCategoria.next(); resumoHelper = new ResumoReceitaHelper(helper); resumoHelper.setCategoriaId(categoriaImovel.getId()); resumoHelper.setSomaPagamentoNaoClassificado(valorCategoria); colecaoRetorno.add(resumoHelper); } } } } if ( colecaoRetorno != null && !colecaoRetorno.isEmpty() ){ Iterator iteColRetorno = colecaoRetorno.iterator(); while ( iteColRetorno.hasNext() ){ ResumoReceitaHelper resumoHelper = (ResumoReceitaHelper)iteColRetorno.next(); // Verificamos se o objeto ja possue uma quebra cadastrada if (quebra.contains(resumoHelper)) { int posicao = quebra.indexOf(resumoHelper); ResumoReceitaHelper jaCadastrado = (ResumoReceitaHelper) quebra.get(posicao); jaCadastrado.setValorTotal(jaCadastrado.getValorTotal().add(resumoHelper.retornaValorTotal())); } else { resumoHelper.setValorTotal(resumoHelper.retornaValorTotal()); quebra.add(resumoHelper); } //-------------------------------------- } } // Agrupar Valores // colecaoAgrupada = agruparDadosColecaoResumoreceita(colecaoRetorno); colecaoAgrupada = quebra; } } catch (ErroRepositorioException e) { e.printStackTrace(); } return colecaoAgrupada; } /** * [UC0799] - Gerar Txt das Contas Baixadas Contabilmente * * @author: Rodrigo Cabral * @date: 16/03/2011 */ public Map consultarSomatorioValorContasBaixadasContabilmenteFaixa( Integer referenciaInicio, Integer referenciaFinal,Integer faixa,Short periodicidade)throws ControladorException{ Collection colecaoSomatorioValorContasBaixadasContabilmente = null; Map retorno = new HashMap(); try { if (faixa.equals(ConstantesSistema.FAIXA_1)){ colecaoSomatorioValorContasBaixadasContabilmente = repositorioFinanceiro .consultarSomatorioValorContasBaixadasContabilmenteFaixa1( referenciaInicio, referenciaFinal, periodicidade); }else if (faixa.equals(ConstantesSistema.FAIXA_2)){ colecaoSomatorioValorContasBaixadasContabilmente = repositorioFinanceiro .consultarSomatorioValorContasBaixadasContabilmenteFaixa2( referenciaInicio, referenciaFinal, periodicidade); }else if (faixa.equals(ConstantesSistema.FAIXA_3)){ colecaoSomatorioValorContasBaixadasContabilmente = repositorioFinanceiro .consultarSomatorioValorContasBaixadasContabilmenteFaixa3( referenciaInicio, referenciaFinal, periodicidade); } BigDecimal valorAcumulado = BigDecimal.ZERO; valorAcumulado = valorAcumulado.setScale(2, BigDecimal.ROUND_HALF_DOWN); if (colecaoSomatorioValorContasBaixadasContabilmente != null && !colecaoSomatorioValorContasBaixadasContabilmente.isEmpty()) { Iterator iteratorColecaoSomatorioValorContasBaixadasContabilmente = colecaoSomatorioValorContasBaixadasContabilmente.iterator(); while (iteratorColecaoSomatorioValorContasBaixadasContabilmente.hasNext()) { Object valorObject = iteratorColecaoSomatorioValorContasBaixadasContabilmente.next(); if (valorObject != null){ BigDecimal valor = (BigDecimal) valorObject; valorAcumulado = valorAcumulado.add(valor); } } } retorno.put("somatorio",valorAcumulado); return retorno; } catch (ErroRepositorioException ex) { throw new ControladorException("erro.sistema", ex); } } /** * [UC0989] Gerar Resumo de Documentos a Receber * * @author Mariana Victor * @date 28/03/2011 * * @param anoMesReferenciaRecebimentos * @param idLocalidade * @throws ErroRepositorioException */ public void removerDocumentosAReceberFaixaResumo(int anoMesReferenciaFaturamento, Integer idLocalidade, Session session) throws ControladorException { try { repositorioFinanceiro.removerDocumentosAReceberFaixaResumo(anoMesReferenciaFaturamento, idLocalidade, session); } catch (ErroRepositorioException ex) { ex.printStackTrace(); throw new ControladorException("erro.sistema", ex); } } public Collection<RelatorioParametrosContabeisContasAReceberBean> pesquisarDadosRelatorioParametrosContabeisContasAReceber(String referenciaContabil) throws ControladorException{ Collection pesquisaDados = new ArrayList(); Integer anoMes = null; // Verificamos se o ano mes de referencia foi informado if ( referenciaContabil != null && !referenciaContabil.equals( "" )){ anoMes = Integer.parseInt( Util.formatarMesAnoParaAnoMesSemBarra( referenciaContabil ) ); } Collection<RelatorioParametrosContabeisContasAReceberBean> colRetorno = new ArrayList(); try { pesquisaDados = repositorioFinanceiro.pesquisarDadosRelatorioParametrosContabeisContasAReceber( anoMes ); // Montamos os dados Iterator iter = pesquisaDados.iterator(); while(iter.hasNext()){ Object[] objetos = (Object[]) iter.next(); RelatorioParametrosContabeisContasAReceberBean bean = new RelatorioParametrosContabeisContasAReceberBean( (String) objetos[0], // Descricao do tipo de lancamento (String) objetos[1], // Descricao do Item de lancamento (String) objetos[2], // Descricao da categoria (String) objetos[3], // Numero da conta (BigDecimal) objetos[4] // valor da conta ); colRetorno.add( bean ); } } catch (ErroRepositorioException e) { sessionContext.setRollbackOnly(); throw new ControladorException("erro.sistema", e); } return colRetorno; } }