ComissaoJazigoVenda
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.
private async Task\<decimal\> ComissaoJazigoVenda(int contratoId, DadosToken dadosToken, Configuracao config, List\<Recebimento\> recebimentos = null) {...}
Dependências Diretas
| Método | Localização | Linha |
|---|---|---|
| ComissaoJazigoVenda(int, DadosToken, Configuracao, List<Recebimento>) | (não informado) | 0 |
| CriarComissao(Comissao, DadosToken, List<Recebimento>) | BOX3_ERP_API.Core.BLL.ComissaoBLL.cs | 445 |
| CriarComissao(Comissao, DadosToken, List<Recebimento>) | BOX3_ERP_API.Core.BLL.ComissaoBLL.cs | 460 |
| Truncar(decimal) | BOX3_ERP_API.Core.BLL.ComissaoBLL.cs | 73 |
| Truncate(decimal) | BOX3_ERP_API.Core.Util.Calculadora.cs | 11 |
Referências
| Método / Endpoint | Localização | Linha |
|---|---|---|
| ComissaoJazigoVenda(int, DadosToken, Configuracao, List<Recebimento>) | (não informado) | 0 |
| ComissaoVendaGeral(int, DadosToken) | BOX3_ERP_API.Core.BLL.ComissaoBLL.cs | 46 |
| Pagamento(int, FinalizarVenda_Model, DadosToken) | BOX3_ERP_API.BLL.Clinica.BLL.AgendamentoClinicaBLL.cs | 2264 |
| Pagamento(int, Item_PagamentoServicoModel, DadosToken) | BOX3_ERP_API.BLL.Clinica.BLL.AgendamentoClinicaBLL.cs | 7054 |
| API_FecharVenda(int, FinalizarVenda_Model) | BOX3_ERP_API.Controllers.JazigoVendaController.cs | 898 |
| API_ConfirmarImpressaoContrato(int) | BOX3_ERP_API.Controllers.PlanoContratacaoController.cs | 1034 |
| API_FecharVenda(int, FinalizarVenda_Model) | BOX3_ERP_API.Controllers.VendaController.cs | 2914 |
| API_Finalizar(int, FinalizarVenda_Model) | BOX3_ERP_API.Controllers.OrdemServicoController.cs | 3752 |
| Fechamento(int, FinalizarVenda_Model, DadosToken) | BOX3_ERP_API.Core.Repositories.Implementations.VendaJazigoRepository.cs | 893 |
| ConfirmarImpressaoContrato(int, DadosToken) | BOX3_ERP_API.Core.Repositories.Implementations.PlanoContratacaoV2Repository.cs | 2842 |
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
- Ajustes no cálculo da comissão podem exigir atualização nos métodos CriarComissao e Truncar para manter consistência.
- Modificações podem impactar controladores que dependem do método, como JazigoVendaController, VendaController e AgendamentoClinicaBLL.
- Alterações podem afetar repositórios responsáveis pelo fechamento de vendas e confirmação de contratos.
- 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.