internal static string GetLineups(TrainerModel trainer, [Optional] bool teamOnly) { try { var query = string.Empty; if (teamOnly) { if (trainer.CurrentTeamId > 0) { query = $"SELECT TOP 1 * FROM Teams WHERE TrainerId = {trainer.Id} AND TeamId = {trainer.CurrentTeamId} AND DeleteDate IS NULL;"; } else { query = $"SELECT TOP 1 * FROM Teams WHERE TrainerId = {trainer.Id} AND DeleteDate IS NULL;"; } } else { query = $"SELECT * FROM Teams WHERE TrainerId = {trainer.Id} AND DeleteDate IS NULL;"; } using (var conn = DBConnect.BuildSqlConnection()) { SqlCommand command = new SqlCommand(query, conn); conn.Open(); var rdr = command.ExecuteReader(); var lineups = new List <LineupModel>(); while (rdr.Read()) { var team = new LineupModel(); team.TeamId = int.Parse(rdr[0].ToString()); team.Name = rdr[1].ToString(); var json = rdr[3].ToString(); if (!string.IsNullOrEmpty(json)) { team.Lineup = DeserializePokemonList(json); } team.Text = ""; // TODO lineups.Add(team); } return(JsonConvert.SerializeObject(lineups)); } } catch (Exception ex) { throw new Exception($"Error executing query: {ex.Message}"); } }
public static string SerializeLineup(LineupModel lineup) { var jsonLineup = JsonConvert.SerializeObject(lineup); return(jsonLineup); }
public ActionResult SubmitLineup(LineupModel model) { SaveLineup(model); return Lineup(model.TeamId, model.IntervalId); }
public void SaveLineup(LineupModel model) { using (var context = new ApplicationDbContext()) { foreach (var player in model.Players) { if (player.LineupPlayerId == null) context.LineupPlayers.Add(new LineupPlayer() { TeamId = model.TeamId, IntervalId = model.IntervalId, PlayerId = player.PlayerId, Active = player.Active, Position = player.Position }); else { var lineupPlayer = context.LineupPlayers.Find(player.LineupPlayerId); lineupPlayer.Active = player.Active; } } context.SaveChanges(); } }