Propriétés en private dans le manager

Popup_qui_marche_pas
Anthony RICHARD 2 years ago
parent aa04fb266e
commit 7e24778578

@ -1,24 +1,17 @@
using Microsoft.VisualBasic; using Model;
using Model;
using StimPersistance;
using StimStub; using StimStub;
using System.Diagnostics.CodeAnalysis; using System.Diagnostics.CodeAnalysis;
namespace AppConsole namespace AppConsole
{ {
[ExcludeFromCodeCoverage] [ExcludeFromCodeCoverage]
static class Program public static class Program
{ {
public static Manager Manager { get; set; } = new(new Stub()); private static Manager Manager { get; set; } = new(new Stub());
public static string? choixstr; private static string? choixstr;
public static int choixint; private static int choixint;
static void Main(string[] args) public static void Main(string[] args)
{
Program.Menu();
}
private static void Menu()
{ {
while (choixint != 99) while (choixint != 99)
{ {
@ -72,12 +65,15 @@ namespace AppConsole
case 2: case 2:
Console.WriteLine("Nom du jeu : "); Console.WriteLine("Nom du jeu : ");
string? name2 = Console.ReadLine(); string? name2 = Console.ReadLine();
bool find = false;
foreach (Game g in Manager.GameList) if (g.Name == name2) foreach (Game g in Manager.GameList) if (g.Name == name2)
{ {
Manager.RemoveGameFromGamesList(g); Manager.RemoveGameFromGamesList(g);
Console.WriteLine("Jeu suivant supprimé : " + g.Name); Console.WriteLine("Jeu suivant supprimé : " + g.Name);
find = true;
break; break;
} }
if (!find) Console.WriteLine("Jeu suivant introuvable : " + name2);
break; break;
case 3: case 3:
@ -105,12 +101,50 @@ namespace AppConsole
break; break;
case 6: case 6:
Console.WriteLine("Nom du jeu : ");
string? name3 = Console.ReadLine();
bool find2 = false;
foreach (Game g in Manager.GameList) if (g.Name == name3) foreach (Review rev in g.Reviews)
{
Console.WriteLine(rev);
find2 = true;
break;
}
if (!find2) Console.WriteLine("Jeu suivant introuvable : " + name3);
break; break;
case 7: case 7:
Console.WriteLine("Nom du jeu : ");
string? name4 = Console.ReadLine();
bool find3 = false;
foreach (Game g in Manager.GameList) if (g.Name == name4)
{
Console.WriteLine("Votre nom d'utilisateur : ");
string? username2 = Console.ReadLine();
int rateint;
string? ratestr = "";
while (!int.TryParse(ratestr, out rateint)) ratestr = Console.ReadLine();
Console.WriteLine("Votre commentaire : ");
string? revstr = Console.ReadLine();
Review rev = new(username2, rateint, revstr);
g.AddReview(rev);
Console.WriteLine("Commentaire ajouté !");
find2 = true;
break;
}
if (!find3) Console.WriteLine("Jeu suivant introuvable : " + name4);
break; break;
case 8: case 8:
Console.WriteLine("Nom du jeu : ");
string? name5 = Console.ReadLine();
bool find4 = false;
foreach (Game g in Manager.GameList) if (g.Name == name5)
{
Console.WriteLine("Votre nom d'utilisateur : ");
string? username2 = Console.ReadLine();
//foreach (Review rev in g.Reviews) if (rev.AuthorName)
}
break; break;
case 9: case 9:

@ -5,21 +5,17 @@ namespace Model
{ {
public class Manager public class Manager
{ {
public IPersistance Mgrpersistance private readonly IPersistance mgrpersistance;
{ public IReadOnlyList<Game> GameList => gameList.AsReadOnly();
get { return mgrpersistance; } private List<Game> gameList;
set { mgrpersistance = value; }
}
private IPersistance mgrpersistance;
public List<Game> GameList { get; set; }
public Game? SelectedGame { get; set; } public Game? SelectedGame { get; set; }
public User? CurrentUser { get; set; } public User? CurrentUser { get; set; }
public HashSet<User> Users { get; set; } public HashSet<User> Users { get; private set; }
public Manager(IPersistance persistance) public Manager(IPersistance persistance)
{ {
Mgrpersistance = persistance; mgrpersistance = persistance;
GameList = persistance.LoadGame(); gameList = persistance.LoadGame();
Users = persistance.LoadUser(); Users = persistance.LoadUser();
} }
@ -41,24 +37,24 @@ namespace Model
public void AddGametoGamesList(Game game) public void AddGametoGamesList(Game game)
{ {
GameList.Add(game); gameList.Add(game);
Mgrpersistance.SaveGame(GameList); mgrpersistance.SaveGame(gameList);
} }
public void AddUsertoUserList(User user) public void AddUsertoUserList(User user)
{ {
Users.Add(user); Users.Add(user);
Mgrpersistance.SaveUser(Users); mgrpersistance.SaveUser(Users);
} }
public void RemoveGameFromGamesList(Game game) public void RemoveGameFromGamesList(Game game)
{ {
GameList.Remove(game); gameList.Remove(game);
Mgrpersistance.SaveGame(GameList); mgrpersistance.SaveGame(gameList);
} }
public void SaveGames() public void SaveGames()
{ {
Mgrpersistance.SaveGame(GameList); mgrpersistance.SaveGame(gameList);
} }
public User? SearchUser(string username) public User? SearchUser(string username)
{ {
@ -70,7 +66,7 @@ namespace Model
} }
public void SaveUser() public void SaveUser()
{ {
Mgrpersistance.SaveUser(Users); mgrpersistance.SaveUser(Users);
} }
} }
} }

@ -24,8 +24,8 @@ public partial class App : Application
if (!(File.Exists(Path.Combine(FileSystem.Current.AppDataDirectory, "games.xml")))) if (!(File.Exists(Path.Combine(FileSystem.Current.AppDataDirectory, "games.xml"))))
{ {
Manager Manager2 = new(new Persistance(FileSystem.Current.AppDataDirectory)); Manager Manager2 = new(new Persistance(FileSystem.Current.AppDataDirectory));
Manager2.GameList = Manager.GameList; foreach (var game in Manager.GameList) Manager2.AddGametoGamesList(game);
Manager2.Users = Manager2.Users; foreach (var user in Manager.Users) Manager2.AddUsertoUserList(user);
Manager2.SaveGames(); Manager2.SaveGames();
Manager2.SaveUser(); Manager2.SaveUser();
} }

Loading…
Cancel
Save