コード例 #1
0
        public async Task <IActionResult> FinalizeTournament([FromBody] FinalizeTournamentVM finalizetournament)
        {
            //Get user(company)id
            var userId = accountService.GetUserId();

            await service.FinalizeTournamentAsync(finalizetournament, userId);

            return(Ok());
        }
コード例 #2
0
        internal async Task FinalizeTournamentAsync(FinalizeTournamentVM vm, string userId)
        {
            var tournament = await context.Tournaments.Where(t => t.CompanyId == userId).SingleOrDefaultAsync(t => t.Id == vm.TournamentId);

            tournament.IsCompleted = true;
            var winner = await context.Players.Where(p => p.CompanyId == userId).SingleOrDefaultAsync(p => p.Id == vm.WinnerPlayerId);

            if (winner != null)
            {
                winner.Score += vm.WinnerScore;
            }

            var second = await context.Players.Where(p => p.CompanyId == userId).SingleOrDefaultAsync(p => p.Id == vm.SecondPlayerId);

            if (second != null)
            {
                second.Score += vm.SecondScore;
            }


            await context.SaveChangesAsync();
        }