< Summary

Information
Class: FAU.API.Controllers.SubUnidadesController
Assembly: FAU.API
File(s): /home/runner/work/Sistema.Liquidacion.BE/Sistema.Liquidacion.BE/FAU.API/Controllers/SubUnidadesController.cs
Line coverage
58%
Covered lines: 10
Uncovered lines: 7
Coverable lines: 17
Total lines: 43
Line coverage: 58.8%
Branch coverage
100%
Covered branches: 2
Total branches: 2
Branch coverage: 100%
Method coverage

Feature is only available for sponsors

Upgrade to PRO version

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity Line coverage
.ctor(...)100%11100%
GetSubUnidades()100%22100%

File(s)

/home/runner/work/Sistema.Liquidacion.BE/Sistema.Liquidacion.BE/FAU.API/Controllers/SubUnidadesController.cs

#LineLine coverage
 1using FAU.Entidades;
 2using FAU.Logica.Services;
 3using Microsoft.AspNetCore.Authorization;
 4using Microsoft.AspNetCore.Mvc;
 5
 6namespace FAU.API.Controllers;
 7
 8[ApiController]
 9[Route("api/unidades/{unidadId}/sub-unidades")]
 10[Authorize]
 11public class SubUnidadesController : ControllerBase
 12{
 13    private readonly ISubUnidadService _service;
 14
 415    public SubUnidadesController(ISubUnidadService service) => _service = service;
 16
 17    /// <summary>
 18    /// GET /api/unidades/{unidadId}/sub-unidades
 19    /// Retorna las sub-unidades vigentes de una unidad.
 20    /// </summary>
 21    [HttpGet]
 22    [FAU.API.Security.RequirePermission(PermisoEnum.VerSubUnidades)]
 23    public async Task<IActionResult> GetSubUnidades(long unidadId)
 24    {
 225        var items = await _service.GetByUnidadIdAsync(unidadId);
 226        var list  = items.ToList();
 27
 228        if (!list.Any())
 129            return Ok(new { unidadId, subUnidades = Array.Empty<object>() });
 30
 131        return Ok(new
 132        {
 133            unidadId,
 034            subUnidades = list.Select(s => new
 035            {
 036                id           = s.Id,
 037                codigo       = s.Codigo,
 038                denominacion = s.Denominacion,
 039                vigente      = s.Vigente
 040            })
 141        });
 242    }
 43}