Pular para o conteúdo principal

API_GetListRota

atenção

Gerado por Inteligência Artificial.


Visão Geral

Este método retorna uma lista de BairroDto para um dado rotaId, agregando dados de clientes associados e removendo duplicatas, usado por APIs móveis para exibir bairros de uma rota.

BOX3_ERP_API\BOX3_ERP_API.Core\BLL\BairroBLL.cs
public async Task<List<BairroDto>> API_GetListRota(int rotaId) { ... }

Dependências Diretas

MétodoLocalizaçãoLinha
ClienteBLL.GetClienteByRota(int)BOX3_ERP_API\BOX3_ERP_API.Core\BLL\BairroBLL.cs137
ClienteBLL.GetClienteByRotaVendedor(int,bool)BOX3_ERP_API\BOX3_ERP_API.Core\BLL\BairroBLL.cs139
IQueryable<DISTINCT BairroDto>.Distinct()BOX3_ERP_API\BOX3_ERP_API.Core\BLL\BairroBLL.cs141
List<int>.Contains(int)BOX3_ERP_API\BOX3_ERP_API.Core\BLL\BairroBLL.cs152

Referências

Método / EndpointLocalizaçãoLinha
API_GetListRota(int rotaId)BOX3_ERP_API\BOX3_ERP_API\Controllers\Mobile\BairroController.cs44

Detalhamento das Referências

API_GetListRota

Este é o método do controller móvel BairroController decorado com

[HttpGet("rota/{rotaId}")]  
public async Task<ActionResult<List<BairroDto>>> API_GetListRota(int rotaId) { ... }

Ele expõe o endpoint que recebe o rotaId, invoca o BLL API_GetListRota, e retorna a lista de DTOs de bairros para a rota solicitada.


Impacto de Alterações

  • Alterar a assinatura (tipo de retorno ou parâmetros) exige atualização do controller móvel e de quaisquer consumidores desta API.
  • Mudanças na lógica de agregação (duplica/remove) afetam os dados exibidos no aplicativo móvel.

Propagação de Mudanças

  1. Atualizar testes unitários que validem retorno de bairros para diferentes rotaId.
  2. Verificar endpoints móveis (BairroController) após alterações no BLL.
  3. Sincronizar com front-end móvel para garantir compatibilidade de modelo DTO.
  4. Atualizar documentação Swagger/OpenAPI para refletir mudanças na API.

Requisitos para Alteração Segura

  • Cobertura de testes para cenários com rota sem clientes, rota com clientes e com vendedores.
  • Validação de entrada no controller (por exemplo, rotaId > 0).
  • Tratamento de exceções e retorno de status apropriados (404 se não houver bairros, 500 para erros internos).