add get avec selection du nom
continuous-integration/drone/push Build is failing Details

API2
bastien.ollier 2 years ago
parent e9bde48eae
commit 20717978fc

@ -26,7 +26,7 @@ namespace apiLOL.Controllers
// GET: api/<ControllerLol>
[HttpGet]
public async Task<IActionResult> Get([FromQuery]int index = 0, int count = 10, [FromQuery]string name = "")
public async Task<IActionResult> Get([FromQuery]int index = 0, int count = 10, [FromQuery]string? name = "")
{
//FromQuery permet de filtrer dans la collection de champions en fonction du nom
@ -34,11 +34,8 @@ namespace apiLOL.Controllers
int nbChampions = await data.ChampionsMgr.GetNbItems();
_logger.LogInformation($"Nombre de champions : {nbChampions}");
Task<IEnumerable<Champion?>> champs;
if(name.Equals(name))
champs = (Task<IEnumerable<Champion?>>)(await data.ChampionsMgr.GetItems(index, count)).Select(Model => Model.ToDTO());
else
champs = (Task<IEnumerable<Champion?>>)(await data.ChampionsMgr.GetItemsByName(name, index, count)).Select(Model => Model.ToDTO());
//var champs = (await data.ChampionsMgr.GetItems(index, count)).Where(Model => Model.Name.Contains(name)).Select(Model => Model.ToDTO());
var champs = (await data.ChampionsMgr.GetItems(index, await data.ChampionsMgr.GetNbItems())).Where(Model => Model.Name.Contains(name)).Skip(index * count).Take(count).Select(Model => Model.ToDTO());
var page = new ChampionPageDTO
{
@ -64,7 +61,7 @@ namespace apiLOL.Controllers
}
catch(Exception ex)
{
_logger.LogInformation($"erreur methode Get de ControllerChampions: {ex}");
_logger.LogError($"erreur methode Get de ControllerChampions: {ex}");
return BadRequest("erreur de nom de champion");
}
}
@ -86,7 +83,7 @@ namespace apiLOL.Controllers
}
catch (Exception ex)
{
_logger.LogInformation($"erreur methode Post de ControllerChampions: {ex}");
_logger.LogError($"erreur methode Post de ControllerChampions: {ex}");
return BadRequest("le champion existe deja");
}
}
@ -105,7 +102,7 @@ namespace apiLOL.Controllers
}
catch (Exception ex)
{
_logger.LogInformation($"erreur methode Put de ControllerChampions: {ex}");
_logger.LogError($"erreur methode Put de ControllerChampions: {ex}");
return BadRequest("erreur de nom de champion");
}
}
@ -124,7 +121,7 @@ namespace apiLOL.Controllers
}
catch (Exception ex)
{
_logger.LogInformation($"erreur methode Delete de ControllerChampions: {ex}");
_logger.LogError($"erreur methode Delete de ControllerChampions: {ex}");
return BadRequest("erreur de nom de champion");
}
}

Loading…
Cancel
Save