From 89dc4d20478ac46504a4c5be9957dea5d244d2d9 Mon Sep 17 00:00:00 2001 From: Beppe Date: Sun, 14 Jul 2019 13:18:06 +0200 Subject: [PATCH] euh --- Online Gokkantoor/Globals/Classes/Bet.cs | 30 ++++++++++++- Online Gokkantoor/Globals/Classes/Game.cs | 47 +++++++++++--------- Online Gokkantoor/Globals/Classes/Person.cs | 12 +++++ Online Gokkantoor/Globals/Classes/Ploeg.cs | 9 ++++ Online Gokkantoor/Globals/Globals.csproj | 6 +++ Online Gokkantoor/Globals/Interfaces/IBet.cs | 1 - Online Gokkantoor/Globals/packages.config | 4 ++ Online Gokkantoor/Gui/Data/games.json | 2 +- Online Gokkantoor/Logic/LogicLayer.cs | 12 ++++- 9 files changed, 95 insertions(+), 28 deletions(-) create mode 100644 Online Gokkantoor/Globals/packages.config diff --git a/Online Gokkantoor/Globals/Classes/Bet.cs b/Online Gokkantoor/Globals/Classes/Bet.cs index 6c6de00..41f0d35 100644 --- a/Online Gokkantoor/Globals/Classes/Bet.cs +++ b/Online Gokkantoor/Globals/Classes/Bet.cs @@ -1,10 +1,23 @@ using System; using Globals.Interfaces; +using Newtonsoft.Json; +using static Globals.main; namespace Globals.classes { public class Bet : IBet { + [JsonConstructor] + public Bet(int Id, Game g, Person p, double cash, state ploeg, bool finished) + { + this.Id = Id; + this.game = g; + this.person = p; + this.cash = cash; + this.ploeg = ploeg; + this.finished = finished; + + } public Bet(Game game, Person person, double cash, main.state ploeg) { this.game = game; @@ -17,12 +30,25 @@ namespace Globals.classes public Game game { get; set; } public Person person { get; set; } public double cash { get; set; } - public bool succes { get { return (ploeg == game.getWinner());}} public main.state ploeg { get; set; } public bool finished { get; set; } + + public bool succes() + { + return (ploeg == game.getWinner()); + } public override bool Equals(object obj) { + try + { + Bet be = (Bet)obj; + + } catch (Exception e) + { + return false; + } + Bet b = (Bet)obj; return this.Id == b.Id; } @@ -37,7 +63,7 @@ namespace Globals.classes double tmp = 0; if (finished) { - if (succes) + if (succes()) { tmp += cash * 2; } diff --git a/Online Gokkantoor/Globals/Classes/Game.cs b/Online Gokkantoor/Globals/Classes/Game.cs index adbbe7b..421c7c1 100644 --- a/Online Gokkantoor/Globals/Classes/Game.cs +++ b/Online Gokkantoor/Globals/Classes/Game.cs @@ -1,12 +1,21 @@ using System; using Globals.Interfaces; +using Newtonsoft.Json; using static Globals.main; namespace Globals.classes { public class Game : IGame { - public DateTime date { get; set; } //y m d + + [JsonConstructor] + public Game(int Id, Ploeg home, Ploeg away, DateTime date) + { + this.Id = Id; + this.home = home; + this.away = away; + this.date = date; + } public Game(Ploeg home, Ploeg away, DateTime d) { this.home = home; @@ -27,7 +36,6 @@ namespace Globals.classes this.home = home ?? throw new ArgumentNullException(nameof(home)); this.away = away ?? throw new ArgumentNullException(nameof(away)); } - public Game(int id, Ploeg home, Ploeg away, int scoreHome, int scoreAway) { Id = id; @@ -36,17 +44,14 @@ namespace Globals.classes this.home.score = scoreHome; this.away.score = scoreAway; } - + [JsonProperty("id")] public int Id { get; set; } + [JsonProperty("home")] public Ploeg home { get; set; } + [JsonProperty("away")] public Ploeg away { get; set; } - - - - - - - + [JsonProperty("Date")] + public DateTime date { get; set; } //y m d public state getWinner() { @@ -61,27 +66,25 @@ namespace Globals.classes } } - - - - - - - - public override bool Equals(object obj) { - + try + { + Game gam = (Game)obj; + + } + catch (Exception e) + { + return false; + } Game ga = (Game)obj; + return this.Id == ga.Id; } - public override int GetHashCode() { return base.GetHashCode(); } - - public override string ToString() { return this.Id + ": " + this.home.ToString() + " / " + this.away.ToString(); diff --git a/Online Gokkantoor/Globals/Classes/Person.cs b/Online Gokkantoor/Globals/Classes/Person.cs index 254731b..3ac8b68 100644 --- a/Online Gokkantoor/Globals/Classes/Person.cs +++ b/Online Gokkantoor/Globals/Classes/Person.cs @@ -1,10 +1,22 @@ using System; using Globals.Interfaces; +using Newtonsoft.Json; namespace Globals.classes { public class Person : IPerson { + [JsonConstructor] + public Person (int Id, string name, string lastname, string adress, string gsm, double balance) + { + this.Id = Id; + this.name = name; + this.lastname = lastname; + this.adress = adress; + this.gsm = gsm; + this.balance = balance; + } + public Person( string name, string lastname, string adress, string gsm, double balance) { this.name = name; diff --git a/Online Gokkantoor/Globals/Classes/Ploeg.cs b/Online Gokkantoor/Globals/Classes/Ploeg.cs index 93722db..b247d12 100644 --- a/Online Gokkantoor/Globals/Classes/Ploeg.cs +++ b/Online Gokkantoor/Globals/Classes/Ploeg.cs @@ -1,10 +1,19 @@ using System; using Globals.Interfaces; +using Newtonsoft.Json; namespace Globals.classes { public class Ploeg : IPloeg { + [JsonConstructor] + public Ploeg(int Id, string naam, int score) + { + this.Id = Id; + this.naam = naam; + this.score = score; + } + public Ploeg(string naam) { this.naam = naam; diff --git a/Online Gokkantoor/Globals/Globals.csproj b/Online Gokkantoor/Globals/Globals.csproj index fc6b756..8bd72b2 100644 --- a/Online Gokkantoor/Globals/Globals.csproj +++ b/Online Gokkantoor/Globals/Globals.csproj @@ -28,6 +28,9 @@ + + ..\packages\Newtonsoft.Json.12.0.2\lib\net45\Newtonsoft.Json.dll + @@ -48,5 +51,8 @@ + + + \ No newline at end of file diff --git a/Online Gokkantoor/Globals/Interfaces/IBet.cs b/Online Gokkantoor/Globals/Interfaces/IBet.cs index 4f65373..0217218 100644 --- a/Online Gokkantoor/Globals/Interfaces/IBet.cs +++ b/Online Gokkantoor/Globals/Interfaces/IBet.cs @@ -10,7 +10,6 @@ namespace Globals.Interfaces Game game { get; set; } Person person { get; set; } double cash { get; set; } - bool succes { get; } state ploeg { get; set; } bool finished { get; set; } double getProfit(); diff --git a/Online Gokkantoor/Globals/packages.config b/Online Gokkantoor/Globals/packages.config new file mode 100644 index 0000000..39d1cce --- /dev/null +++ b/Online Gokkantoor/Globals/packages.config @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/Online Gokkantoor/Gui/Data/games.json b/Online Gokkantoor/Gui/Data/games.json index 8441c69..07ccf00 100644 --- a/Online Gokkantoor/Gui/Data/games.json +++ b/Online Gokkantoor/Gui/Data/games.json @@ -1 +1 @@ -[{"date":"2015-01-01T00:00:00","Id":0 \ No newline at end of file +[{"id":0,"home":{"Id":0,"naam":"jfkldjslkfj","score":-2147483648,"scoreSet":false},"away":{"Id":1,"naam":"vdvdvd","score":-2147483648,"scoreSet":false},"Date":"2015-01-01T00:00:00"}] \ No newline at end of file diff --git a/Online Gokkantoor/Logic/LogicLayer.cs b/Online Gokkantoor/Logic/LogicLayer.cs index b7cfc8d..f6a586a 100644 --- a/Online Gokkantoor/Logic/LogicLayer.cs +++ b/Online Gokkantoor/Logic/LogicLayer.cs @@ -18,6 +18,10 @@ namespace Logic bets = d.getBets(); ploegen = d.getPloegen(); games = d.getGames(); + if (games == null) games = new List(); + if (ploegen == null) ploegen = new List(); + if (persons == null) persons = new List(); + if (bets == null) bets = new List(); } public LogicLayer(bool testMode) @@ -72,6 +76,10 @@ namespace Logic public void addGame(Game g) { games.Add(g); + if (true) + { + int i = 0; + } fixIds(); } @@ -125,10 +133,10 @@ namespace Logic public void save() { fixIds(); - d.saveBets(bets); - d.saveGames(games); d.savePersons(persons); d.savePloegen(ploegen); + d.saveGames(games); + d.saveBets(bets); } public void updateGame(Game g)