Pular para o conteúdo principal

ComissaoJazigoVenda

atenção

Gerado por Inteligência Artificial.


Visão Geral

Método assíncrono responsável por calcular a comissão de venda de jazigos, utilizando informações do contrato, dados do token, configurações específicas e uma lista opcional de recebimentos. Internamente, chama métodos para criar comissões e realizar truncamentos de valores decimais para garantir precisão nos cálculos.

BOX3_ERP_API.Core.BLL.ComissaoBLL.cs
private async Task\<decimal\> ComissaoJazigoVenda(int contratoId, DadosToken dadosToken, Configuracao config, List\<Recebimento\> recebimentos = null) {...}

Dependências Diretas

MétodoLocalizaçãoLinha
ComissaoJazigoVenda(int, DadosToken, Configuracao, List<Recebimento>)(não informado)0
CriarComissao(Comissao, DadosToken, List<Recebimento>)BOX3_ERP_API.Core.BLL.ComissaoBLL.cs445
CriarComissao(Comissao, DadosToken, List<Recebimento>)BOX3_ERP_API.Core.BLL.ComissaoBLL.cs460
Truncar(decimal)BOX3_ERP_API.Core.BLL.ComissaoBLL.cs73
Truncate(decimal)BOX3_ERP_API.Core.Util.Calculadora.cs11

Referências

Método / EndpointLocalizaçãoLinha
ComissaoJazigoVenda(int, DadosToken, Configuracao, List<Recebimento>)(não informado)0
ComissaoVendaGeral(int, DadosToken)BOX3_ERP_API.Core.BLL.ComissaoBLL.cs46
Pagamento(int, FinalizarVenda_Model, DadosToken)BOX3_ERP_API.BLL.Clinica.BLL.AgendamentoClinicaBLL.cs2264
Pagamento(int, Item_PagamentoServicoModel, DadosToken)BOX3_ERP_API.BLL.Clinica.BLL.AgendamentoClinicaBLL.cs7054
API_FecharVenda(int, FinalizarVenda_Model)BOX3_ERP_API.Controllers.JazigoVendaController.cs898
API_ConfirmarImpressaoContrato(int)BOX3_ERP_API.Controllers.PlanoContratacaoController.cs1034
API_FecharVenda(int, FinalizarVenda_Model)BOX3_ERP_API.Controllers.VendaController.cs2914
API_Finalizar(int, FinalizarVenda_Model)BOX3_ERP_API.Controllers.OrdemServicoController.cs3752
Fechamento(int, FinalizarVenda_Model, DadosToken)BOX3_ERP_API.Core.Repositories.Implementations.VendaJazigoRepository.cs893
ConfirmarImpressaoContrato(int, DadosToken)BOX3_ERP_API.Core.Repositories.Implementations.PlanoContratacaoV2Repository.cs2842

Detalhamento das Referências

CriarComissao

Método privado e assíncrono que cria uma comissão baseada em um objeto Comissao, dados do token e uma lista opcional de recebimentos. É chamado duas vezes dentro do método ComissaoJazigoVenda para processar diferentes partes do cálculo da comissão.

Truncar

Método estático que realiza o truncamento de valores decimais para garantir precisão nos cálculos financeiros. Internamente, utiliza o método Math.Truncate para executar a operação.

ComissaoVendaGeral

Método público e assíncrono que calcula a comissão geral de venda para um contrato específico, utilizando dados do token. Este método chama ComissaoJazigoVenda para obter os valores de comissão específicos de jazigos.

Pagamento (AgendamentoClinicaBLL)

Métodos públicos e assíncronos que processam pagamentos relacionados a agendamentos clínicos, utilizando diferentes modelos de dados para finalizar vendas e pagamentos de serviços.

API_FecharVenda (JazigoVendaController e VendaController)

Endpoints HTTP POST que finalizam vendas de jazigos e outros produtos, acionando processos internos que podem envolver o cálculo de comissões.

API_ConfirmarImpressaoContrato (PlanoContratacaoController)

Endpoint HTTP GET que confirma a impressão de contratos, possivelmente relacionado ao fechamento de vendas e geração de comissões.

API_Finalizar (OrdemServicoController)

Endpoint HTTP POST que finaliza ordens de serviço, podendo estar relacionado ao fluxo de vendas e comissões.

Fechamento (VendaJazigoRepository)

Método público e assíncrono que realiza o fechamento da venda de jazigos, integrando dados de finalização e token, e que pode acionar o cálculo de comissões.

ConfirmarImpressaoContrato (PlanoContratacaoV2Repository)

Método público e assíncrono que confirma a impressão de contratos na versão 2 do plano de contratação, utilizado por controladores para validar etapas finais de vendas.

Impacto de Alterações

Alterações no método ComissaoJazigoVenda podem impactar diretamente o cálculo das comissões de vendas de jazigos, afetando processos financeiros e relatórios. Como ele é chamado por diversos controladores e métodos de pagamento, mudanças podem propagar efeitos em múltiplas áreas do sistema, incluindo fechamento de vendas, confirmações de contratos e processamento de pagamentos.

Propagação de Mudanças

  1. Ajustes no cálculo da comissão podem exigir atualização nos métodos CriarComissao e Truncar para manter consistência.
  2. Modificações podem impactar controladores que dependem do método, como JazigoVendaController, VendaController e AgendamentoClinicaBLL.
  3. Alterações podem afetar repositórios responsáveis pelo fechamento de vendas e confirmação de contratos.
  4. Testes e validações devem ser realizados em toda a cadeia de chamadas para garantir integridade financeira.

Requisitos para Alteração Segura

  • Compreensão completa do fluxo de cálculo de comissão e suas dependências.
  • Testes unitários e integrados abrangentes para validar resultados financeiros.
  • Comunicação com equipes de negócio para validar regras de comissão.
  • Atualização da documentação técnica e de API relacionada.
  • Revisão dos impactos em controladores e repositórios que consomem este método.