using projet.modele; using System; using System.Collections.Generic; namespace projet.dal { /// /// Méthodes d'accès aux données pour le personnel. /// public class PersonnelAccess { private readonly Access access; /// /// Récupère l'instance de la classe Access pour accéder à la base de données. /// public PersonnelAccess() { access = Access.GetInstance(); } /// /// Méthode pour récupérer tous les personnels de la base de données. /// /// public List GetAllPersonnel() { List personnelList = new List(); if (access.Manager != null) { string req = "SELECT * FROM personnel ORDER BY nom, prenom;"; try { List resultats = access.Manager.ReqSelect(req); if (resultats != null) { foreach (Object[] resultat in resultats) { Personnel personnel = new Personnel( Convert.ToInt32(resultat[0]), // IdPersonnel Convert.ToString(resultat[1]), // Nom Convert.ToString(resultat[2]), // Prenom Convert.ToString(resultat[3]), // Tel Convert.ToString(resultat[4]), // Mail Convert.ToInt32(resultat[5]) // IdService ); personnelList.Add(personnel); } } } catch (Exception) { Console.WriteLine("Erreur lors de la récupération des données du personnel."); Environment.Exit(0); } } return personnelList; } /// /// Méthode pour ajouter un personnel à la base de données. /// /// Personne à rajouter public void addPersonnel(Personnel personne) { if (access.Manager != null) { string req = "INSERT INTO personnel (nom, prenom, tel, mail, idService) VALUES (@nom, @prenom, @tel, @mail, @idService);"; var parameters = new Dictionary { { "@nom", personne.Nom }, { "@prenom", personne.Prenom }, { "@tel", personne.Tel }, { "@mail", personne.Mail }, { "@idService", personne.IdService } }; try { access.Manager.ReqUpdate(req, parameters); } catch (Exception) { Console.WriteLine("Erreur lors de l'ajout du personnel dans la base de données."); Environment.Exit(0); } } } /// /// Méthode pour supprimer un personnel de la base de données. /// /// Personne à supprimer public void deletePersonnel(Personnel personnel) { if (access.Manager != null) { string req = "DELETE FROM personnel WHERE idPersonnel = @idPersonnel;"; var parameters = new Dictionary { { "@idPersonnel", personnel.IdPersonnel } }; try { access.Manager.ReqUpdate(req, parameters); } catch (Exception) { Console.WriteLine("Erreur lors de la suppression du personnel dans la base de données."); Environment.Exit(0); } } } /// /// Méthode pour modifier les informations d'un personnel dans la base de données. /// /// Personne à modifier public void ModifierPersonnel(Personnel personnel) { if(access.Manager != null) { string req = "UPDATE personnel SET nom = @nom, prenom = @prenom, tel = @tel, mail = @mail, idService = @idService WHERE idPersonnel = @idPersonnel;"; var parameters = new Dictionary { { "@idPersonnel", personnel.IdPersonnel }, { "@nom", personnel.Nom }, { "@prenom", personnel.Prenom }, { "@tel", personnel.Tel }, { "@mail", personnel.Mail }, { "@idService", personnel.IdService } }; try { access.Manager.ReqUpdate(req, parameters); } catch (Exception) { Console.WriteLine("Erreur lors de la modification du personnel dans la base de données."); Environment.Exit(0); } } } } }