add get dans skin controller

API2
Bastien OLLIER 2 years ago
parent 428501e7fa
commit 640e90d92d

@ -28,8 +28,6 @@ namespace apiLOL.Controllers
[HttpGet]
public async Task<IActionResult> Get([FromQuery]int index = 0, int count = 10, string? name = "")
{
//FromQuery permet de filtrer dans la collection de champions en fonction du nom
_logger.LogInformation($"methode Get de ControllerChampions appelée index:{index}, count: {count} et name:{name}");
int nbChampions = await data.ChampionsMgr.GetNbItems();
_logger.LogInformation($"Nombre de champions : {nbChampions}");

@ -1,4 +1,5 @@
using Microsoft.AspNetCore.Mvc;
using apiLOL.DTO;
using Microsoft.AspNetCore.Mvc;
using Model;
// For more information on enabling Web API for empty projects, visit https://go.microsoft.com/fwlink/?LinkID=397860
@ -23,10 +24,23 @@ namespace apiLOL.Controllers
// GET api/<ControllerSkins>/5
[HttpGet("{id}")]
public string Get(int id)
[HttpGet]
public async Task<IActionResult> Get([FromQuery] int index = 0, int count = 10, string? name = "")
{
return "value";
_logger.LogInformation($"methode Get de ControllerSkins appelée index:{index}, count: {count} et name:{name}");
int nbSkins = await data.SkinsMgr.GetNbItems();
_logger.LogInformation($"Nombre de skins : {nbSkins}");
var skin = (await data.SkinsMgr.GetItems(index, await data.SkinsMgr.GetNbItems())).Select(Model => Model.ToDTO());//.Where(Model => Model.Name.Contains(name)).Skip(index * count).Take(count).Select(Model => Model.ToDTO());
var page = new SkinPageDTO
{
Data = (IEnumerable<SkinDTO>)skin,
Index = index,
Count = count,
TotalCount = nbSkins
};
return Ok(page);
}
// POST api/<ControllerSkins>

@ -11,7 +11,6 @@
}
public string Name { get; set; }
public string Bio { get; set; }
public string Icon { get; set; }
}

@ -4,7 +4,8 @@ namespace apiLOL.DTO
{
public static class ChampionMapper
{
public static ChampionDTO ToDTO(this Champion champion) => new ChampionDTO(champion.Name, champion.Bio, champion.Icon);
public static ChampionDTO ToDTO(this Champion champion)
=> new ChampionDTO(champion.Name, champion.Bio, champion.Icon);
public static Champion ToModel(this ChampionDTO championDTO)

@ -4,17 +4,15 @@ namespace apiLOL.DTO
{
public class SkinDTO
{
public SkinDTO(string name, Champion champion, float price = 0.0f, string icon = "", string image = "", string description = "")
public SkinDTO(string name, float price = 0.0f, string icon = "", string image = "", string description = "")
{
Name = name;
Champ = champion;
Price = price;
Icon = icon;
Description = description;
}
public string Name { get; set; }
public Champion Champ { get; set; }
public float Price { get; }
public string Icon { get; }
public string Description { get; }

@ -4,7 +4,9 @@ namespace apiLOL.DTO
{
public static class SkinMapper
{
public static SkinDTO ToDTO(this Skin skin) => new SkinDTO(skin.Name, skin.Champion, skin.Price, skin.Icon, skin.Description);
public static Skin ToModel(this SkinDTO skinDTO) => new Skin(skinDTO.Name, skinDTO.Champ, skinDTO.Price, skinDTO.Icon, "",skinDTO.Description);
public static SkinDTO ToDTO(this Skin skin)
=> new SkinDTO(skin.Name, skin.Price, skin.Icon, skin.Description);
public static Skin ToModel(this SkinDTO skinDTO)
=> new Skin(skinDTO.Name, null, skinDTO.Price, skinDTO.Icon,"",skinDTO.Description);
}
}

Loading…
Cancel
Save