public async Task <IActionResult> PostUserLeagueTeamTournament([FromBody] UserLeagueTeamTournament userLeagueTeamTournament) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } _context.UserLeagueTeamTournaments.Add(userLeagueTeamTournament); await _context.SaveChangesAsync(); return(CreatedAtAction("GetUserLeagueTeamTournament", new { id = userLeagueTeamTournament.UserLeagueTeamTournamentID }, userLeagueTeamTournament)); }
public async Task <IActionResult> PostPlayerTeam([FromBody] PlayerTeamViewModel model) { if (DateTime.Now.DayOfWeek == DayOfWeek.Monday || DateTime.Now.DayOfWeek == DayOfWeek.Tuesday || DateTime.Now.DayOfWeek == DayOfWeek.Wednesday) { //gets the user var userId = _caller.Claims.Single(c => c.Type == "id"); var appuser = await _context.AppUser.Include(c => c.IdentityUser).SingleAsync(c => c.IdentityUser.Id == userId.Value); if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var players = _context.Players.ToList(); var playerteams = _context.PlayerTeam.ToList(); var userLeagues = _context.UserLeagues.ToList(); var tournaments = _context.Tournaments.ToList(); var userltt = _context.UserLeagueTeamTournaments.ToList(); var newultt = new UserLeagueTeamTournament(); foreach (UserLeague UL in userLeagues) { if (UL.TeamForeignKey == model.teamID && UL.AppUserForeignKey == appuser.Id) { newultt.UserLeagueForeignKey = UL.UserLeagueID; newultt.TeamForeignKey = UL.TeamForeignKey; foreach (Tournament TM in tournaments) { if (TM.TournamentName == model.tournamentName) { newultt.TournamentForeignKey = TM.TournamentID; } } bool exists = false; foreach (UserLeagueTeamTournament ULTT in userltt) { if (ULTT.TournamentForeignKey == newultt.TournamentForeignKey && ULTT.TeamForeignKey == newultt.TeamForeignKey && ULTT.UserLeagueForeignKey == newultt.UserLeagueForeignKey) { exists = true; } } if (exists == false) { _context.UserLeagueTeamTournaments.Add(newultt); } foreach (PlayerTeam ptd in playerteams) { if (ptd.TeamForeignKey == model.teamID) { _context.PlayerTeam.Remove(ptd); } } PlayerTeam pt = new PlayerTeam(); foreach (Player p in players) { foreach (string s in model.playerNames) { if (p.PlayerName == s) { pt.PlayerForeignKey = p.PlayerID; pt.TeamForeignKey = model.teamID; _context.PlayerTeam.Add(pt); } pt = new PlayerTeam(); } } } else if (UL.TeamForeignKey == model.teamID && UL.AppUserForeignKey != appuser.Id) { return(BadRequest("Wrong user")); } } await _context.SaveChangesAsync(); return(Ok("Players added to team")); } else { return(BadRequest("Too late in the week to add team")); } }
public async Task <IActionResult> PutUserLeagueTeamTournament([FromRoute] int id, [FromBody] UserLeagueTeamTournament userLeagueTeamTournament) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != userLeagueTeamTournament.UserLeagueTeamTournamentID) { return(BadRequest()); } _context.Entry(userLeagueTeamTournament).State = EntityState.Modified; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!UserLeagueTeamTournamentExists(id)) { return(NotFound()); } else { throw; } } return(NoContent()); }