fix new model

ApiManager
Lucas Delanier 2 years ago
parent f420a4fd5e
commit 6953ae96e2

@ -5,10 +5,11 @@ class Game {
DateTime _time; DateTime _time;
int _pointsCurrentUser; int _pointsCurrentUser;
bool _isFinished; bool _isFinished;
List<String> _playerImages = []; List<Uuid> _playerIds = [];
// Constructor // Constructor
Game(this._id, this._time, this._pointsCurrentUser, this._isFinished, this._playerImages); Game(this._id, this._time, this._pointsCurrentUser, this._isFinished,
this._playerIds);
// Getters and setters // Getters and setters
Uuid get id => _id; Uuid get id => _id;
@ -35,9 +36,9 @@ class Game {
_isFinished = value; _isFinished = value;
} }
List<String> get playerImages => _playerImages; List<Uuid> get playerIds => _playerIds;
set playerImages(List<String> value) { set playerIds(List<Uuid> value) {
_playerImages = value; _playerIds = value;
} }
} }

@ -9,7 +9,7 @@ class GameDetail {
int _nbPoints; int _nbPoints;
bool _isFinished; bool _isFinished;
Round? _currentRound; Round? _currentRound;
Player _host; Uuid _host;
List<Round> _rounds = []; List<Round> _rounds = [];
List<Player> _players = []; List<Player> _players = [];
@ -62,9 +62,9 @@ class GameDetail {
_currentRound = value; _currentRound = value;
} }
Player get host => _host; Uuid get host => _host;
set host(Player value) { set host(Uuid value) {
_host = value; _host = value;
} }

@ -1,4 +1,5 @@
library StubLib; library StubLib;
import '../IGameManager.dart'; import '../IGameManager.dart';
import '../GameDetail.dart'; import '../GameDetail.dart';
import '../Player.dart'; import '../Player.dart';
@ -7,7 +8,6 @@ import '../Guest.dart';
import 'StubData.dart'; import 'StubData.dart';
import 'package:uuid/uuid.dart'; import 'package:uuid/uuid.dart';
class GameManager extends IGameManager { class GameManager extends IGameManager {
List<GameDetail> games = []; List<GameDetail> games = [];
final StubData parent; final StubData parent;
@ -17,20 +17,26 @@ class GameManager extends IGameManager {
// Methods // Methods
GameDetail getGameById(Uuid id) { GameDetail getGameById(Uuid id) {
return new GameDetail(Uuid(), DateTime.now(), Uuid(), 290, true, null, Guest(Uuid(),"",""), [ ], [] ); return new GameDetail(
Uuid(), DateTime.now(), Uuid(), 290, true, null, Uuid(), [], []);
} }
List<GameDetail> getGamesByPlayerId(Uuid id) { List<GameDetail> getGamesByPlayerId(Uuid id) {
return []; return [];
} }
List<GameDetail> getGamesByPlayer(Player user) { List<GameDetail> getGamesByPlayer(Player user) {
return []; return [];
} }
List<GameDetail> getGamesByPlayers(List<Player> users) { List<GameDetail> getGamesByPlayers(List<Player> users) {
return []; return [];
} }
List<User> getPlayersByIdGame(Uuid id) { List<User> getPlayersByIdGame(Uuid id) {
return []; return [];
} }
Map<int, Uuid> getRankByIdGame(Uuid id) { Map<int, Uuid> getRankByIdGame(Uuid id) {
return {}; return {};
} }

@ -1,5 +1,6 @@
import 'package:uuid/uuid.dart'; import 'package:uuid/uuid.dart';
import 'Achievement.dart'; import 'Achievement.dart';
import 'Game.dart';
import 'Player.dart'; import 'Player.dart';
import 'Stat.dart'; import 'Stat.dart';
@ -8,9 +9,11 @@ class User extends Player {
List<Achievement> _achievements = <Achievement>[]; List<Achievement> _achievements = <Achievement>[];
List<User> _friends = <User>[]; List<User> _friends = <User>[];
Stat _stat; Stat _stat;
List<Game> games = [];
// Constructor // Constructor
User(Uuid id, String name, String image, this._mail, this._achievements, this._friends, this._stat) User(Uuid id, String name, String image, this._mail, this._achievements,
this._friends, this._stat)
: super(id, name, image); : super(id, name, image);
// Getters and setters // Getters and setters

@ -30,16 +30,28 @@ void main() {
print("Stats:"); print("Stats:");
for (var stat in stats) { for (var stat in stats) {
print("\tVictoires: ${stat.nbVictory}, Défaites: ${stat.nbDefeat}, Parties jouées: ${stat.nbGames}, Meilleur score: ${stat.highscore}, Nombre de strikes: ${stat.nbStrikes}, Nom de spares: ${stat.nbStrikes}, Moyenne score: ${stat.avgScore}, Moyenne score par round: ${stat.avgPinsPerRound}"); print(
"\tVictoires: ${stat.nbVictory}, Défaites: ${stat.nbDefeat}, Parties jouées: ${stat.nbGames}, Meilleur score: ${stat.highscore}, Nombre de strikes: ${stat.nbStrikes}, Nom de spares: ${stat.nbStrikes}, Moyenne score: ${stat.avgScore}, Moyenne score par round: ${stat.avgPinsPerRound}");
} }
User ami = User(Uuid(), "Lucas","https://fastly.picsum.photos/id/288/2000/2000.jpg?hmac=AUboE-jzAzofYj_O3w_EqtZU3JHzcg7HR1IQd1Ce7lY","Lucas.delanier@etu.uca.fr",[],[], stats[1]); User ami = User(
Uuid(),
"Lucas",
"https://fastly.picsum.photos/id/288/2000/2000.jpg?hmac=AUboE-jzAzofYj_O3w_EqtZU3JHzcg7HR1IQd1Ce7lY",
"Lucas.delanier@etu.uca.fr",
[],
[],
stats[1]);
List<Player> players = [ List<Player> players = [
Player(Uuid(), "Rami", "https://fastly.picsum.photos/id/1060/2000/2000.jpg?hmac=_RrU8GpkCDUlVKfgyWE-GcX-GS5TKNyUzdFbJAGXHV4"), Player(Uuid(), "Rami",
Player(Uuid(), "Emre", "https://fastly.picsum.photos/id/670/2000/2000.jpg?hmac=zWqTr_vDEab3dBtp7JZgJP8TRCPNanJ4tYwDDd-jGYA"), "https://fastly.picsum.photos/id/1060/2000/2000.jpg?hmac=_RrU8GpkCDUlVKfgyWE-GcX-GS5TKNyUzdFbJAGXHV4"),
Guest(Uuid(), "Bot1","https://fastly.picsum.photos/id/820/2000/2000.jpg?hmac=Ctxx2feJNZnG1S7UPx_YrWcEw89tKb7fR8i1W-VTOz4"), Player(Uuid(), "Emre",
Guest(Uuid(), "Bot2","https://fastly.picsum.photos/id/288/2000/2000.jpg?hmac=AUboE-jzAzofYj_O3w_EqtZU3JHzcg7HR1IQd1Ce7lY"), "https://fastly.picsum.photos/id/670/2000/2000.jpg?hmac=zWqTr_vDEab3dBtp7JZgJP8TRCPNanJ4tYwDDd-jGYA"),
Guest(Uuid(), "Bot1",
"https://fastly.picsum.photos/id/820/2000/2000.jpg?hmac=Ctxx2feJNZnG1S7UPx_YrWcEw89tKb7fR8i1W-VTOz4"),
Guest(Uuid(), "Bot2",
"https://fastly.picsum.photos/id/288/2000/2000.jpg?hmac=AUboE-jzAzofYj_O3w_EqtZU3JHzcg7HR1IQd1Ce7lY"),
ami, ami,
User( User(
Uuid(), Uuid(),
@ -51,21 +63,19 @@ void main() {
Achievement("2 strikes in a row"), Achievement("2 strikes in a row"),
Achievement("Win a game") Achievement("Win a game")
], ],
[ [ami],
ami stats[0])
],
stats[0]
)
]; ];
print("Players :"); print("Players :");
// afficahge de toutes les informations de tous les joueurs // afficahge de toutes les informations de tous les joueurs
for (var player in players) { for (var player in players) {
if (player is Guest) { if (player is Guest) {
print("\tID: ${player.id}, Nom: ${player.name}, Image: ${player.image}, Type: Guest"); print(
"\tID: ${player.id}, Nom: ${player.name}, Image: ${player.image}, Type: Guest");
} else if (player is User) { } else if (player is User) {
print("\tID: ${player.id}, Nom: ${player.name}, Image: ${player.image}, Type: User"); print(
"\tID: ${player.id}, Nom: ${player.name}, Image: ${player.image}, Type: User");
print("\tAchievements:"); print("\tAchievements:");
for (var achievement in player.achievements) { for (var achievement in player.achievements) {
print("\t\tNom: ${achievement.name}"); print("\t\tNom: ${achievement.name}");
@ -74,22 +84,101 @@ void main() {
for (var amis in player.friends) { for (var amis in player.friends) {
print("\t\tNom: ${amis.name}, Mail: ${amis.mail}"); print("\t\tNom: ${amis.name}, Mail: ${amis.mail}");
} }
print("\tVictoires: ${player.stat.nbVictory}, Défaites: ${player.stat.nbDefeat}, Parties jouées: ${player.stat.nbGames}, Meilleur score: ${player.stat.highscore}, Nombre de strikes: ${player.stat.nbStrikes}, Nom de spares: ${player.stat.nbStrikes}, Moyenne score: ${player.stat.avgScore}, Moyenne score par round: ${player.stat.avgPinsPerRound}"); print(
"\tVictoires: ${player.stat.nbVictory}, Défaites: ${player.stat.nbDefeat}, Parties jouées: ${player.stat.nbGames}, Meilleur score: ${player.stat.highscore}, Nombre de strikes: ${player.stat.nbStrikes}, Nom de spares: ${player.stat.nbStrikes}, Moyenne score: ${player.stat.avgScore}, Moyenne score par round: ${player.stat.avgPinsPerRound}");
} else { } else {
print("\tID: ${player.id}, Nom: ${player.name}, Image: ${player.image}, Type: Player"); print(
"\tID: ${player.id}, Nom: ${player.name}, Image: ${player.image}, Type: Player");
} }
} }
//GameDetail //GameDetail
List<GameDetail> games = [ List<GameDetail> games = [
GameDetail(Uuid(), DateTime.now(), players[0].id, 290, true, null, players[0], [ Round(10,null,10, players[0]), Round(5,2,7, players[1]), Round(5,2,7, players[1]), Round(5,1,12,players[0])], [players[0],players[1]] ), GameDetail(
GameDetail(Uuid(), DateTime.now().subtract(Duration(days: 2)), players[1].id, 250, true, null, players[1], [ Round(7,null,7, players[1]), Round(3,3,9, players[0]), Round(5,2,7, players[1]), Round(5,1,12,players[0])], [players[0],players[1]] ), Uuid(), DateTime.now(), players[0].id, 290, true, null, players[0].id, [
GameDetail(Uuid(), DateTime.now().subtract(Duration(days: 4)), players[2].id, 210, false, null, players[2], [ Round(8,2,10, players[2]), Round(6,2,8, players[1]), Round(4,2,6, players[2]), Round(2,2,4,players[1])], [players[1],players[2]] ), Round(10, null, 10, players[0]),
GameDetail(Uuid(), DateTime.now().subtract(Duration(days: 7)), players[3].id, 120, true, Round(12,null,12, players[3]), players[3], [ Round(12,null,12, players[3]), Round(7,3,10, players[2]), Round(6,2,8, players[1]), Round(5,1,12,players[0])], [players[0],players[1],players[2],players[3]] ), Round(5, 2, 7, players[1]),
GameDetail(Uuid(), DateTime.now().subtract(Duration(days: 10)), players[4].id, 280, true, null, players[4], [ Round(9,1,10, players[4]), Round(7,3,10, players[2]), Round(8,2,10, players[3]), Round(5,2,7,players[1])], [players[1],players[2],players[3],players[4]] ), Round(5, 2, 7, players[1]),
GameDetail(Uuid(), DateTime.now().subtract(Duration(days: 12)), players[1].id, 240, true, null, players[1], [ Round(7,null,7, players[1]), Round(5,2,7, players[2]), Round(6,2,8, players[1]), Round(5,1,12,players[0])], [players[0],players[1],players[2],players[4]] ), Round(5, 1, 12, players[0])
GameDetail(Uuid(), DateTime.now().subtract(Duration(days: 15)), players[2].id, 200, true, null, players[2], [ Round(8,2,10, players[2]), Round(4,2,6, players[1]), Round(7,3,10, players[3]), Round(5,2,7,players[0])], [players[0],players[1],players[2],players[3]] ) ], [
players[0],
players[1]
]),
GameDetail(Uuid(), DateTime.now().subtract(Duration(days: 2)),
players[1].id, 250, true, null, players[1].id, [
Round(7, null, 7, players[1]),
Round(3, 3, 9, players[0]),
Round(5, 2, 7, players[1]),
Round(5, 1, 12, players[0])
], [
players[0],
players[1]
]),
GameDetail(Uuid(), DateTime.now().subtract(Duration(days: 4)),
players[2].id, 210, false, null, players[2].id, [
Round(8, 2, 10, players[2]),
Round(6, 2, 8, players[1]),
Round(4, 2, 6, players[2]),
Round(2, 2, 4, players[1])
], [
players[1],
players[2]
]),
GameDetail(
Uuid(),
DateTime.now().subtract(Duration(days: 7)),
players[3].id,
120,
true,
Round(12, null, 12, players[3]),
players[3].id, [
Round(12, null, 12, players[3]),
Round(7, 3, 10, players[2]),
Round(6, 2, 8, players[1]),
Round(5, 1, 12, players[0])
], [
players[0],
players[1],
players[2],
players[3]
]),
GameDetail(Uuid(), DateTime.now().subtract(Duration(days: 10)),
players[4].id, 280, true, null, players[4].id, [
Round(9, 1, 10, players[4]),
Round(7, 3, 10, players[2]),
Round(8, 2, 10, players[3]),
Round(5, 2, 7, players[1])
], [
players[1],
players[2],
players[3],
players[4]
]),
GameDetail(Uuid(), DateTime.now().subtract(Duration(days: 12)),
players[1].id, 240, true, null, players[1].id, [
Round(7, null, 7, players[1]),
Round(5, 2, 7, players[2]),
Round(6, 2, 8, players[1]),
Round(5, 1, 12, players[0])
], [
players[0],
players[1],
players[2],
players[4]
]),
GameDetail(Uuid(), DateTime.now().subtract(Duration(days: 15)),
players[2].id, 200, true, null, players[2].id, [
Round(8, 2, 10, players[2]),
Round(4, 2, 6, players[1]),
Round(7, 3, 10, players[3]),
Round(5, 2, 7, players[0])
], [
players[0],
players[1],
players[2],
players[3]
])
]; ];
print("GameDetail :"); print("GameDetail :");
@ -119,8 +208,5 @@ void main() {
print("\t-----------------------------------------"); print("\t-----------------------------------------");
print("StubManager:"); print("StubManager:");
}
}
} }

Loading…
Cancel
Save