diff --git a/CanYouBuildIt/Data/UserData.xml b/CanYouBuildIt/Data/UserData.xml index 2d07a65..4444739 100644 --- a/CanYouBuildIt/Data/UserData.xml +++ b/CanYouBuildIt/Data/UserData.xml @@ -2,13 +2,186 @@ - + + + Boitier + + Zalman Z10 Plus + https://www.ldlc.com/fiche/PB00502897.html + 119.95 + Boitier + + + + Processeur + + Ryzen 5 5800X + https://www.amazon.fr/AMD-Ryzen-7-5800X-RyzenTM/dp/B0815XFSGK/ + 218.98 + Processeur + + + + Ventirad + + Cooler Master MasterLiquid ML240L V2 ARGB Black Edition + https://www.ldlc.com/fiche/PB00454454.html + 89.95 + Ventirad + + + + CarteMere + + Gigabyte B550M AORUS ELITE + https://www.ldlc.com/fiche/PB00357556.html + 129.95 + CarteMere + + + + Alimentation + + be quiet! Pure Power 11 600W 80PLUS Gold + https://www.ldlc.com/fiche/PB00261005.html + 93.95 + Alimentation + + + + CarteGraphique + + ASUS RTX 3060 + https://www.amazon.fr/ASUS-DUAL-NVIDIA-GeForce-GDDR6/dp/B096658ZWP + 453.99 + CarteGraphique + + + + RAM + + Kingston Kit mémoire FURY Beast 16 Go (2 x 8 Go) 3200 MHz DDR4 CL16 + https://www.amazon.fr/Kingston-3200MHz-M%C3%A9moire-KF432C16BBK2-16/dp/B097K2WBL3/ + 49.99 + RAM + + + + SSD + + Crucial BX500 1 To + https://www.ldlc.com/fiche/PB00281733.html + 74.95 + SSD + + + + HDD + + Seagate BarraCuda 2 To (ST2000DM005) + https://www.ldlc.com/fiche/PB00254339.html + 62.95 + HDD + + + 0 pc1.png 1294.6599 - + + + Boitier + + NZXT H5 Flow Noir + https://www.ldlc.com/fiche/PB00532181.html + 109.36 + Boitier + + + + Processeur + + Ryzen 5 5800X + https://www.amazon.fr/AMD-Ryzen-7-5800X-RyzenTM/dp/B0815XFSGK/ + 218.98 + Processeur + + + + Ventirad + + Cooler Master MasterLiquid ML240L V2 ARGB Black Edition + https://www.ldlc.com/fiche/PB00454454.html + 89.95 + Ventirad + + + + CarteMere + + Gigabyte B550M AORUS ELITE + https://www.ldlc.com/fiche/PB00357556.html + 129.95 + CarteMere + + + + Alimentation + + be quiet! Pure Power 11 600W 80PLUS Gold + https://www.ldlc.com/fiche/PB00261005.html + 93.95 + Alimentation + + + + CarteGraphique + + ASUS RTX 3060 + https://www.amazon.fr/ASUS-DUAL-NVIDIA-GeForce-GDDR6/dp/B096658ZWP + 453.99 + CarteGraphique + + + + RAM + + Corsair Vengeance RGB RS 16 Go (2 x 8 Go) DDR4 3200 MHz CL16 + https://www.cdiscount.com/informatique/memoire-ram/memoire-ram-corsair-vengeance-rgb-rs-ddr4/f-10716-cor0840006649007.html?idOffre + 60.7 + RAM + + + + HDD + + Seagate BarraCuda 2 To (ST2000DM005) + https://www.ldlc.com/fiche/PB00254339.html + 62.95 + HDD + + + + SSD + + Samsung SSD 980 M.2 PCIe NVMe 1 To + https://www.amazon.fr/s?k=samsung+ssd+980+m.2+pcie+nvme+1to&ref=nb_sb_noss + 57.37 + SSD + + + + Ventilateur + + MARSGAMING MF-Duo + https://www.amazon.fr/MARSGAMING-Ventilateurs-Rainbow-Ultra-Silencieux-Connexion/dp/B0BGY9M3ZG/ + 10.9 + Ventilateur + + + 1 pc2.png 1288.0999 @@ -94,25 +267,26 @@ Ventilateur + - - - + + + 1234 Clément - - - + + + vivien Vivien - - - + + + 0000 Kevin diff --git a/CanYouBuildIt/DataContractPersistance/DataContractPers.cs b/CanYouBuildIt/DataContractPersistance/DataContractPers.cs index 4441928..e26930c 100644 --- a/CanYouBuildIt/DataContractPersistance/DataContractPers.cs +++ b/CanYouBuildIt/DataContractPersistance/DataContractPers.cs @@ -4,6 +4,7 @@ using System.Collections.Generic; using System.Diagnostics; using System.Linq; using System.Runtime.Serialization; +using System.Security.Cryptography.X509Certificates; using System.Text; using System.Threading.Tasks; using System.Xml; @@ -14,6 +15,7 @@ namespace CanYouBuildIt.DataContractPersistance { public string FilePath { get; set; } public string FileName { get; set; } = "UserData.xml"; + public string FileDico { get; set; } = "DicoData.xml"; //Charge les données sauvegardées dans un fichier de format xml public DataToPersist chargeDonnee() @@ -33,9 +35,22 @@ namespace CanYouBuildIt.DataContractPersistance { data = serializer.ReadObject(stream) as DataToPersist; } + //data = chargeDico(data); return data; } + /*public DataToPersist chargeDico(DataToPersist data) + { + var serializer = new DataContractSerializer(typeof(Dictionary)); + //-- Read fichier--// + using (Stream stream = File.OpenRead(Path.Combine(FilePath, FileName))) + { + data.ld = serializer.ReadObject(stream) as Dictionary; + } + + return data; + }*/ + //Sauvegarde les données dans un fichier de format xml public void sauvegardeDonnee(DataToPersist data) { @@ -47,13 +62,13 @@ namespace CanYouBuildIt.DataContractPersistance FilePath = Path.Combine(FilePath, "Data"); //-- Vérifie si le fichier et dossier existe déjà --// - var serializer = new DataContractSerializer (typeof(DataToPersist)); + if (!Directory.Exists(FilePath)) { - Directory.CreateDirectory(FilePath); } + var serializer = new DataContractSerializer (typeof(DataToPersist)); //-- Write fichier --// var settings = new XmlWriterSettings() { Indent = true }; using (TextWriter tw = File.CreateText(Path.Combine(FilePath, FileName))) @@ -63,6 +78,24 @@ namespace CanYouBuildIt.DataContractPersistance serializer.WriteObject(writer, data); } } + //sauvegardeDico(data.ld); } + + /* + //Sauvegarde les données des dictionaires de composants dans un fichier de format xml + public void sauvegardeDico(List> ld) + { + var serializer = new DataContractSerializer(typeof(Dictionary)); + //-- Write fichier --// + var settings = new XmlWriterSettings() { Indent = true }; + using (TextWriter tw = File.CreateText(Path.Combine(FilePath, FileDico))) + { + using (XmlWriter writer = XmlWriter.Create(tw, settings)) + { + serializer.WriteObject(writer, ld); + } + } + }*/ + } } diff --git a/CanYouBuildIt/DataContractPersistance/DataToPersist.cs b/CanYouBuildIt/DataContractPersistance/DataToPersist.cs index 08ff0e1..eeb7ea3 100644 --- a/CanYouBuildIt/DataContractPersistance/DataToPersist.cs +++ b/CanYouBuildIt/DataContractPersistance/DataToPersist.cs @@ -13,5 +13,6 @@ namespace CanYouBuildIt.DataContractPersistance public List lu = new List(); public List lc = new List(); public List lb = new List(); + public List> ld = new List>(); } } diff --git a/CanYouBuildIt/Model/Build.cs b/CanYouBuildIt/Model/Build.cs index fa7d26d..1d9bead 100644 --- a/CanYouBuildIt/Model/Build.cs +++ b/CanYouBuildIt/Model/Build.cs @@ -30,7 +30,7 @@ namespace CanYouBuildIt.Model id = nbId; nbId = nbId +1; this.image = image; - Dictionary dComp = new Dictionary(); + dComp = new Dictionary(); //Ajoue de chaque élément + calcule du prix total dComp.Add(v1.type,v1); @@ -66,5 +66,9 @@ namespace CanYouBuildIt.Model } } } + + } + + } diff --git a/CanYouBuildIt/Model/DictionaryWrapper.cs b/CanYouBuildIt/Model/DictionaryWrapper.cs new file mode 100644 index 0000000..1aa878e --- /dev/null +++ b/CanYouBuildIt/Model/DictionaryWrapper.cs @@ -0,0 +1,25 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Runtime.Serialization; +using System.Text; +using System.Threading.Tasks; + +namespace CanYouBuildIt.Model +{ + public class DictionaryWrapper + { + [DataMember] + public List> Items { get; set; } + + public DictionaryWrapper(Dictionary dictionary) + { + Items = dictionary.ToList(); + } + + public Dictionary ToDico() + { + return Items.ToDictionary(kvp => kvp.Key, kvp => kvp.Value); + } + } +} diff --git a/CanYouBuildIt/Model/Manager.cs b/CanYouBuildIt/Model/Manager.cs index a43e27a..ff33006 100644 --- a/CanYouBuildIt/Model/Manager.cs +++ b/CanYouBuildIt/Model/Manager.cs @@ -38,8 +38,6 @@ namespace CanYouBuildIt.Model listUtil.AddRange(donnee.lu); listComp.AddRange(donnee.lc); listBuild.AddRange(donnee.lb); - Debug.WriteLine("srv listBuild; + public List listBuild = new List(); [DataMember] - public List listFav; + public List listFav = new List(); [DataMember] - public List Builds; + public List Builds = new List(); public Utilisateur(string name, string pass, List listbuild = null, List listfav = null, List builds = null) { username = name; password = pass; - listBuild = listbuild; - listFav = listfav; - Builds = builds; + if (listbuild != null) + listBuild = listbuild; + else + listBuild = new List(); + if (listfav != null) + listFav = listfav; + else + listFav = new List(); + if (listbuild != null) + Builds = builds; + else + Builds = new List(); } } } diff --git a/CanYouBuildIt/Resources/Images/Pc/pc2.png b/CanYouBuildIt/Resources/Images/Pc/pc2.png index 110d030..0a36232 100644 Binary files a/CanYouBuildIt/Resources/Images/Pc/pc2.png and b/CanYouBuildIt/Resources/Images/Pc/pc2.png differ diff --git a/CanYouBuildIt/Resources/Images/favoff.png b/CanYouBuildIt/Resources/Images/favoff.png new file mode 100644 index 0000000..cb2c1e6 Binary files /dev/null and b/CanYouBuildIt/Resources/Images/favoff.png differ diff --git a/CanYouBuildIt/Resources/Images/favon.png b/CanYouBuildIt/Resources/Images/favon.png new file mode 100644 index 0000000..38c48a9 Binary files /dev/null and b/CanYouBuildIt/Resources/Images/favon.png differ diff --git a/CanYouBuildIt/Views/Acceuil.xaml b/CanYouBuildIt/Views/Acceuil.xaml index ba7e347..e959114 100644 --- a/CanYouBuildIt/Views/Acceuil.xaml +++ b/CanYouBuildIt/Views/Acceuil.xaml @@ -76,14 +76,6 @@ -