diff --git a/mtg-pairings-win/MtgPairings/MtgPairings/Data/DatabaseReader.cs b/mtg-pairings-win/MtgPairings/MtgPairings/Data/DatabaseReader.cs index ce526bf..50d999e 100644 --- a/mtg-pairings-win/MtgPairings/MtgPairings/Data/DatabaseReader.cs +++ b/mtg-pairings-win/MtgPairings/MtgPairings/Data/DatabaseReader.cs @@ -151,8 +151,9 @@ orderby match.table return OleDbFetch( r => new Round(Convert.ToInt32(r["Number"]), + Convert.ToBoolean(r["IsPlayoff"]), pairingsByRound[Convert.ToInt32(r["RoundId"])].ToImmutableList()), - "SELECT Round.RoundId, Round.Number " + + "SELECT Round.RoundId, Round.Number, Round.IsPlayoff " + "FROM Round " + "WHERE (Round.TournamentId = ?)", new object[] {tournamentId}).OrderBy(r => r.Number).ToImmutableList(); diff --git a/mtg-pairings-win/MtgPairings/MtgPairings/Domain/Round.cs b/mtg-pairings-win/MtgPairings/MtgPairings/Domain/Round.cs index ced4ac4..714c47b 100644 --- a/mtg-pairings-win/MtgPairings/MtgPairings/Domain/Round.cs +++ b/mtg-pairings-win/MtgPairings/MtgPairings/Domain/Round.cs @@ -7,10 +7,12 @@ public class Round { public int Number { get; private set; } public ImmutableList Pairings { get; private set; } + public bool Playoff { get; private set; } - public Round(int number, ImmutableList pairings) + public Round(int number, bool playoff, ImmutableList pairings) { Number = number; + Playoff = playoff; Pairings = pairings; } @@ -32,6 +34,7 @@ public bool Equals(Round other) else { return this.Number == other.Number && + this.Playoff == other.Playoff && this.Pairings.SequenceEqual(other.Pairings); } } diff --git a/mtg-pairings-win/MtgPairings/MtgPairings/MainWindow.xaml.cs b/mtg-pairings-win/MtgPairings/MtgPairings/MainWindow.xaml.cs index 24276e2..e02e03c 100644 --- a/mtg-pairings-win/MtgPairings/MtgPairings/MainWindow.xaml.cs +++ b/mtg-pairings-win/MtgPairings/MtgPairings/MainWindow.xaml.cs @@ -167,7 +167,7 @@ public void CheckTournaments() { if (round.OldRound == null || round.NewRound == null || !round.OldRound.Pairings.SequenceEqual(round.NewRound.Pairings, new Pairing.PairingEqualityComparer()) || round.NewRound != null && uploadAll) { - UploadEvent e = new UploadEvent(() => _uploader.UploadPairings(newTournament.SanctionNumber, round.NewRound.Number, round.NewRound.Pairings), + UploadEvent e = new UploadEvent(() => _uploader.UploadPairings(newTournament.SanctionNumber, round.NewRound.Number, round.NewRound.Playoff, round.NewRound.Pairings), t.AutoUpload, newTournament, UploadEvent.Type.Pairings, round.NewRound.Number); UploadQueue.Enqueue(e); uploadAll = true; diff --git a/mtg-pairings-win/MtgPairings/MtgPairings/Properties/AssemblyInfo.cs b/mtg-pairings-win/MtgPairings/MtgPairings/Properties/AssemblyInfo.cs index 281f84b..35b31d2 100644 --- a/mtg-pairings-win/MtgPairings/MtgPairings/Properties/AssemblyInfo.cs +++ b/mtg-pairings-win/MtgPairings/MtgPairings/Properties/AssemblyInfo.cs @@ -51,5 +51,5 @@ // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: // [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.3.0.0")] -[assembly: AssemblyFileVersion("1.3.0.0")] +[assembly: AssemblyVersion("1.4.0.0")] +[assembly: AssemblyFileVersion("1.4.0.0")] diff --git a/mtg-pairings-win/MtgPairings/MtgPairings/Service/Uploader.cs b/mtg-pairings-win/MtgPairings/MtgPairings/Service/Uploader.cs index 2974e98..eab9109 100644 --- a/mtg-pairings-win/MtgPairings/MtgPairings/Service/Uploader.cs +++ b/mtg-pairings-win/MtgPairings/MtgPairings/Service/Uploader.cs @@ -123,7 +123,7 @@ public void DeleteRound(string sanctionid, int round) Execute(request); } - public void UploadPairings(string sanctionid, int round, IEnumerable pairings) + public void UploadPairings(string sanctionid, int round, bool playoff, IEnumerable pairings) { var request = createRequest("api/tournament/{sanctionid}/round-{round}/pairings", Method.PUT, new { @@ -131,7 +131,8 @@ public void UploadPairings(string sanctionid, int round, IEnumerable pa team1 = p.Team1.Players.Select(player => player.DciNumber), team2 = p.Team2.Select(t => t.Players.Select(player => player.DciNumber)).ValueOrElse(Enumerable.Empty()), table_number = p.Table - }) + }), + playoff = playoff }); request.AddParameter("sanctionid", sanctionid, ParameterType.UrlSegment); request.AddParameter("round", round, ParameterType.UrlSegment);