diff --git a/Sources/apiLOL/ChampionMapper.cs b/Sources/apiLOL/ChampionMapper.cs index 6875ca4..d15b4be 100644 --- a/Sources/apiLOL/ChampionMapper.cs +++ b/Sources/apiLOL/ChampionMapper.cs @@ -13,5 +13,13 @@ namespace apiLOL Console.WriteLine(championDTO.Name); return championDTO; } - } + + public static Champion ToModel(this ChampionDTO championDTO) + { + Champion champion = new Champion(championDTO.Name); + champion.Bio = championDTO.Bio; + + return champion; + } + } } diff --git a/Sources/apiLOL/Controllers/ControllerChampions.cs b/Sources/apiLOL/Controllers/ControllerChampions.cs index fa13e23..78613eb 100644 --- a/Sources/apiLOL/Controllers/ControllerChampions.cs +++ b/Sources/apiLOL/Controllers/ControllerChampions.cs @@ -1,6 +1,8 @@ using Microsoft.AspNetCore.Mvc; using Model; using StubLib; +using System.Xml.Linq; +using static StubLib.StubData; // For more information on enabling Web API for empty projects, visit https://go.microsoft.com/fwlink/?LinkID=397860 namespace apiLOL.Controllers @@ -10,7 +12,6 @@ namespace apiLOL.Controllers public class ControllerChampions : Controller { private readonly IDataManager data; - //public StubData.ChampionsManager ChampionsManager { get; set; } public ControllerChampions(IDataManager manager) { @@ -29,22 +30,20 @@ namespace apiLOL.Controllers // GET api//5 - [HttpGet("{id}")] - public async Task Get(int id) + [HttpGet("{name}")] + public async Task Get(string name) { - //ChampionsManager.GetNbItemsByCharacteristic("Akali"); - //ChampionMapper.ToDTO(ChampionsManager.GetNbItemsByCharacteristic("Akali")); - //return new ChampionMapper.ToDTO(ChampionsManager.GetNbItemsByCharacteristic("Akali")); - //return "value"; - var champs = (await data.ChampionsMgr.GetItems(0, await data.ChampionsMgr.GetNbItems())).Select(Model => Model.ToDTO()); - return Ok(champs); - + var champ = await data.ChampionsMgr.GetItemsByName(name, 0, await data.ChampionsMgr.GetNbItemsByName(name)); + return Ok(); } // POST api/ [HttpPost] - public void Post([FromBody] string value) + public IActionResult Post(ChampionDTO champDTO) { + Champion tmp = champDTO.ToModel(); + data.ChampionsMgr.AddItem(tmp); + return Ok(); } // PUT api//5 @@ -58,5 +57,6 @@ namespace apiLOL.Controllers public void Delete(int id) { } + } }