public async Task <ActionResult> InsertTournament(BilliardsTournamentDto dto)
        {
            // check if tournament name exists
            var exist = await unitOfWork.BilliardsTournamentRepository.GetTournamentDto(dto.TournamentName);

            if (exist != null)
            {
                return(BadRequest("Name already exists!"));
            }

            unitOfWork.BilliardsTournamentRepository.InsertTournament(dto);
            if (!await unitOfWork.Complete())
            {
                return(BadRequest("Insert failed!"));
            }

            return(Ok());
        }
        public async Task <ActionResult> UpdateTournament(BilliardsTournamentDto dto)
        {
            var id = await unitOfWork.BilliardsTournamentRepository.GetTournamentById(dto.Id);

            if (id == null)
            {
                return(BadRequest("Tournament name can't be found!"));
            }
            var tournament = await unitOfWork.BilliardsTournamentRepository.GetTournamentDto(id.TournamentName);

            mapper.Map(dto, tournament);
            unitOfWork.BilliardsTournamentRepository.UpdateTournament(tournament);
            if (await unitOfWork.Complete())
            {
                return(NoContent());
            }

            return(BadRequest("Cannot update tournament name!"));
        }
 public void InsertTournament(BilliardsTournamentDto dto)
 {
     context.Tournament.AddAsync(mapper.Map <Tournament>(dto));
 }