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)