예제 #1
0
        public async Task <ActionResult <CartItem> > Post(Guid cartId,
                                                          [FromBody] CartItemForCreation cartItemForCreation)
        {
            if (!await _cartRepository.CartExists(cartId))
            {
                return(NotFound());
            }

            if (!await _tournamentRepository.TournamentExists(cartItemForCreation.TournamentId))
            {
                var tournament = await _tournamentService.GetTournament(cartItemForCreation.TournamentId);

                _tournamentRepository.AddTournament(tournament);
                await _tournamentRepository.SaveChanges();
            }

            var cartItem = _mapper.Map <Entities.CartItem>(cartItemForCreation);

            var processedCartItem = await _cartItemsRepository.AddOrUpdateCartItem(cartId, cartItem);

            await _cartItemsRepository.SaveChanges();

            var cartItemToReturn = _mapper.Map <CartItem>(processedCartItem);

            return(CreatedAtRoute(
                       "GetCartItem",
                       new { cartId = cartItem.CartId, cartItemId = cartItem.CartItemId },
                       cartItemToReturn));
        }
 public IActionResult Create(Tournament tournament)
 {
     if (ModelState.IsValid)
     {
         _context.AddTournament(tournament);
         return(RedirectToAction("Details", tournament.TournamentID));
     }
     return(View(tournament));
 }
        public async Task <CreateTournamentResult> Handle(CreateTournamentCommand request, CancellationToken cancellationToken)
        {
            Entity.Tournament tournament = new Entity.Tournament(request.Name, request.Date, request.EntryPrice, request.Address);

            var tournamentEntity = await _tournamentRepository.AddTournament(tournament);

            await _tournamentRepository.UnitOfWork.SaveEntitiesAsync();

            return(new CreateTournamentResult
            {
                TournamentId = tournament.Id,
                ResponseCode = Constant.ResultCode_Success,
                ResponseMessage = "Success"
            });
        }
예제 #4
0
 public TournamentLight AddTournament(TournamentInformation tournamentAddData)
 {
     Logger.Trace("Add new tournament");
     return(InvokeOperations.InvokeOperation(() =>
     {
         tournamentRepository.AddTournament(tournamentAddData);
         var tournament = tournamentRepository.GetTournamentCommonInformation(tournamentAddData.IdName);
         Task.Factory.StartNew(() => tournamentProcessor.GenerateRounds(tournamentAddData.IdName));
         return new TournamentLight
         {
             Id = tournament.Tournament.id_name,
             IsStarted = tournament.Tournament.date_start >= DateTime.Now,
             Name = tournament.Tournament.name,
             SmallLogo = tournament.Tournament.small_logo,
             TypeId = tournament.Type.id,
             TypeName = tournament.Type.name
         };
     }));
 }
        public async Task<IActionResult> PostTournament([FromBody] List<Team> value)
        {
            if (!ModelState.IsValid)
            {
                return BadRequest(ModelState);
            }

            Tournament tournament = new Tournament();
            var temp = value[value.Count - 1];
            tournament.TournamentName = temp.TeamName;

            await _TournamentRepo.AddTournament(tournament);
            _TournamentRepo.Save();

            value.RemoveAt(value.Count - 1);
            _tournamentAlgorithm.ListMatches(value, tournament.TournamentID);
           

            return Ok(tournament);
        }