using System.ComponentModel; using System.Diagnostics; namespace Model { public class Manager : INotifyPropertyChanged { public event PropertyChangedEventHandler PropertyChanged; public IPersistanceManager Pers { get; private set; } public string SelectedInscrit { get; set; } public Hash hash = new Hash(); public int Solde { get => solde; set { if(solde != value) { solde = value; OnPropertyChanged(nameof(Solde)); } } } private int solde; public Inscrit User { get; set; } public Banque SelectedBanque { get => selectedBanque; set { if(selectedBanque != value) { selectedBanque = value; OnPropertyChanged(nameof(SelectedBanque)); } } } private Banque selectedBanque; public IEnumerable listeBanqueConnecte { get; private set; } void OnPropertyChanged(string propertyName) => PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName)); public Manager(IPersistanceManager persistance) { Pers = persistance; } public void SupprimerInscritBdd(Inscrit i) { Pers.SupprimerInscritBdd(i); } public void LoadInscrit(string id, string mdp) { SelectedInscrit = Pers.LoadInscrit(id, mdp); Debug.WriteLine(SelectedInscrit); } public void LoadBanques() { listeBanqueConnecte = Pers.LoadBanqueId(SelectedInscrit); } public void supprimerToutesBanquesBdd(Inscrit inscrit) { Pers.SupprimerToutesBanquesBdd(inscrit); } public void createInscrit(Inscrit inscrit) { Pers.CreateInscrit(inscrit); } public string lastInscrit() { return Pers.LastInscrit(); } public bool existEmail(string mail) { return Pers.ExistEmail(mail); } public void changePasswordBdd(string mail, string newMdp) { Pers.ChangePasswordBdd(mail, newMdp); } public string recupMdpBdd(string mail) { return Pers.RecupMdpBdd(mail); } public bool isEqualHash(string mdpBdd, string mdpSent) { return hash.IsEqualHash(mdpBdd, mdpSent); } public void createUser(string mail) { User = new Inscrit(mail); } public int recupTotalSolde() { Solde = Pers.CalculTotalSoldeComtpe(User); return Solde; } public void deconnexion() { SelectedBanque= null; SelectedInscrit = null; listeBanqueConnecte = new List(); Debug.WriteLine(listeBanqueConnecte.Count()); } } }