class build

pull/10/head
Clement LESME 2 years ago
parent c139a6d653
commit a963b1ea16

@ -11,7 +11,7 @@ public partial class App : Application
public App()
{
manager.chargeDonne();
manager.Persi = new DataContractPersistance.DataContractPers();
//manager.Persi = new DataContractPersistance.DataContractPers();
manager.sauvegardeDonnee();
Debug.WriteLine(manager.listUtil[0]);
InitializeComponent();

@ -1,6 +1,36 @@
<?xml version="1.0" encoding="utf-8"?>
<DataToPersist xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/CanYouBuildIt.DataContractPersistance">
<lc xmlns:d2p1="http://schemas.datacontract.org/2004/07/CanYouBuildIt.Model">
<d2p1:Composant>
<d2p1:id>Zalman Z10 Plus</d2p1:id>
<d2p1:lien>https://www.ldlc.com/fiche/PB00502897.html</d2p1:lien>
<d2p1:prix>119.95</d2p1:prix>
<d2p1:type>Boitier</d2p1:type>
</d2p1:Composant>
<d2p1:Composant>
<d2p1:id>Ryzen 5 5800X</d2p1:id>
<d2p1:lien>https://www.amazon.fr/AMD-Ryzen-7-5800X-RyzenTM/dp/B0815XFSGK/</d2p1:lien>
<d2p1:prix>218.98</d2p1:prix>
<d2p1:type>Processeur</d2p1:type>
</d2p1:Composant>
<d2p1:Composant>
<d2p1:id>Cooler Master MasterLiquid ML240L V2 ARGB Black Edition </d2p1:id>
<d2p1:lien>https://www.ldlc.com/fiche/PB00454454.html</d2p1:lien>
<d2p1:prix>89.95</d2p1:prix>
<d2p1:type>Ventirad</d2p1:type>
</d2p1:Composant>
<d2p1:Composant>
<d2p1:id>Gigabyte B550M AORUS ELITE </d2p1:id>
<d2p1:lien>https://www.ldlc.com/fiche/PB00357556.html</d2p1:lien>
<d2p1:prix>129.95</d2p1:prix>
<d2p1:type>CarteMere</d2p1:type>
</d2p1:Composant>
<d2p1:Composant>
<d2p1:id>be quiet! Pure Power 11 600W 80PLUS Gold</d2p1:id>
<d2p1:lien>https://www.ldlc.com/fiche/PB00261005.html</d2p1:lien>
<d2p1:prix>93.95</d2p1:prix>
<d2p1:type>Alimentation</d2p1:type>
</d2p1:Composant>
<d2p1:Composant>
<d2p1:id>ASUS RTX 3060</d2p1:id>
<d2p1:lien>https://www.amazon.fr/ASUS-DUAL-NVIDIA-GeForce-GDDR6/dp/B096658ZWP</d2p1:lien>
@ -13,6 +43,18 @@
<d2p1:prix>49.99</d2p1:prix>
<d2p1:type>RAM</d2p1:type>
</d2p1:Composant>
<d2p1:Composant>
<d2p1:id>Crucial BX500 1 To</d2p1:id>
<d2p1:lien>https://www.ldlc.com/fiche/PB00281733.html</d2p1:lien>
<d2p1:prix>74.95</d2p1:prix>
<d2p1:type>SSD</d2p1:type>
</d2p1:Composant>
<d2p1:Composant>
<d2p1:id>Seagate BarraCuda 2 To (ST2000DM005) </d2p1:id>
<d2p1:lien>https://www.ldlc.com/fiche/PB00254339.html</d2p1:lien>
<d2p1:prix>62.95</d2p1:prix>
<d2p1:type>HDD</d2p1:type>
</d2p1:Composant>
</lc>
<lu xmlns:d2p1="http://schemas.datacontract.org/2004/07/CanYouBuildIt.Model">
<d2p1:Utilisateur>

@ -55,6 +55,7 @@ namespace CanYouBuildIt.DataContractPersistance
Directory.CreateDirectory(FilePath);
}
//-- Write fichier --//
var settings = new XmlWriterSettings() { Indent = true };
using (TextWriter tw = File.CreateText(Path.Combine(FilePath, FileName)))

@ -11,5 +11,6 @@ namespace CanYouBuildIt.DataContractPersistance
{
public List<Utilisateur> lu = new List<Utilisateur>();
public List<Composant> lc = new List<Composant>();
public List<Build> lb = new List<Build>();
}
}

@ -11,29 +11,39 @@ namespace CanYouBuildIt.Model
{
public int id { get; private set; }
public float prix { get; private set; }
public List<Composant> listComp { get; private set; }
public Composant boitier { get; private set; }
public Composant processeur { get; private set; }
public Composant ventirad { get; private set; }
public Composant cartemere { get; private set; }
public Composant memoirevive { get; private set; }
public Composant cartegraphique { get; private set; }
public Composant alimentation { get; private set; }
public Composant ventilateur { get; private set; }
public Composant SSD { get; private set; }
public Composant HDD { get; private set; }
//public List<Composant> listComp { get; private set; }
public Build(int idBuild, float prixBuild, Composant boitier, Composant processeur, Composant ventirad, Composant cartemere, Composant memoirevive, Composant cartegraphique, Composant alimentation, Composant ventilateur, Composant ssd = null, Composant hdd = null)
public Build(int idBuild, float prixBuild, Composant boitier, Composant processeur, Composant ventirad, Composant cartemere, Composant memoirevive, Composant cartegraphique, Composant alimentation, Composant ventilateur = null, Composant ssd = null, Composant hdd = null)
{
id = idBuild;
prix = prixBuild;
listComp.Add(boitier);
listComp.Add(processeur);
listComp.Add(ventirad);
listComp.Add(cartemere);
listComp.Add(memoirevive);
listComp.Add(cartegraphique);
listComp.Add(alimentation);
listComp.Add(ventilateur);
if(ssd != null)
{
listComp.Add(ssd);
}
if(hdd != null)
{
listComp.Add(hdd);
}
this.boitier = boitier;
this.processeur = processeur;
this.ventirad = ventirad;
this.cartemere = cartemere;
this.memoirevive = memoirevive;
this.cartegraphique = cartegraphique;
this.alimentation = alimentation;
if (ventilateur != null)
this.ventilateur = ventilateur;
if (ssd != null)
this.SSD = ssd;
if (hdd != null)
this.HDD = hdd;
}

@ -13,17 +13,20 @@ namespace CanYouBuildIt.Model
{
public List<Utilisateur> listUtil { get; private set; }
public List<Composant> listComp { get; private set; }
public List<Build> listBuild { get; private set; }
public IPersistanceManager Persi { get; set; }
public Manager()
{
listUtil = new List<Utilisateur>();
listComp = new List<Composant>();
listBuild = new List<Build>();
}
public Manager(IPersistanceManager pers)
{
listUtil = new List<Utilisateur>();
listComp = new List<Composant>();
listBuild = new List<Build>();
Persi = pers;
}
@ -32,6 +35,7 @@ namespace CanYouBuildIt.Model
DataToPersist donnee = Persi.chargeDonnee();
listUtil.AddRange(donnee.lu);
listComp.AddRange(donnee.lc);
listBuild.AddRange(donnee.lb);
}
public void sauvegardeDonnee()
@ -39,6 +43,7 @@ namespace CanYouBuildIt.Model
DataToPersist data = new DataToPersist();
data.lu.AddRange(listUtil);
data.lc.AddRange(listComp);
data.lb.AddRange(listBuild);
Persi.sauvegardeDonnee(data);
}

@ -16,17 +16,26 @@ namespace CanYouBuildIt.Model
List<Utilisateur> lu = new List<Utilisateur>();
List<Composant> lc = new List<Composant>();
//-- test de chargement de User --//
Utilisateur u1 = new Utilisateur("Clément", "1234");
Utilisateur u2 = new Utilisateur("Vivien", "vivien");
Utilisateur u3 = new Utilisateur("Kevin", "0000");
lu.Add(u1);
lu.Add(u2);
lu.Add(u3);
//-- Test pour 1 build entier --//
lc.Add(new Composant("Zalman Z10 Plus", TypeComposant.Boitier,(float)119.95, "https://www.ldlc.com/fiche/PB00502897.html"));
lc.Add(new Composant("Ryzen 5 5800X",TypeComposant.Processeur,(float)218.98, "https://www.amazon.fr/AMD-Ryzen-7-5800X-RyzenTM/dp/B0815XFSGK/"));
lc.Add(new Composant("Cooler Master MasterLiquid ML240L V2 ARGB Black Edition ",TypeComposant.Ventirad,(float)89.95, "https://www.ldlc.com/fiche/PB00454454.html"));
lc.Add(new Composant("Gigabyte B550M AORUS ELITE ",TypeComposant.CarteMere,(float)129.95, "https://www.ldlc.com/fiche/PB00357556.html"));
lc.Add(new Composant("be quiet! Pure Power 11 600W 80PLUS Gold", TypeComposant.Alimentation,(float)93.95, "https://www.ldlc.com/fiche/PB00261005.html"));
lc.Add(new Composant("ASUS RTX 3060", TypeComposant.CarteGraphique, (float)453.99, "https://www.amazon.fr/ASUS-DUAL-NVIDIA-GeForce-GDDR6/dp/B096658ZWP"));
lc.Add(new Composant("Kingston Kit mémoire FURY Beast 16 Go (2 x 8 Go) 3200 MHz DDR4 CL16", TypeComposant.RAM, (float)49.99, "https://www.amazon.fr/Kingston-3200MHz-M%C3%A9moire-KF432C16BBK2-16/dp/B097K2WBL3/"));
lc.Add(new Composant("Crucial BX500 1 To",TypeComposant.SSD,(float)74.95, "https://www.ldlc.com/fiche/PB00281733.html"));
lc.Add(new Composant("Seagate BarraCuda 2 To (ST2000DM005) ", TypeComposant.HDD,(float)62.95, "https://www.ldlc.com/fiche/PB00254339.html"));
Composant c1 = new Composant("ASUS RTX 3060", TypeComposant.CarteGraphique, (float)453.99, "https://www.amazon.fr/ASUS-DUAL-NVIDIA-GeForce-GDDR6/dp/B096658ZWP");
Composant c2 = new Composant("Kingston Kit mémoire FURY Beast 16 Go (2 x 8 Go) 3200 MHz DDR4 CL16", TypeComposant.RAM, (float)49.99, "https://www.amazon.fr/Kingston-3200MHz-M%C3%A9moire-KF432C16BBK2-16/dp/B097K2WBL3/");
lc.Add(c1);
lc.Add(c2);
DataToPersist data = new DataToPersist();

Loading…
Cancel
Save