SetLivroCaixa
atenção
Gerado por Inteligência Artificial.
Visão Geral
O método SetLivroCaixa da classe LivroCaixaBLL é central no processo de controle financeiro. Ele registra um lançamento de caixa, garantindo que o caixa do colaborador esteja aberto, persistindo os dados e gerando notificações.
Seu impacto é crítico em fluxos de pagamento, crédito, TEF, PIX, boletos e outros canais.
BOX3_ERP_API.Core.BLL.LivroCaixaBLL.SetLivroCaixa
public async Task<int> SetLivroCaixa(int colaboradorId, DateTime dataPagamento, LivroCaixa livroCaixa, DadosToken dadosToken)
Dependências Diretas
| Método | Descrição | Localização | Linha |
|---|---|---|---|
AbrirCaixaAutomatico | Garante que o operador de caixa esteja aberto para o colaborador. | LivroCaixaOperadorBLL.cs | 558 |
DbSet<LivroCaixa>.Add | Insere o lançamento de caixa na base de dados. | LivroCaixaBLL.cs | 567 |
GerarNotificacaoCaixa | Gera e dispara notificações do lançamento (ex: Telegram). | LivroCaixaBLL.cs | 570 |
Detalhamento dos Dependentes
AbrirCaixaAutomatico
- Verificações e criação de entrada em
LivroCaixaOperador. - Chama:
ColaboradorBLL.GetItem(int)ColaboradorCargoBLL.GetItem(int)LivroCaixaOperador.AnyAsync/WhereDbContext.SaveChangesAsync
GerarNotificacaoCaixa
- Responsável por alertas em tempo real.
- Chama:
ConfiguracaoBLL.GetItem(bool)- Consulta de
PlanoContas,Colaborador,UsuarioNew TelegramAlertaBLL.GerarNotificacao
Chamadores Diretos
| Método | Local | Linha |
|---|---|---|
ConsultarClienteCreditoVenda(int) | TefGerenciamentoRepository.cs | 347 |
ConsultarPorId(int) | FinanceiroTransacoesPixRepository.cs | 178 |
Pagamento(...) | RecebimentoBLL.cs | 1345 |
API_Adicionar(...) | ClienteCreditoController.cs | 826 |
Detalhamento dos Chamadores
RecebimentoBLL.Pagamento
- Responsável por processar pagamentos via vários canais: mobile, Pagar.me, links e TEF.
TefGerenciamentoRepository.ConsultarClienteCreditoVenda
- Usa
SetLivroCaixaao consultar créditos relacionados a uma venda TEF.
FinanceiroTransacoesPixRepository.ConsultarPorId
- Processamento automático de transações Pix e vinculação a caixa.
ClienteCreditoController.API_Adicionar
- Criação de novos créditos para clientes.
Impacto de Alterações
Alterar o método SetLivroCaixa afeta diversos processos críticos da aplicação:
- Fluxos de pagamento (Pix, boleto, links).
- Registros contábeis no caixa.
- Processamento automático (via TEF, notificações, APIs).
- Alertas via Telegram e rastreabilidade.
Impacta os seguintes componentes:
- Recebimento: falha aqui pode comprometer transações e registros.
- Financeiro/Pagamento: má sincronização pode causar erro de saldo.
- TEF/PIX/BOLETO/Efipay: automações baseadas nesse método serão impactadas.
- Notificações e logs: alertas falharão caso notificações não sejam geradas corretamente.
Propagação de Mudanças
Se você modificar SetLivroCaixa, verifique:
- Abertura de caixa automática
- Persistência correta do lançamento
- Envio de notificações
- Recebimentos integrados (Pix, boleto, TEF, links)
Se dependências mudarem:
- Mudanças em
AbrirCaixaAutomatico,GerarNotificacaoCaixaou queries EF afetam o comportamento esperado do método.
Conclusão Técnica
O método SetLivroCaixa é um dos pontos neurálgicos do sistema financeiro do BOX3 ERP. Ele orquestra ações críticas de lançamento e sinalização.
Requisitos para alteração segura:
- Executar testes automatizados de todos os fluxos financeiros.
- Validar lógica de abertura de caixa e consistência de banco.
- Simular cenários com múltiplos canais de entrada (TEF, boleto, Pix).
- Verificar alertas e logs pós-lançamento.