From cce59a0adfb3a3d99c5ed2d92d5eaa9e9be47fc9 Mon Sep 17 00:00:00 2001 From: "bastien.ollier@etu.uca.fr" Date: Fri, 24 Feb 2023 17:06:53 +0100 Subject: [PATCH] modif mapper --- Sources/apiLOL/ChampionMapper.cs | 6 ++---- .../apiLOL/Controllers/ControllerChampions.cs | 17 +++++++++++++---- 2 files changed, 15 insertions(+), 8 deletions(-) diff --git a/Sources/apiLOL/ChampionMapper.cs b/Sources/apiLOL/ChampionMapper.cs index 4a27adf..a7009ab 100644 --- a/Sources/apiLOL/ChampionMapper.cs +++ b/Sources/apiLOL/ChampionMapper.cs @@ -4,10 +4,8 @@ namespace apiLOL { public static class ChampionMapper { - public static ChampionDTO ToDTO(this Champion champion) - { - return new ChampionDTO(champion.Name, champion.Bio); - } + public static ChampionDTO ToDTO(this Champion champion) => new ChampionDTO(champion.Name, champion.Bio); + public static Champion ToModel(this ChampionDTO championDTO) { diff --git a/Sources/apiLOL/Controllers/ControllerChampions.cs b/Sources/apiLOL/Controllers/ControllerChampions.cs index 8243e03..18bb600 100644 --- a/Sources/apiLOL/Controllers/ControllerChampions.cs +++ b/Sources/apiLOL/Controllers/ControllerChampions.cs @@ -66,10 +66,19 @@ namespace apiLOL.Controllers public async Task Post(ChampionDTO champDTO) { _logger.LogInformation($"methode Post de ControllerChampions appelée avec le paramètre {champDTO.Name}"); - Champion tmp = champDTO.ToModel(); - Champion champion = await data.ChampionsMgr.AddItem(tmp); - ChampionDTO dtoChamp = champion.ToDTO(); - return CreatedAtAction(nameof(GetChampion), new { name = dtoChamp.Name }, dtoChamp); + + + try + { + Champion tmp = champDTO.ToModel(); + Champion champion = await data.ChampionsMgr.AddItem(tmp); + ChampionDTO dtoChamp = champion.ToDTO(); + return CreatedAtAction(nameof(GetChampion), new { name = dtoChamp.Name }, dtoChamp); + } + catch + { + return BadRequest("le champion existe deja"); + } } // PUT api//5