diff --git a/Code/IHM/MainWindow.xaml.cs b/Code/IHM/MainWindow.xaml.cs index a346163..1bcdaec 100644 --- a/Code/IHM/MainWindow.xaml.cs +++ b/Code/IHM/MainWindow.xaml.cs @@ -59,15 +59,25 @@ namespace IHM MessageBox.Show("Suppression ok"); } - public void testSupressionBdd(Banque b) + public void testSupressionBanqueBdd() { - + foreach (Inscrit i in ListedesInscrits.ListedesInscrits) + { + if(i.Id == "00001") + { + MessageBox.Show("Suppression ok"); + Banque b = new Banque("BNP PARIBAS", "mabanque", "bite"); + ListedesInscrits.supprimerBanqueBdd(i, b); + MessageBox.Show("Suppression ok"); + } + } } private void test_Click(object sender, RoutedEventArgs e) { - testSelect(); - /* testSuppression();*/ + // testSelect(); + // testSuppression(); + testSupressionBanqueBdd(); } } diff --git a/Code/LinqToPgSQL/PersLinqToPgSQL.cs b/Code/LinqToPgSQL/PersLinqToPgSQL.cs index f7f274e..0496ce2 100644 --- a/Code/LinqToPgSQL/PersLinqToPgSQL.cs +++ b/Code/LinqToPgSQL/PersLinqToPgSQL.cs @@ -60,6 +60,38 @@ namespace LinqToPgSQL return ListeInscrits; } + public IEnumerable LoadBanque() + { + List ListeBanques = new List(); + + var conn = new NpgsqlConnection(connString); + Console.Out.WriteLine("Ouverture de la connection"); try + { + conn.Open(); + } + catch + { + conn.Close(); + Environment.Exit(0); + + } + + + NpgsqlDataReader dbReader = new NpgsqlCommand("SELECT * FROM Banque", conn).ExecuteReader(); + + while (dbReader.Read()) + { + + ListeBanques.Add(new Banque(dbReader.GetString(0), dbReader.GetString(1), dbReader.GetString(2))); + + } + + + dbReader.Close(); + + return ListeBanques; + } + /*Revoir la BDD, probleme de clé étrangère de devise*/ public async void SupprimerInscritBdd(Inscrit i) @@ -85,31 +117,25 @@ namespace LinqToPgSQL command.Parameters.AddWithValue("p", i.Id); await command.ExecuteNonQueryAsync(); } - - - } - public async void SupprimerBanqueBdd(Banque b) + public async void SupprimerBanqueBdd(Inscrit i, Banque b) { var conn = new NpgsqlConnection(connString); Console.Out.WriteLine("Ouverture de la connection"); conn.Open(); - string requete = $"DELETE FROM Banque WHERE nom=(@n)"; - string requeteFKey = $"DELETE From Compte WHERE nomBanque=(@n2)"; - - using (var commandFKey = new NpgsqlCommand(requeteFKey, conn)) + await using var cmd = new NpgsqlCommand("DELETE FROM InscrBanque WHERE nombanque=(@b) AND idinscrit=(@i)", conn) { - commandFKey.Parameters.AddWithValue("n2", b.Nom); - await commandFKey.ExecuteNonQueryAsync(); - } - - using (var command = new NpgsqlCommand(requete, conn)) - { - command.Parameters.AddWithValue("n", b.Nom); - await command.ExecuteNonQueryAsync(); - } + Parameters = + { + new("b", b.Nom), + new("i", i.Id) + } + }; + await cmd.ExecuteNonQueryAsync(); + + // attente des autres supression } } -} +} \ No newline at end of file diff --git a/Code/Model/IPersistanceManager.cs b/Code/Model/IPersistanceManager.cs index a7784aa..949073d 100644 --- a/Code/Model/IPersistanceManager.cs +++ b/Code/Model/IPersistanceManager.cs @@ -11,6 +11,6 @@ namespace Model IEnumerable LoadInscrit(); IEnumerable LoadBanque(); void SupprimerInscritBdd(Inscrit inscrit); - void SupprimerBanqueBdd(Banque banque); + void SupprimerBanqueBdd(Inscrit inscrit, Banque banque); } } diff --git a/Code/Model/Inscrit.cs b/Code/Model/Inscrit.cs index c952c38..ed5abe8 100644 --- a/Code/Model/Inscrit.cs +++ b/Code/Model/Inscrit.cs @@ -60,6 +60,7 @@ namespace Model public void SupprimerBanque(Banque banque) { LesBanques.Remove(banque); + } public void ChoisirDevise(Devises devise) diff --git a/Code/Model/Manager.cs b/Code/Model/Manager.cs index 9e69976..d50c340 100644 --- a/Code/Model/Manager.cs +++ b/Code/Model/Manager.cs @@ -82,9 +82,9 @@ namespace Model Pers.SupprimerInscritBdd(i); } - public void supprimerBanqueBdd(Banque b) + public void supprimerBanqueBdd(Inscrit i, Banque b) { - Pers.SupprimerBanqueBdd(b); + Pers.SupprimerBanqueBdd(i, b); } /* public void supprimerInscritBdd(Inscrit i)