From 24ecd88cd00c315d8bf9cb7769da4d05ee3ac811 Mon Sep 17 00:00:00 2001 From: Flaminel Date: Tue, 21 Apr 2026 16:29:59 +0300 Subject: [PATCH] Fix backend page size to be in sync with the UI (#577) --- .../CustomFormatScoreControllerTests.cs | 2 +- .../Controllers/EventsController.cs | 10 ++++---- .../Controllers/ManualEventsController.cs | 19 +++++++++++---- .../Controllers/StrikesController.cs | 17 +++++++++++--- .../CustomFormatScoreController.cs | 23 ++++++++++++++----- .../Controllers/SearchStatsController.cs | 17 +++++++++++--- 6 files changed, 66 insertions(+), 22 deletions(-) diff --git a/code/backend/Cleanuparr.Api.Tests/Features/Seeker/CustomFormatScoreControllerTests.cs b/code/backend/Cleanuparr.Api.Tests/Features/Seeker/CustomFormatScoreControllerTests.cs index a24dc833..fe0c0cd3 100644 --- a/code/backend/Cleanuparr.Api.Tests/Features/Seeker/CustomFormatScoreControllerTests.cs +++ b/code/backend/Cleanuparr.Api.Tests/Features/Seeker/CustomFormatScoreControllerTests.cs @@ -59,7 +59,7 @@ public class CustomFormatScoreControllerTests : IDisposable var result = await _controller.GetCustomFormatScores(page: 1, pageSize: 999); var body = GetResponseBody(result); - body.GetProperty("PageSize").GetInt32().ShouldBe(100); + body.GetProperty("PageSize").GetInt32().ShouldBe(500); } [Fact] diff --git a/code/backend/Cleanuparr.Api/Controllers/EventsController.cs b/code/backend/Cleanuparr.Api/Controllers/EventsController.cs index 646d009c..cca46c22 100644 --- a/code/backend/Cleanuparr.Api/Controllers/EventsController.cs +++ b/code/backend/Cleanuparr.Api/Controllers/EventsController.cs @@ -26,7 +26,7 @@ public class EventsController : ControllerBase [HttpGet] public async Task>> GetEvents( [FromQuery] int page = 1, - [FromQuery] int pageSize = 100, + [FromQuery] int pageSize = 50, [FromQuery] string? severity = null, [FromQuery] string? eventType = null, [FromQuery] DateTime? fromDate = null, @@ -42,12 +42,12 @@ public class EventsController : ControllerBase if (pageSize < 1) { - pageSize = 100; + pageSize = 50; } - - if (pageSize > 1000) + + if (pageSize > 500) { - pageSize = 1000; // Cap at 1000 for performance + pageSize = 500; } var query = _context.Events.AsQueryable(); diff --git a/code/backend/Cleanuparr.Api/Controllers/ManualEventsController.cs b/code/backend/Cleanuparr.Api/Controllers/ManualEventsController.cs index 63adf63d..2ac6f1ab 100644 --- a/code/backend/Cleanuparr.Api/Controllers/ManualEventsController.cs +++ b/code/backend/Cleanuparr.Api/Controllers/ManualEventsController.cs @@ -25,7 +25,7 @@ public class ManualEventsController : ControllerBase [HttpGet] public async Task>> GetManualEvents( [FromQuery] int page = 1, - [FromQuery] int pageSize = 100, + [FromQuery] int pageSize = 50, [FromQuery] bool? isResolved = null, [FromQuery] string? severity = null, [FromQuery] DateTime? fromDate = null, @@ -33,9 +33,20 @@ public class ManualEventsController : ControllerBase [FromQuery] string? search = null) { // Validate pagination parameters - if (page < 1) page = 1; - if (pageSize < 1) pageSize = 100; - if (pageSize > 1000) pageSize = 1000; // Cap at 1000 for performance + if (page < 1) + { + page = 1; + } + + if (pageSize < 1) + { + pageSize = 50; + } + + if (pageSize > 500) + { + pageSize = 500; + } var query = _context.ManualEvents.AsQueryable(); diff --git a/code/backend/Cleanuparr.Api/Controllers/StrikesController.cs b/code/backend/Cleanuparr.Api/Controllers/StrikesController.cs index a263fbff..d4075c0a 100644 --- a/code/backend/Cleanuparr.Api/Controllers/StrikesController.cs +++ b/code/backend/Cleanuparr.Api/Controllers/StrikesController.cs @@ -29,9 +29,20 @@ public class StrikesController : ControllerBase [FromQuery] string? search = null, [FromQuery] string? type = null) { - if (page < 1) page = 1; - if (pageSize < 1) pageSize = 50; - if (pageSize > 100) pageSize = 100; + if (page < 1) + { + page = 1; + } + + if (pageSize < 1) + { + pageSize = 50; + } + + if (pageSize > 500) + { + pageSize = 500; + } var query = _context.DownloadItems .Include(d => d.Strikes) diff --git a/code/backend/Cleanuparr.Api/Features/Seeker/Controllers/CustomFormatScoreController.cs b/code/backend/Cleanuparr.Api/Features/Seeker/Controllers/CustomFormatScoreController.cs index 15842d4d..2c5ef508 100644 --- a/code/backend/Cleanuparr.Api/Features/Seeker/Controllers/CustomFormatScoreController.cs +++ b/code/backend/Cleanuparr.Api/Features/Seeker/Controllers/CustomFormatScoreController.cs @@ -31,9 +31,20 @@ public sealed class CustomFormatScoreController : ControllerBase [FromQuery] bool hideMet = false, [FromQuery] bool hideUnmonitored = false) { - if (page < 1) page = 1; - if (pageSize < 1) pageSize = 50; - if (pageSize > 100) pageSize = 100; + if (page < 1) + { + page = 1; + } + + if (pageSize < 1) + { + pageSize = 50; + } + + if (pageSize > 500) + { + pageSize = 500; + } var query = _dataContext.CustomFormatScoreEntries .AsNoTracking() @@ -100,13 +111,13 @@ public sealed class CustomFormatScoreController : ControllerBase [HttpGet("upgrades")] public async Task GetRecentUpgrades( [FromQuery] int page = 1, - [FromQuery] int pageSize = 20, + [FromQuery] int pageSize = 50, [FromQuery] Guid? instanceId = null, [FromQuery] int days = 30) { if (page < 1) page = 1; - if (pageSize < 1) pageSize = 20; - if (pageSize > 100) pageSize = 100; + if (pageSize < 1) pageSize = 50; + if (pageSize > 500) pageSize = 500; // Find history entries where a newer entry has a higher score than an older one // We group by item and look for score increases between consecutive records diff --git a/code/backend/Cleanuparr.Api/Features/Seeker/Controllers/SearchStatsController.cs b/code/backend/Cleanuparr.Api/Features/Seeker/Controllers/SearchStatsController.cs index e3d66873..ff9bb7ba 100644 --- a/code/backend/Cleanuparr.Api/Features/Seeker/Controllers/SearchStatsController.cs +++ b/code/backend/Cleanuparr.Api/Features/Seeker/Controllers/SearchStatsController.cs @@ -127,9 +127,20 @@ public sealed class SearchStatsController : ControllerBase [FromQuery] Guid? cycleId = null, [FromQuery] string? search = null) { - if (page < 1) page = 1; - if (pageSize < 1) pageSize = 50; - if (pageSize > 100) pageSize = 100; + if (page < 1) + { + page = 1; + } + + if (pageSize < 1) + { + pageSize = 50; + } + + if (pageSize > 500) + { + pageSize = 500; + } var query = _eventsContext.Events .AsNoTracking()