public async Task AddPlayerInGuild(GuildAddPlayer guildAddPlayer) { if (string.IsNullOrEmpty(guildAddPlayer.Id)) { throw new ParameterException("Id is null"); } if (string.IsNullOrEmpty(guildAddPlayer.PlayerId)) { throw new ParameterException("Player Id is null"); } try { var filter = new FilterDefinitionBuilder <Guild>().Eq(g => g.Id, guildAddPlayer.Id); var guild = await GetById(guildAddPlayer.Id); if (guild.Players.Contains(guildAddPlayer.PlayerId)) { throw new Exception("Player was added on guild!"); } guild.Players.Add(guildAddPlayer.PlayerId); var guildPlayerAdded = await _mongoDB.Update(filter, guild); if (guildPlayerAdded == null) { throw new NotFoundException("Guild not found"); } } catch (Exception e) { throw e; } }
public async Task <IActionResult> AddPlayer( [FromBody] GuildAddPlayer guildAddPlayer, [FromServices] IGuildBusiness guildBusiness ) { try { await guildBusiness.AddPlayerInGuild(guildAddPlayer); return(NoContent()); } catch (ParameterException pe) { return(BadRequest(pe.Message)); } catch (NotFoundException ne) { return(NotFound(ne.Message)); } catch (Exception e) { return(BadRequest(e.Message)); } }