public IEnumerable <FIFATeamDTO> Add(CreateTeamsCommand request) { if (request?.Commands == null) { return(null); } var added = new List <FIFATeam>(); bool interrupted = true; foreach (var item in request.Commands) { var res = Add(item); if (res == null) { interrupted = true; break; } else { var team = new FIFATeam { Name = item.Name, PlayerId = item.PlayerId, TournamentId = item.TournamentId }; added.Add(team); } } if (interrupted) { foreach (var item in added) { this.Delete(new DeleteTeamCommand { TournamentId = item.TournamentId, PlayerId = item.PlayerId }); } return(null); } else { return(added.Select(t => new FIFATeamDTO { Name = t.Name, OwnerId = t.PlayerId, TournamentId = t.TournamentId }).ToList()); } }
public Task <Response <IEnumerable <FIFATeamDTO> > > CreateTeams([FromBody] CreateTeamsCommand request) { return(_mediator.Send(request)); }