feat: refactoriser le service TitreAdmin et le contrôleur pour utiliser TitreAdminDTO pour les données de commande

This commit is contained in:
mirage
2026-04-01 11:14:37 +02:00
parent 7c373d081b
commit 1423295d2a
4 changed files with 12 additions and 13 deletions

View File

@@ -1,10 +1,9 @@
namespace Webzine.Business.Contracts.Models;
namespace Webzine.Business.Contracts.Dto;
/// <summary>
/// Commande transportant les données métier d'un titre saisi en administration.
/// Ne contient pas les listes de sélection (celles-ci restent dans le ViewModel).
/// Dto transportant les données métier d'un titre saisi en administration.
/// </summary>
public class TitreAdminCommande
public class TitreAdminDTO
{
/// <summary>
/// Identifiant du titre (0 lors d'une création).

View File

@@ -1,6 +1,6 @@
namespace Webzine.Business.Contracts;
using Webzine.Business.Contracts.Models;
using Webzine.Business.Contracts.Dto;
/// <summary>
/// Service responsable des opérations d'administration sur les titres.
@@ -12,11 +12,11 @@ public interface ITitreAdminService
/// Crée un nouveau titre à partir des données du formulaire d'administration.
/// </summary>
/// <param name="commande">Les données saisies dans le formulaire de création.</param>
void CreerTitre(TitreAdminCommande commande);
void CreerTitre(TitreAdminDTO commande);
/// <summary>
/// Met à jour un titre existant à partir des données du formulaire d'administration.
/// </summary>
/// <param name="commande">Les données saisies dans le formulaire de modification.</param>
void ModifierTitre(TitreAdminCommande commande);
void ModifierTitre(TitreAdminDTO commande);
}

View File

@@ -2,8 +2,8 @@ namespace Webzine.Business;
using Microsoft.Extensions.Logging;
using Webzine.Business.Contracts.Dto;
using Webzine.Business.Contracts;
using Webzine.Business.Contracts.Models;
using Webzine.Entity;
using Webzine.Repository.Contracts;
@@ -39,7 +39,7 @@ public class TitreAdminService : ITitreAdminService
}
/// <inheritdoc/>
public void CreerTitre(TitreAdminCommande commande)
public void CreerTitre(TitreAdminDTO commande)
{
this.logger.LogInformation(
"Création d'un nouveau titre '{Libelle}' pour l'artiste ID {IdArtiste}.",
@@ -71,7 +71,7 @@ public class TitreAdminService : ITitreAdminService
}
/// <inheritdoc/>
public void ModifierTitre(TitreAdminCommande commande)
public void ModifierTitre(TitreAdminDTO commande)
{
this.logger.LogInformation("Modification du titre ID {Id} ('{Libelle}').", commande.Id, commande.Libelle);

View File

@@ -1,13 +1,13 @@
namespace Webzine.WebApplication.Areas.Administration.Controllers;
using Business.Contracts;
using Business.Contracts.Models;
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.Rendering;
using Webzine.Entity;
using Webzine.Repository.Contracts;
using Webzine.Business.Contracts.Dto;
using Webzine.WebApplication.Areas.Administration.ViewModels.Titre;
/// <summary>
@@ -93,7 +93,7 @@ public class TitreController : Controller
/// <param name="model">Données saisies dans le formulaire.</param>
/// <returns>Redirection vers Index en cas de succès, réaffichage du formulaire sinon.</returns>
[HttpPost]
public IActionResult Create(TitreAdminCommande model)
public IActionResult Create(TitreAdminDTO model)
{
if (this.ModelState.IsValid)
{
@@ -150,7 +150,7 @@ public class TitreController : Controller
/// <param name="model">Données saisies dans le formulaire.</param>
/// <returns>Redirection vers Index en cas de succès, réaffichage du formulaire sinon.</returns>
[HttpPost]
public IActionResult Edit(TitreAdminCommande model)
public IActionResult Edit(TitreAdminDTO model)
{
if (this.ModelState.IsValid)
{