1
0
Fork 0
mirror of https://github.com/s-frick/effigenix.git synced 2026-03-28 08:29:36 +01:00

feat: Paginierung für alle GET-List-Endpoints (#61)

Einheitliches Paginierungs-Pattern mit page, size und Multi-Field sort
für alle 14 List-Endpoints. Response-Format ändert sich von [...] zu
{ content: [...], page: { number, size, totalElements, totalPages } }.

Backend:
- Shared Kernel: Page<T>, PageRequest, SortField, SortDirection
- PaginationHelper (SQL ORDER BY mit Whitelist), PageResponse DTO
- Paginated Methoden in allen 14 Domain-Repos + JDBC-Implementierungen
- Safety-Limit (500) für findAllBelowMinimumLevel/ExpiryRelevantBatches
- Alle List-Use-Cases akzeptieren PageRequest, liefern Page<T>
- Alle Controller mit page/size/sort Query-Params + PageResponse

Frontend:
- PagedResponse<T> Type auf nested page-Format aktualisiert
- Alle 14 API-Client-Resourcen liefern PagedResponse mit PaginationParams
- Alle Hooks mit Pagination-State (currentPage, totalPages, pageSize)
- Alle List-Screens mit Seiten-Navigation (Pfeiltasten) und Footer

Loadtest:
- Podman-Support im justfile (DOCKER_HOST auto-detect)
- Verschärfte Performance-Schwellwerte basierend auf Ist-Werten
This commit is contained in:
Sebastian Frick 2026-03-20 16:33:20 +01:00
parent fc4faafd57
commit 72979c9537
151 changed files with 2880 additions and 1120 deletions

View file

@ -76,6 +76,22 @@ fuzz-regression:
fuzz-single TEST:
cd backend && mvn test -Pfuzz -Dtest={{ TEST }}
# ─── Load Testing ────────────────────────────────────────
# Gatling Load Test ausführen (startet Backend + DB via Testcontainers)
loadtest:
#!/usr/bin/env bash
set -euo pipefail
# Podman-Socket für Testcontainers bereitstellen (falls kein Docker)
if [ -z "${DOCKER_HOST:-}" ] && [ ! -S /var/run/docker.sock ]; then
PODMAN_SOCK="/run/user/$(id -u)/podman/podman.sock"
if [ -S "$PODMAN_SOCK" ]; then
export DOCKER_HOST="unix://$PODMAN_SOCK"
export TESTCONTAINERS_RYUK_DISABLED=true
fi
fi
cd loadtest && mvn gatling:test
# ─── Services ─────────────────────────────────────────────
# Bugsink starten (Error Tracking)