Example #1
0
        public async Task <ActionResult <Pokemon> > AddPokemon(PokemonDTO pokemonDTO)
        {
            try{
                // Clean + verify
                pokemonDTO = PokemonHelper.CleanupPokemonDTO(pokemonDTO);
                var verify = await _pokemonService.VerifyPokemonDTO(pokemonDTO);

                if (verify.Item1 == false)
                {
                    return(new BadRequestObjectResult($"The provided values cannot be used to create a Pokemon - {verify.Item2}"));
                }

                // Add pokemon
                var result = await _pokemonService.AddPokemon(pokemonDTO);

                if (result == null)
                {
                    return(new BadRequestObjectResult("Pokemon with given entry and generation already exists in database"));
                }

                _logger.LogInformation($"Pokemon was added - {result}");
                return(new OkObjectResult(result));
            }
            catch (Exception ex) {
                _logger.LogWarning($"Warning {ex.Message}");
                return(new StatusCodeResult(500));
            }
        }
Example #2
0
 public async Task <IActionResult> AddPokemon(AddPokemonDto newPokemon)
 {
     return(Ok(await _service.AddPokemon(newPokemon)));
 }
 public IActionResult AddPokemon([FromBody] Pokemon pokemon)
 {
     return(Ok(_pokemon.AddPokemon(pokemon)));
 }