diff --git a/src/FilterLists.Api/V1/Controllers/LicensesController.cs b/src/FilterLists.Api/V1/Controllers/LicensesController.cs index eeafc8a79..c8c1a0e7a 100644 --- a/src/FilterLists.Api/V1/Controllers/LicensesController.cs +++ b/src/FilterLists.Api/V1/Controllers/LicensesController.cs @@ -18,12 +18,12 @@ public LicensesController(IMemoryCache memoryCache, SeedService seedService, Lic [HttpGet] public async Task GetAll() => - await Get(() => licenseService.GetAllAsync()); + await Get(() => licenseService.GetAllImplementedAsync()); [HttpGet] [Route("{id}")] public async Task GetById(int id) => - await Get(() => licenseService.GetByIdAsync(id), id); + await Get(() => licenseService.GetImplementedByIdAsync(id), id); [HttpGet("seed")] public async Task Seed() => diff --git a/src/FilterLists.Services/License/LicenseService.cs b/src/FilterLists.Services/License/LicenseService.cs index 5d1cff688..8b9317248 100644 --- a/src/FilterLists.Services/License/LicenseService.cs +++ b/src/FilterLists.Services/License/LicenseService.cs @@ -1,4 +1,5 @@ using System.Collections.Generic; +using System.Linq; using System.Threading.Tasks; using AutoMapper; using AutoMapper.QueryableExtensions; @@ -17,14 +18,15 @@ public LicenseService(FilterListsDbContext dbContext, IConfigurationProvider map { } - public async Task> GetAllAsync() => - await DbContext.Licenses - .ProjectTo(MapConfig) - .ToListAsync(); + private IQueryable ImplementedLicenses => + DbContext.Licenses.Where(l => l.FilterLists.Any()); - public async Task GetByIdAsync(int id) => - await DbContext.Licenses - .ProjectTo(MapConfig) - .FirstOrDefaultAsync(l => l.Id == id); + public async Task> GetAllImplementedAsync() => + await ImplementedLicenses.ProjectTo(MapConfig) + .ToListAsync(); + + public async Task GetImplementedByIdAsync(int id) => + await ImplementedLicenses.ProjectTo(MapConfig) + .FirstOrDefaultAsync(l => l.Id == id); } } \ No newline at end of file