Class CalculoConsumoAdiantamento

java.lang.Object
systextil.contasareceber.consumoadiantamento.CalculoConsumoAdiantamento

public final class CalculoConsumoAdiantamento extends Object
Cálculo do consumo automático do adiantamento de cliente pelos títulos de uma NF.

Só cálculo: não lê nem grava nada. Recebe os títulos e os adiantamentos já lidos e devolve as baixas a executar. O adiantamento mais antigo paga o título de vencimento mais próximo (FIFO); a sobra dentro da tolerância vira desconto (falta) ou juros (excedente) na última baixa.

  • Field Details

  • Method Details

    • limite

      public static BigDecimal limite(CalculoConsumoAdiantamento.Tolerancia tolerancia, BigDecimal base, boolean falta)
      Limite da tolerância em valor.

      Mesma conta do limite de falta da análise do motivo 78 (ValidacaoSaldoSolicitacao, systextil-function). Alterar as duas juntas.

      Parameters:
      base - soma do saldo dos títulos da NF antes do consumo (usada só no tipo percentual)
      falta - true para o limite de falta, false para o de excedente
    • ehAVista

      public static boolean ehAVista(int qtdeParcelasAVista, int qtdeParcelas, int controleBloqPedAVista)
      Mesma regra de "à vista" da análise do motivo 78 (SituacaoAnalise78, systextil-function): com controle 0, a condição tem uma parcela só e ela é à vista; com controle 1, basta uma parcela à vista. Alterar as duas juntas.
      Parameters:
      controleBloqPedAVista - FATU_501.CONTROLE_BLOQ_PED_A_VISTA
    • pedidosFaturadoTotal

      public static Set<Integer> pedidosFaturadoTotal(List<CalculoConsumoAdiantamento.ItemPedido> itensAtivos)
      Pedidos faturados total, pelo critério que o pedi_f210 usa para gravar a situação 10 (pedi_f210.java, "tem_itens_em_aberto"/"tem_itens_fat_total"): nenhum item ativo em aberto e pelo menos um item faturado total. O cálculo do faturamento não grava a situação 10 na capa, por isso a regra é lida dos itens. Alterar as duas juntas.
      Parameters:
      itensAtivos - itens com COD_CANCELAMENTO = 0
    • calcular

      As baixas da NF, na ordem em que devem ser executadas. Lista vazia = nada a consumir.