Pular para o conteúdo principal

Problemas

atenção

Gerado por Inteligência Artificial.


Visão Geral

Este método processa e retorna dados de problemas no plano com base nos filtros opcionais fornecidos em FiltrosListagemDetalhadoDto, produzindo um AnalisePlanoRetornoProblemasDto que contém a lista de problemas e metadados de paginação.

BOX3_ERP_API\BOX3_ERP_API.Core\BLL\AnalisePlanoBLL.cs
public async Task<AnalisePlanoRetornoProblemasDto> Problemas(FiltrosListagemDetalhadoDto filtros = null) { ... }

Dependências Diretas

MétodoLocalizaçãoLinha
IDbConnection.QueryAsync<BOX3_ERP_API.Core.DTOs.AnalisePlano.ProblemasPlanoDto>(string, object, IDbTransaction, int?, CommandType?)BOX3_ERP_API\BOX3_ERP_API.Core\BLL\AnalisePlanoBLL.cs290
DateTime.Subtract(DateTime)BOX3_ERP_API\BOX3_ERP_API.Core\BLL\AnalisePlanoBLL.cs314
List<string>.Contains(string)BOX3_ERP_API\BOX3_ERP_API.Core\BLL\AnalisePlanoBLL.cs331
List<string>.AddRange(IEnumerable<string>)BOX3_ERP_API\BOX3_ERP_API.Core\BLL\AnalisePlanoBLL.cs336
DTParameters.MakeResponseList<BOX3_ERP_API.Core.DTOs.AnalisePlano.ProblemasPlanoDto>(List<ProblemasPlanoDto>, int?)BOX3_ERP_API\BOX3_ERP_API.Core\BLL\AnalisePlanoBLL.cs344

Referências

Método / EndpointLocalizaçãoLinha
FiltroProblemas()BOX3_ERP_API\BOX3_ERP_API.Controllers\AnalisePlanoController.cs53
Problemas([FromBody] filtros)BOX3_ERP_API\BOX3_ERP_API.Controllers\AnalisePlanoController.cs70

Detalhamento das Referências

FiltroProblemas

Este endpoint GET ([HttpGet("FiltroProblemas")]) busca e retorna as opções de filtro de problemas disponíveis, sem invocar diretamente o BLL Problemas.

Problemas

Este endpoint POST ([HttpPost("Problemas")]) recebe o FiltrosListagemDetalhadoDto no corpo da requisição, invoca o BLL Problemas para recuperar e formatar os dados de problemas, e retorna um ActionResult<AnalisePlanoRetornoProblemasDto> ao consumidor da API.


Impacto de Alterações

  • Alterações na consulta Dapper (QueryAsync) ou na lógica de cálculo de diferença entre datas (Subtract) podem afetar quais registros são considerados “problemas”.
  • Mudanças na filtragem de strings (uso de Contains, AddRange) impactam a seleção de problemas excluídos ou agregados.
  • Modificações na geração de paginação via MakeResponseList alteram o formato e a paginação dos resultados retornados.

Propagação de Mudanças

  1. Atualizar testes unitários que validem cenários com e sem filtros, incluindo exclusões de problemas.
  2. Verificar comportamento dos endpoints FiltroProblemas e Problemas após alterações no BLL.
  3. Sincronizar documentação Swagger/OpenAPI para refletir possíveis mudanças no DTO de retorno ou nos parâmetros de filtro.
  4. Comunicar times de front-end que consomem esses endpoints sobre alterações na estrutura de resposta.

Requisitos para Alteração Segura

  • Cobertura de testes para cenários sem filtro, filtro vazio, filtros múltiplos e casos extremos.
  • Validação de parâmetros de entrada no controller e tratamento de null em filtros.
  • Verificação de performance da consulta SQL em grandes volumes de dados.
  • Tratamento de exceções e rollback de transação em caso de falha no acesso ao banco.