Merge pull request '#199 La méthode pour supprimer un titre est renommée et prend un id au lieu du modèle. Ajout d'un try catch sur artiste controller pour debugger l'ajout d'un artiste.' (#205) from j3/fix_operations_admin into dev
Reviewed-on: https://10.4.0.131/gitea/DI1-P4-E1/Webzine/pulls/205
This commit is contained in:
@@ -33,7 +33,6 @@ public class DbTitreRepository : ITitreRepository
|
|||||||
try
|
try
|
||||||
{
|
{
|
||||||
this.logger.LogInformation("Ajout d'un nouveau titre: {Libelle}", titre.Libelle);
|
this.logger.LogInformation("Ajout d'un nouveau titre: {Libelle}", titre.Libelle);
|
||||||
this.logger.LogDebug("Début de l'ajout du titre en base de données");
|
|
||||||
|
|
||||||
this.context.Titres.Add(titre);
|
this.context.Titres.Add(titre);
|
||||||
this.context.SaveChanges();
|
this.context.SaveChanges();
|
||||||
@@ -57,7 +56,6 @@ public class DbTitreRepository : ITitreRepository
|
|||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
this.logger.LogDebug("Comptage des titres en base de données");
|
|
||||||
var count = this.context.Titres.Count();
|
var count = this.context.Titres.Count();
|
||||||
this.logger.LogDebug("Nombre total de titres: {Count}", count);
|
this.logger.LogDebug("Nombre total de titres: {Count}", count);
|
||||||
return count;
|
return count;
|
||||||
@@ -75,7 +73,6 @@ public class DbTitreRepository : ITitreRepository
|
|||||||
try
|
try
|
||||||
{
|
{
|
||||||
this.logger.LogInformation("Suppression du titre avec l'ID: {IdTitre}", titre.IdTitre);
|
this.logger.LogInformation("Suppression du titre avec l'ID: {IdTitre}", titre.IdTitre);
|
||||||
this.logger.LogDebug("Début de la suppression du titre en base de données");
|
|
||||||
|
|
||||||
this.context.Titres.Remove(titre);
|
this.context.Titres.Remove(titre);
|
||||||
this.context.SaveChanges();
|
this.context.SaveChanges();
|
||||||
@@ -100,7 +97,6 @@ public class DbTitreRepository : ITitreRepository
|
|||||||
try
|
try
|
||||||
{
|
{
|
||||||
this.logger.LogDebug("Recherche des titres avec offset: {Offset}, limit: {Limit}", offset, limit);
|
this.logger.LogDebug("Recherche des titres avec offset: {Offset}, limit: {Limit}", offset, limit);
|
||||||
this.logger.LogDebug("Préparation de la requête avec les inclusions Artiste et Styles");
|
|
||||||
|
|
||||||
var titres = this.context.Titres
|
var titres = this.context.Titres
|
||||||
.OrderByDescending(t => t.DateCreation)
|
.OrderByDescending(t => t.DateCreation)
|
||||||
@@ -125,12 +121,10 @@ public class DbTitreRepository : ITitreRepository
|
|||||||
try
|
try
|
||||||
{
|
{
|
||||||
this.logger.LogInformation("Incrémentation du nombre de lectures pour le titre ID: {IdTitre}", titre.IdTitre);
|
this.logger.LogInformation("Incrémentation du nombre de lectures pour le titre ID: {IdTitre}", titre.IdTitre);
|
||||||
this.logger.LogDebug("Recherche du titre en base de données");
|
|
||||||
|
|
||||||
var existingTitre = this.context.Titres.Find(titre.IdTitre);
|
var existingTitre = this.context.Titres.Find(titre.IdTitre);
|
||||||
if (existingTitre != null)
|
if (existingTitre != null)
|
||||||
{
|
{
|
||||||
this.logger.LogDebug("Titre trouvé, incrémentation du compteur de lectures");
|
|
||||||
existingTitre.NbLectures++;
|
existingTitre.NbLectures++;
|
||||||
this.context.SaveChanges();
|
this.context.SaveChanges();
|
||||||
this.logger.LogDebug("Nouveau nombre de lectures: {NbLectures}", existingTitre.NbLectures);
|
this.logger.LogDebug("Nouveau nombre de lectures: {NbLectures}", existingTitre.NbLectures);
|
||||||
@@ -158,12 +152,10 @@ public class DbTitreRepository : ITitreRepository
|
|||||||
try
|
try
|
||||||
{
|
{
|
||||||
this.logger.LogInformation("Incrémentation du nombre de likes pour le titre ID: {IdTitre}", titre.IdTitre);
|
this.logger.LogInformation("Incrémentation du nombre de likes pour le titre ID: {IdTitre}", titre.IdTitre);
|
||||||
this.logger.LogDebug("Recherche du titre en base de données");
|
|
||||||
|
|
||||||
var existingTitre = this.context.Titres.Find(titre.IdTitre);
|
var existingTitre = this.context.Titres.Find(titre.IdTitre);
|
||||||
if (existingTitre != null)
|
if (existingTitre != null)
|
||||||
{
|
{
|
||||||
this.logger.LogDebug("Titre trouvé, incrémentation du compteur de likes");
|
|
||||||
existingTitre.NbLikes++;
|
existingTitre.NbLikes++;
|
||||||
this.context.SaveChanges();
|
this.context.SaveChanges();
|
||||||
this.logger.LogDebug("Nouveau nombre de likes: {NbLikes}", existingTitre.NbLikes);
|
this.logger.LogDebug("Nouveau nombre de likes: {NbLikes}", existingTitre.NbLikes);
|
||||||
@@ -281,9 +273,6 @@ public class DbTitreRepository : ITitreRepository
|
|||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
this.logger.LogDebug("Récupération de tous les titres");
|
|
||||||
this.logger.LogDebug("Préparation de la requête avec les inclusions Artiste et Styles");
|
|
||||||
|
|
||||||
var titres = this.context.Titres
|
var titres = this.context.Titres
|
||||||
.Include(t => t.Artiste)
|
.Include(t => t.Artiste)
|
||||||
.Include(t => t.Styles)
|
.Include(t => t.Styles)
|
||||||
@@ -307,7 +296,6 @@ public class DbTitreRepository : ITitreRepository
|
|||||||
try
|
try
|
||||||
{
|
{
|
||||||
this.logger.LogInformation("Recherche des titres par style: {Libelle}", libelle);
|
this.logger.LogInformation("Recherche des titres par style: {Libelle}", libelle);
|
||||||
this.logger.LogDebug("Préparation de la requête de recherche par style");
|
|
||||||
|
|
||||||
var titres = this.context.Titres
|
var titres = this.context.Titres
|
||||||
.Include(t => t.Artiste)
|
.Include(t => t.Artiste)
|
||||||
|
|||||||
@@ -81,8 +81,16 @@ public class ArtisteController : Controller
|
|||||||
Biographie = model.Biographie,
|
Biographie = model.Biographie,
|
||||||
};
|
};
|
||||||
|
|
||||||
// Persister les données.
|
try
|
||||||
this.artisteRepository.Add(artiste);
|
{
|
||||||
|
this.artisteRepository.Add(artiste);
|
||||||
|
this.logger.LogInformation("Création d'un nouvel artiste: {Nom}", artiste.Nom);
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
this.logger.LogError(ex, "Erreur lors de la création de l'artiste: {Nom}", artiste.Nom);
|
||||||
|
return this.View(model);
|
||||||
|
}
|
||||||
|
|
||||||
// Renvoyer sur la page Index.
|
// Renvoyer sur la page Index.
|
||||||
return this.RedirectToAction("Index");
|
return this.RedirectToAction("Index");
|
||||||
|
|||||||
@@ -252,24 +252,18 @@ public class TitreController : Controller
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Méthode POST pour supprimer un titre.
|
/// Méthode POST pour supprimer un titre.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="model">Le titre à supprimer.</param>
|
/// <param name="id">L'identifiant du titre à supprimer, utilisé pour récupérer les données du titre à partir de la liste des titres générés.</param>
|
||||||
/// <returns>Redirige vers la page d'index d'admin titre.</returns>
|
/// <returns>Redirige vers la page d'index d'admin titre.</returns>
|
||||||
[HttpPost]
|
[HttpPost]
|
||||||
public IActionResult Delete(AdminTitreDelete model)
|
public IActionResult DeleteTitre(int id)
|
||||||
{
|
{
|
||||||
var titre = this.titreRepository.Find(model.Id);
|
var titre = this.titreRepository.Find(id);
|
||||||
|
|
||||||
if (!this.ModelState.IsValid)
|
|
||||||
{
|
|
||||||
return this.View(model);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (titre != null)
|
if (titre != null)
|
||||||
{
|
{
|
||||||
this.titreRepository.Delete(titre);
|
this.titreRepository.Delete(titre);
|
||||||
return this.RedirectToAction("Index");
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return this.View(model);
|
return this.RedirectToAction("Index");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1,5 +1,9 @@
|
|||||||
@model Webzine.WebApplication.Areas.Administration.ViewModels.Titre.AdminTitreDelete
|
@model Webzine.WebApplication.Areas.Administration.ViewModels.Titre.AdminTitreDelete
|
||||||
|
|
||||||
|
@{
|
||||||
|
ViewData["Title"] = "Supprimer un titre";
|
||||||
|
}
|
||||||
|
|
||||||
<div class="container mt-4">
|
<div class="container mt-4">
|
||||||
|
|
||||||
<h1 class="mb-3">Supprimer un titre</h1>
|
<h1 class="mb-3">Supprimer un titre</h1>
|
||||||
@@ -13,7 +17,7 @@
|
|||||||
@Model.Artiste ?
|
@Model.Artiste ?
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<form asp-action="Delete" method="post">
|
<form asp-action="DeleteTitre" method="post">
|
||||||
|
|
||||||
<input type="hidden" asp-for="Id"/>
|
<input type="hidden" asp-for="Id"/>
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user