#216 : Ajout de la pagination sur la page style.

This commit is contained in:
Loic Masi
2026-04-09 11:38:25 +02:00
parent 37a14a7a50
commit 645cd19909
6 changed files with 99 additions and 4 deletions

View File

@@ -67,17 +67,25 @@ namespace Webzine.WebApplication.Controllers
/// Affiche les titres correspondant a un style musical donne.
/// </summary>
/// <param name="style">Nom du style musical.</param>
/// <param name="page">Numéro de la page.</param>
/// <returns>Vue contenant la liste filtree.</returns>
public IActionResult Style(string style)
[Route("/titres/styles/{style}", Name = "TitresParStyle")]
public IActionResult Style(string style, int page = 0)
{
this.logger.LogInformation("Recherche des titres pour le style : {Style}.", style);
var offset = page * 10;
var limit = 10;
var titresFiltres = this.titreRepository.SearchByStylePaginate(offset, limit, style).ToList();
var totalTitres = this.titreRepository.CountByStyle(style);
var totalPages = (int)Math.Ceiling((double)totalTitres / limit);
var titresFiltres = this.titreRepository.SearchByStyle(style).ToList();
this.logger.LogInformation("Recherche des titres pour le style : {Style}.", style);
var vm = new TitreStyle
{
StyleName = style,
Titres = titresFiltres.Select(MapTitreItem).ToList(),
Page = page,
TotalPages = totalPages,
};
return this.View(vm);