From 527416946d77329ac6bcc5b663da8faf89e55ef9 Mon Sep 17 00:00:00 2001 From: thchazot1 Date: Fri, 10 Jun 2022 10:14:11 +0200 Subject: [PATCH] Utilisation des fonctions des users plutot que de le faire dans les fichier xaml --- Modèle/Expert.cs | 6 ++ Modèle/Personne.cs | 3 + Modèle/Utilisateur.cs | 52 ++---------- WpfApp1/AddAShark.xaml.cs | 13 ++- WpfApp1/App.xaml | 4 +- WpfApp1/App.xaml.cs | 25 +++--- WpfApp1/DescriptionEdit.xaml | 10 +-- WpfApp1/InfoUtilisateur.xaml.cs | 2 +- WpfApp1/MainWindow.xaml.cs | 4 +- WpfApp1/Persistance/ficReqs | 113 +------------------------ WpfApp1/Persistance/ficUsers | 17 +--- WpfApp1/SeConnecter.xaml.cs | 13 ++- WpfApp1/UCRequinValSubmit.xaml | 40 --------- WpfApp1/UCRequinValSubmit.xaml.cs | 77 ----------------- WpfApp1/UserControlEdit.xaml.cs | 29 ++++--- WpfApp1/ValiderSubmit.xaml.cs | 2 + WpfApp1/userControlDescription.xaml.cs | 3 - 17 files changed, 81 insertions(+), 332 deletions(-) delete mode 100644 WpfApp1/UCRequinValSubmit.xaml delete mode 100644 WpfApp1/UCRequinValSubmit.xaml.cs diff --git a/Modèle/Expert.cs b/Modèle/Expert.cs index c57d1bf..74a5d8a 100644 --- a/Modèle/Expert.cs +++ b/Modèle/Expert.cs @@ -1,5 +1,6 @@ using System; using System.Collections.Generic; +using System.Collections.ObjectModel; using System.Linq; using System.Runtime.Serialization; using System.Text; @@ -99,5 +100,10 @@ namespace Modèle { return Email == e.Email; } + + public override void AjouterRequin(Requin req, ObservableCollection requins) + { + requins.Add(req); + } } } diff --git a/Modèle/Personne.cs b/Modèle/Personne.cs index 2c5b034..d440c76 100644 --- a/Modèle/Personne.cs +++ b/Modèle/Personne.cs @@ -1,5 +1,6 @@ using System; using System.Collections.Generic; +using System.Collections.ObjectModel; using System.Linq; using System.Runtime.Serialization; using System.Text; @@ -22,5 +23,7 @@ namespace Modèle } public abstract override string ToString(); + + public abstract void AjouterRequin(Requin req, ObservableCollection requins); } } diff --git a/Modèle/Utilisateur.cs b/Modèle/Utilisateur.cs index 85bad3c..b2bf463 100644 --- a/Modèle/Utilisateur.cs +++ b/Modèle/Utilisateur.cs @@ -1,5 +1,6 @@ using System; using System.Collections.Generic; +using System.Collections.ObjectModel; using System.Linq; using System.Runtime.Serialization; using System.Text; @@ -25,55 +26,18 @@ namespace Modèle { return Email + " " + MotDePasse + " " + NbSubmit; } - public int FaireUnSubmit(string nom, string nomSci, string desc, string photo, string video, string photoCarte, Conservation cons, List rep, string funFact, List lBdPasFinie) - { - Requin petitNouveau = new Requin(nom, nomSci, desc, photo, video, photoCarte, cons, rep, funFact); - lBdPasFinie.Add(petitNouveau); - NbSubmit++; - return 1; - } - - public void FaireUnChangement(Requin req, string desc, string photo, string video, string photoCarte, Conservation cons, List rep, string funFact, List lBdPasFinie){ - if (string.IsNullOrWhiteSpace(desc)) - { - desc = req.Description; - } - if (string.IsNullOrWhiteSpace(photo)) - { - photo = req.Photo; - } - if (string.IsNullOrWhiteSpace(video)) - { - video = req.Video; - } - if (string.IsNullOrWhiteSpace(photoCarte)) - { - photoCarte = req.PhotoCarte; - } - if (cons == Conservation.NE) - { - cons = req.StatutCons; - } - if (string.IsNullOrWhiteSpace(funFact)) - { - funFact = req.FunFact; - } - if (rep.Count() == 0) - { - foreach (Zone z in req.Repartition) - { - rep.Add(z); - } - } - Requin requin = new Requin(req.Nom, req.NomSci, desc, photo, video, photoCarte, cons, rep, funFact); - lBdPasFinie.Add(requin); - NbSubmit++; - } public bool Equals(Utilisateur u) { return Email == u.Email; } + + + public override void AjouterRequin(Requin req, ObservableCollection requins) + { + requins.Add(req); + NbSubmit++; + } } } diff --git a/WpfApp1/AddAShark.xaml.cs b/WpfApp1/AddAShark.xaml.cs index 6d629f2..0c3512d 100644 --- a/WpfApp1/AddAShark.xaml.cs +++ b/WpfApp1/AddAShark.xaml.cs @@ -24,13 +24,13 @@ namespace WpfApp1 public AddAShark() { InitializeComponent(); - Mgr.LoadRequins(); DataContext = Mgr; } public Manager Mgr => (Application.Current as App).LeManager; + public ManagerUsers MgrUser => (Application.Current as App).LeManagerUsers; private List consList = new List @@ -111,13 +111,22 @@ namespace WpfApp1 if (testCons == 0 || lesZones.Count() == 0 || string.IsNullOrWhiteSpace(nom) || string.IsNullOrWhiteSpace(sciNam) || string.IsNullOrWhiteSpace(descri) || string.IsNullOrWhiteSpace(photo) || string.IsNullOrWhiteSpace(video) || string.IsNullOrWhiteSpace(map) || string.IsNullOrWhiteSpace(fun)) { + MessageBox.Show("Veuillez remplir toutes les informations"); return; } else { Requin requin = new Requin(nom, sciNam, descri, photo, video, map, cons, lesZones, fun); - Mgr.AjouterRequinAdd(requin); + if (MgrUser.SelectedUser is Utilisateur user) + { + user.AjouterRequin(requin, Mgr.RequinsAdd); + } + else if (MgrUser.SelectedUser is Expert exp) + { + exp.AjouterRequin(requin, Mgr.RequinsAdd); + } Close(); + } } diff --git a/WpfApp1/App.xaml b/WpfApp1/App.xaml index 0c062d3..804f15d 100644 --- a/WpfApp1/App.xaml +++ b/WpfApp1/App.xaml @@ -2,7 +2,9 @@ xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:local="clr-namespace:WpfApp1" - StartupUri="MainWindow.xaml"> + StartupUri="MainWindow.xaml" + Deactivated="Application_Deactivated" + Activated="Application_Activated"> diff --git a/WpfApp1/App.xaml.cs b/WpfApp1/App.xaml.cs index c080c54..ed02cc7 100644 --- a/WpfApp1/App.xaml.cs +++ b/WpfApp1/App.xaml.cs @@ -22,24 +22,23 @@ namespace WpfApp1 public Manager LeManager { get; private set; } = new Manager(strat); public ManagerUsers LeManagerUsers { get; private set; } = new ManagerUsers(strat); - public App() + public void Temp() { - var dataReq = strat.LoadRequins(); - var dataUsers = strat.LoadUsers(); - var users = dataUsers.users; - var experts = dataUsers.experts; - var requins = dataReq.reqs; - var requinsAdd = dataReq.reqsAdd; - var requinsEdit = dataReq.reqsEdit; - - strat.SaveRequins(requins, requinsAdd, requinsEdit); - strat.SaveUsers(users, experts); + var mw = MainWindow as MainWindow; } - public void Temp() + private void Application_Activated(object sender, EventArgs e) { - var mw = MainWindow as MainWindow; + + LeManager.LoadRequins(); + LeManagerUsers.LoadUsers(); } + private void Application_Deactivated(object sender, EventArgs e) + { + + LeManager.SaveRequins(); + LeManagerUsers.SaveUsers(); + } } } diff --git a/WpfApp1/DescriptionEdit.xaml b/WpfApp1/DescriptionEdit.xaml index 571c0db..a487c2e 100644 --- a/WpfApp1/DescriptionEdit.xaml +++ b/WpfApp1/DescriptionEdit.xaml @@ -13,7 +13,7 @@ - + @@ -35,15 +35,15 @@ - + -