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> /// <summary>
/// Commande transportant les données métier d'un titre saisi en administration. /// Dto 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).
/// </summary> /// </summary>
public class TitreAdminCommande public class TitreAdminDTO
{ {
/// <summary> /// <summary>
/// Identifiant du titre (0 lors d'une création). /// Identifiant du titre (0 lors d'une création).

View File

@@ -1,6 +1,6 @@
namespace Webzine.Business.Contracts; namespace Webzine.Business.Contracts;
using Webzine.Business.Contracts.Models; using Webzine.Business.Contracts.Dto;
/// <summary> /// <summary>
/// Service responsable des opérations d'administration sur les titres. /// 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. /// Crée un nouveau titre à partir des données du formulaire d'administration.
/// </summary> /// </summary>
/// <param name="commande">Les données saisies dans le formulaire de création.</param> /// <param name="commande">Les données saisies dans le formulaire de création.</param>
void CreerTitre(TitreAdminCommande commande); void CreerTitre(TitreAdminDTO commande);
/// <summary> /// <summary>
/// Met à jour un titre existant à partir des données du formulaire d'administration. /// Met à jour un titre existant à partir des données du formulaire d'administration.
/// </summary> /// </summary>
/// <param name="commande">Les données saisies dans le formulaire de modification.</param> /// <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 Microsoft.Extensions.Logging;
using Webzine.Business.Contracts.Dto;
using Webzine.Business.Contracts; using Webzine.Business.Contracts;
using Webzine.Business.Contracts.Models;
using Webzine.Entity; using Webzine.Entity;
using Webzine.Repository.Contracts; using Webzine.Repository.Contracts;
@@ -39,7 +39,7 @@ public class TitreAdminService : ITitreAdminService
} }
/// <inheritdoc/> /// <inheritdoc/>
public void CreerTitre(TitreAdminCommande commande) public void CreerTitre(TitreAdminDTO commande)
{ {
this.logger.LogInformation( this.logger.LogInformation(
"Création d'un nouveau titre '{Libelle}' pour l'artiste ID {IdArtiste}.", "Création d'un nouveau titre '{Libelle}' pour l'artiste ID {IdArtiste}.",
@@ -71,7 +71,7 @@ public class TitreAdminService : ITitreAdminService
} }
/// <inheritdoc/> /// <inheritdoc/>
public void ModifierTitre(TitreAdminCommande commande) public void ModifierTitre(TitreAdminDTO commande)
{ {
this.logger.LogInformation("Modification du titre ID {Id} ('{Libelle}').", commande.Id, commande.Libelle); 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; namespace Webzine.WebApplication.Areas.Administration.Controllers;
using Business.Contracts; using Business.Contracts;
using Business.Contracts.Models;
using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.Rendering; using Microsoft.AspNetCore.Mvc.Rendering;
using Webzine.Entity; using Webzine.Entity;
using Webzine.Repository.Contracts; using Webzine.Repository.Contracts;
using Webzine.Business.Contracts.Dto;
using Webzine.WebApplication.Areas.Administration.ViewModels.Titre; using Webzine.WebApplication.Areas.Administration.ViewModels.Titre;
/// <summary> /// <summary>
@@ -93,7 +93,7 @@ public class TitreController : Controller
/// <param name="model">Données saisies dans le formulaire.</param> /// <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> /// <returns>Redirection vers Index en cas de succès, réaffichage du formulaire sinon.</returns>
[HttpPost] [HttpPost]
public IActionResult Create(TitreAdminCommande model) public IActionResult Create(TitreAdminDTO model)
{ {
if (this.ModelState.IsValid) if (this.ModelState.IsValid)
{ {
@@ -150,7 +150,7 @@ public class TitreController : Controller
/// <param name="model">Données saisies dans le formulaire.</param> /// <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> /// <returns>Redirection vers Index en cas de succès, réaffichage du formulaire sinon.</returns>
[HttpPost] [HttpPost]
public IActionResult Edit(TitreAdminCommande model) public IActionResult Edit(TitreAdminDTO model)
{ {
if (this.ModelState.IsValid) if (this.ModelState.IsValid)
{ {