Esempio n. 1
0
        /// <summary>
        /// Méthode permettant d'obtenir un plat sauvegardé dans la base de données.
        /// </summary>
        /// <param name="args">Les arguments permettant de retrouver le plat.</param>
        /// <returns>Un objet Plat.</returns>
        public Plat Retrieve(RetrievePlatArgs args)
        {
            Plat plat;

            try
            {
                connexion = new MySqlConnexion();
                string requete = string.Format("SELECT * FROM Plats p INNER JOIN TypesPlats tp ON tp.idTypePlat = p.idTypePlat INNER JOIN Membres m ON m.idMembre = p.idMembre WHERE idPlat = '{0}'", args.IdPlat);

                DataSet   dataSetPlats = connexion.Query(requete);
                DataTable tablePlats   = dataSetPlats.Tables[0];

                plat = ConstruirePlat(tablePlats.Rows[0]);

                plat.ListeIngredients = RetrieveAlimentsPlat(new RetrievePlatArgs {
                    IdPlat = plat.IdPlat
                });
            }
            catch (Exception)
            {
                throw;
            }

            return(plat);
        }
Esempio n. 2
0
        /// <summary>
        /// Méthode permettant de mettre à jour un plat dans la base de données suite à un vote.
        /// </summary>
        /// <param name="plat">Le plat à mettre à jour.</param>
        public void UpdateVote(Plat plat)
        {
            try
            {
                connexion = new MySqlConnexion();

                // Obtenir le idTypePlat.
                string requete = string.Format("SELECT idTypePlat FROM TypesPlats WHERE typePlat = '{0}'", plat.TypePlat);

                DataSet   dataSetType = connexion.Query(requete);
                DataTable tableType   = dataSetType.Tables[0];
                int       idTypePlat  = (int)(tableType.Rows[0]["idTypePlat"]);

                string note = plat.Note.ToString();

                if (note.Contains(","))
                {
                    note = note.Replace(",", ".");
                }

                requete = string.Format("UPDATE Plats SET idTypePlat = {0}, nom = '{1}', imageUrl = '{2}', note = {3}, nbVotes = {4} WHERE idPlat = {5}", idTypePlat, plat.Nom.Replace("'", "''"), plat.ImageUrl, note, plat.NbVotes, plat.IdPlat);
                connexion.Query(requete);
            }
            catch (Exception)
            {
                throw;
            }
        }
Esempio n. 3
0
        /// <summary>
        /// Méthode permettant d'obtenir un ensemble de plats sauvegardé dans la base de données.
        /// </summary>
        /// <param name="args">Les arguments permettant de retrouver les plats.</param>
        /// <returns>Une liste contenant les plats.</returns>
        public IList<Plat> RetrieveSome(RetrieveSuiviPlatArgs args)
        {
            List<Plat> resultat = new List<Plat>();

            try
            {
                connexion = new MySqlConnexion();

                string requete = string.Format("SELECT * FROM SuiviPlats WHERE idMembre = {0}", args.IdMembre);

                DataSet dataSetPlats = connexion.Query(requete);
                DataTable tablePlats = dataSetPlats.Tables[0];

                foreach (DataRow rowPlat in tablePlats.Rows)
                {
                    Plat plat = platService.Retrieve(new RetrievePlatArgs { IdPlat = ((int)rowPlat["idPlat"]) });

                    plat.EstTricherie = ((bool)rowPlat["estTricherie"]);

                    resultat.Add(plat);
                }
            }
            catch (Exception)
            {
                throw;
            }

            return resultat;
        }
Esempio n. 4
0
        /// <summary>
        /// Méthode permettant d'obtenir l'ensemble des Objectifs sauvegardés dans la base de données.
        /// </summary>
        /// <returns>Une liste contenant les objectifs.</returns>
        public IList<Objectif> RetrieveAll()
        {
            IList<Objectif> resultat = new List<Objectif>();

            try
            {
                connexion = new MySqlConnexion();

                string requete = "SELECT * FROM Objectifs";

                DataSet dataSet = connexion.Query(requete);
                DataTable table = dataSet.Tables[0];

                foreach (DataRow objectif in table.Rows)
                {
                    resultat.Add(ConstruireObjectif(objectif));
                }

            }
            catch (MySqlException)
            {
                throw;
            }

            return resultat;
        }
Esempio n. 5
0
        /// <summary>
        /// Méthode de mise à jour d'un aliment dans la base de données.
        /// </summary>
        /// <param name="unAliment">Aliment qu'il faut mettre à jour dans la base de données.</param>
        public void Update(Aliment unAliment)
        {
            string requeteCategoriesAlim = string.Format("SELECT * FROM CategoriesAlimentaires WHERE categorieAlimentaire = '{0}'", unAliment.Categorie);

            try
            {
                using (MySqlConnexion connexion = new MySqlConnexion())
                    using (DataSet dataSetCategories = connexion.Query(requeteCategoriesAlim))
                        using (DataTable tableCategories = dataSetCategories.Tables[0])
                        {
                            int idCategorie = 0;

                            foreach (DataRow rowCategories in tableCategories.Rows)
                            {
                                idCategorie = (int)rowCategories["idCategorieAlimentaire"];
                            }

                            string requeteUnitesMesure = string.Format("SELECT * FROM UnitesMesure WHERE uniteMesure = '{0}'", unAliment.UniteMesure);

                            using (DataSet dataSetUnites = connexion.Query(requeteUnitesMesure))
                                using (DataTable tableUnites = dataSetUnites.Tables[0])
                                {
                                    int idUnite = 0;

                                    foreach (DataRow rowUnites in tableUnites.Rows)
                                    {
                                        idUnite = (int)rowUnites["idUniteMesure"];
                                    }

                                    string requeteUpdate = string.Format("UPDATE Aliments SET idUniteMesure = {0}, idCategorieAlimentaire = {1}, nom = '{2}', mesure = {3}, imageURL = '{4}' WHERE idAliment = {5}", idUnite, idCategorie, unAliment.Nom, unAliment.Mesure, unAliment.ImageURL, unAliment.IdAliment);
                                    connexion.Query(requeteUpdate);

                                    int idAliment = (int)unAliment.IdAliment;

                                    int idEnergie     = Associer_Valeur_Nutritionnelle("Calories");
                                    int idProteine    = Associer_Valeur_Nutritionnelle("Protéines");
                                    int idGlucide     = Associer_Valeur_Nutritionnelle("Glucides");
                                    int idFibre       = Associer_Valeur_Nutritionnelle("Fibres");
                                    int idLipide      = Associer_Valeur_Nutritionnelle("Lipides");
                                    int idSodium      = Associer_Valeur_Nutritionnelle("Sodium");
                                    int idCholesterol = Associer_Valeur_Nutritionnelle("Cholestérol");

                                    string requeteDelete = string.Format("DELETE FROM AlimentsValeursNutritionnelles WHERE idAliment = {0}", idAliment);
                                    connexion.Query(requeteDelete);

                                    Inserer_Valeur_Nutritionnelle(idEnergie, idAliment, unAliment.Energie);
                                    Inserer_Valeur_Nutritionnelle(idProteine, idAliment, unAliment.Proteine);
                                    Inserer_Valeur_Nutritionnelle(idGlucide, idAliment, unAliment.Glucide);
                                    Inserer_Valeur_Nutritionnelle(idFibre, idAliment, unAliment.Fibre);
                                    Inserer_Valeur_Nutritionnelle(idLipide, idAliment, unAliment.Lipide);
                                    Inserer_Valeur_Nutritionnelle(idSodium, idAliment, unAliment.Sodium);
                                    Inserer_Valeur_Nutritionnelle(idCholesterol, idAliment, unAliment.Cholesterol);
                                }
                        }
            }
            catch (Exception)
            {
                throw;
            }
        }
        /// <summary>
        /// Méthode permettant d'obtenir l'ensemble des Préférences sauvegardés dans la base de données.
        /// </summary>
        /// <returns>Une liste contenant les préférences.</returns>
        public IList<Preference> RetrieveAll()
        {
            IList<Preference> resultat = new List<Preference>();

            try
            {
                connexion = new MySqlConnexion();

                string requete = "SELECT * FROM Preferences";

                DataSet dataSet = connexion.Query(requete);
                DataTable table = dataSet.Tables[0];

                foreach (DataRow preference in table.Rows)
                {
                    resultat.Add(ConstruirePreference(preference));
                }

            }
            catch (MySqlException)
            {
                throw;
            }

            return resultat;
        }
Esempio n. 7
0
        /// <summary>
        /// Méthode permettant d'obtenir l'id pour une valeur nutritionnelle désirée.
        /// </summary>
        /// <param name="uneValeur">Nom de la valeur nutritionnelle dont on veut l'id.</param>
        /// <returns>Un int contenant l'id de la valeur nutritionnelle désirée.</returns>
        private int Associer_Valeur_Nutritionnelle(String uneValeur)
        {
            int idValeur = 0;

            try
            {
                using (MySqlConnexion connexion = new MySqlConnexion())
                {
                    string requeteValeur = string.Format("SELECT * FROM ValeursNutritionnelles WHERE valeurNutritionnelle = '{0}'", uneValeur);

                    using (DataSet dataSetValeur = connexion.Query(requeteValeur))
                        using (DataTable tableValeur = dataSetValeur.Tables[0])
                        {
                            foreach (DataRow rowValeur in tableValeur.Rows)
                            {
                                idValeur = (int)rowValeur["idValeurNutritionnelle"];
                            }
                        }
                }
                return(idValeur);
            }
            catch (Exception)
            {
                throw;
            }
        }
        public IList<UniteMesure> RetrieveAll()
        {
            IList<UniteMesure> resultat = new List<UniteMesure>();

            try
            {
                connexion = new MySqlConnexion();

                string requete = "SELECT * FROM UnitesMesure";

                DataSet dataSetUnitesMesure = connexion.Query(requete);
                DataTable tableUnitesMesure = dataSetUnitesMesure.Tables[0];

                foreach (DataRow uniteMesure in tableUnitesMesure.Rows)
                {
                    resultat.Add(ConstruireUniteMesure(uniteMesure));
                }

            }
            catch (MySqlException)
            {
                throw;
            }

            return resultat;
        }
Esempio n. 9
0
        /// <summary>
        /// Méthode permettant d'obtenir l'ensemble des Objectifs sauvegardés dans la base de données.
        /// </summary>
        /// <returns>Une liste contenant les objectifs.</returns>
        public IList <Objectif> RetrieveAll()
        {
            IList <Objectif> resultat = new List <Objectif>();

            try
            {
                connexion = new MySqlConnexion();

                string requete = "SELECT * FROM Objectifs";

                DataSet   dataSet = connexion.Query(requete);
                DataTable table   = dataSet.Tables[0];

                foreach (DataRow objectif in table.Rows)
                {
                    resultat.Add(ConstruireObjectif(objectif));
                }
            }
            catch (MySqlException)
            {
                throw;
            }

            return(resultat);
        }
Esempio n. 10
0
        /// <summary>
        /// Méthode permettant de mettre à jour un menu dans la base de données.
        /// </summary>
        /// <param name="menu">Le menu à mettre à jour.</param>
        public void Update(Menu menu)
        {
            try
            {
                connexion = new MySqlConnexion();

                string requete = string.Format("UPDATE Menus SET idMembre = {0}, nom = '{1}', nbPersonnes = {2}, dateMenu = '{3}' WHERE idMenu = {4}", App.MembreCourant.IdMembre, menu.Nom, menu.NbPersonnes, menu.DateCreation.ToString("yyyy-MM-dd"), menu.IdMenu);

                connexion.Query(requete);

                string requeteEffacerPlats = string.Format("DELETE FROM MenusPlats WHERE idMenu = {0}", menu.IdMenu);

                connexion.Query(requeteEffacerPlats);

                foreach (Plat platCourant in menu.ListePlats)
                {
                    requete = string.Format("INSERT INTO MenusPlats (idMenu, idPlat) VALUES ({0}, {1})", Retrieve(new RetrieveMenuArgs {
                        IdMembre = App.MembreCourant.IdMembre, Nom = menu.Nom
                    }).IdMenu, platCourant.IdPlat);
                    connexion.Query(requete);
                }
            }
            catch (MySqlException)
            {
                throw;
            }
        }
Esempio n. 11
0
        /// <summary>
        /// Méthode permettant d'obtenir l'ensemble des Préférences sauvegardés dans la base de données.
        /// </summary>
        /// <returns>Une liste contenant les préférences.</returns>
        public IList <Preference> RetrieveAll()
        {
            IList <Preference> resultat = new List <Preference>();

            try
            {
                connexion = new MySqlConnexion();

                string requete = "SELECT * FROM Preferences";

                DataSet   dataSet = connexion.Query(requete);
                DataTable table   = dataSet.Tables[0];

                foreach (DataRow preference in table.Rows)
                {
                    resultat.Add(ConstruirePreference(preference));
                }
            }
            catch (MySqlException)
            {
                throw;
            }

            return(resultat);
        }
Esempio n. 12
0
        /// <summary>
        /// Méthode permettant d'obtenir l'ensemble des plats sauvegardé dans la base de données.
        /// </summary>
        /// <returns>Une liste contenant les plats.</returns>
        public IList <Plat> RetrieveAll()
        {
            List <Plat> resultat = new List <Plat>();

            try
            {
                connexion = new MySqlConnexion();

                string requete = "SELECT * FROM Plats p INNER JOIN TypesPlats tp ON tp.idTypePlat = p.idTypePlat INNER JOIN Membres m ON m.idMembre = p.idMembre ORDER BY p.nom asc";

                DataSet   dataSetPlats = connexion.Query(requete);
                DataTable tablePlats   = dataSetPlats.Tables[0];

                foreach (DataRow rowPlat in tablePlats.Rows)
                {
                    Plat plat = ConstruirePlat(rowPlat);

                    plat.ListeIngredients = RetrieveAlimentsPlat(new RetrievePlatArgs {
                        IdPlat = plat.IdPlat
                    });

                    resultat.Add(plat);
                }
            }
            catch (Exception)
            {
                throw;
            }

            return(resultat);
        }
Esempio n. 13
0
        /// <summary>
        /// Méthode permettant d'obtenir un ensemble de plats sauvegardé dans la base de données.
        /// </summary>
        /// <param name="args">Les arguments permettant de retrouver les plats.</param>
        /// <returns>Une liste contenant les plats.</returns>
        public IList <Plat> RetrieveSome(RetrieveSuiviPlatArgs args)
        {
            List <Plat> resultat = new List <Plat>();

            try
            {
                connexion = new MySqlConnexion();

                string requete = string.Format("SELECT * FROM SuiviPlats WHERE idMembre = {0}", args.IdMembre);

                DataSet   dataSetPlats = connexion.Query(requete);
                DataTable tablePlats   = dataSetPlats.Tables[0];

                foreach (DataRow rowPlat in tablePlats.Rows)
                {
                    Plat plat = platService.Retrieve(new RetrievePlatArgs {
                        IdPlat = ((int)rowPlat["idPlat"])
                    });

                    plat.EstTricherie = ((bool)rowPlat["estTricherie"]);

                    resultat.Add(plat);
                }
            }
            catch (Exception)
            {
                throw;
            }

            return(resultat);
        }
Esempio n. 14
0
        /// <summary>
        /// Méthode d'insertion d'un nouveau plat dans la base de données.
        /// </summary>
        /// <param name="unPlat">Le plat à insérer dans la base de donnée.</param>
        public void Insert(Plat unPlat)
        {
            try
            {
                connexion = new MySqlConnexion();

                string requeteTypePlat = string.Format("SELECT * FROM TypesPlats WHERE typePlat = '{0}'", unPlat.TypePlat);

                DataSet   dataSetTypes = connexion.Query(requeteTypePlat);
                DataTable tableTypes   = dataSetTypes.Tables[0];

                int idType = 0;

                foreach (DataRow rowType in tableTypes.Rows)
                {
                    idType = (int)rowType["idTypePlat"];
                }

                string requeteCreateur = string.Format("SELECT * FROM Membres WHERE nomUtilisateur = '{0}'", unPlat.Createur);

                DataSet   dataSetCreateur = connexion.Query(requeteCreateur);
                DataTable tableCreateur   = dataSetCreateur.Tables[0];

                int idMembre = 0;

                foreach (DataRow rowCreateur in tableCreateur.Rows)
                {
                    idMembre = (int)rowCreateur["idMembre"];
                }

                string requeteInsert = string.Format("INSERT INTO Plats (idMembre, idTypePlat, nom, description, imageUrl) VALUES ({0}, {1}, '{2}', '{3}', '{4}')", idMembre, idType, unPlat.Nom.Replace("'", "''"), unPlat.Description, unPlat.ImageUrl);
                connexion.Query(requeteInsert);

                string requetePlat = string.Format("SELECT * FROM Plats WHERE nom = '{0}'", unPlat.Nom.Replace("'", "''"));

                DataSet   dataSetPlat = connexion.Query(requetePlat);
                DataTable tablePlat   = dataSetPlat.Tables[0];

                int idPlat = 0;

                foreach (DataRow rowPlat in tablePlat.Rows)
                {
                    idPlat = (int)rowPlat["idPlat"];
                }

                for (int i = 0; i < unPlat.ListeIngredients.Count; i++)
                {
                    string requeteInsertAlimentPlat = string.Format("INSERT INTO PlatsAliments (idPlat, idAliment, quantite) VALUES ({0}, {1}, {2})", idPlat, unPlat.ListeIngredients[i].IdAliment, unPlat.ListeIngredients[i].Quantite);
                    connexion.Query(requeteInsertAlimentPlat);
                }
            }
            catch (Exception)
            {
                throw;
            }
        }
Esempio n. 15
0
        /// <summary>
        /// Méthode d'insertion d'un nouveau plat dans la base de données.
        /// </summary>
        /// <param name="unAliment"></param>
        public void Insert(Plat unPlat)
        {
            try
            {
                connexion = new MySqlConnexion();

                string requeteTypePlat = string.Format("SELECT * FROM TypesPlats WHERE typePlat = '{0}'", unPlat.TypePlat);

                DataSet dataSetTypes = connexion.Query(requeteTypePlat);
                DataTable tableTypes = dataSetTypes.Tables[0];

                int idType = 0;

                foreach (DataRow rowType in tableTypes.Rows)
                {
                    idType = (int)rowType["idTypePlat"];
                }

                string requeteCreateur = string.Format("SELECT * FROM Membres WHERE nomUtilisateur = '{0}'", unPlat.Createur);

                DataSet dataSetCreateur = connexion.Query(requeteCreateur);
                DataTable tableCreateur = dataSetCreateur.Tables[0];

                int idMembre = 0;

                foreach (DataRow rowCreateur in tableCreateur.Rows)
                {
                    idMembre = (int)rowCreateur["idMembre"];
                }

                string requeteInsert = string.Format("INSERT INTO Plats (idMembre, idTypePlat, nom, description, imageUrl, dateAjout) VALUES ({0}, {1}, '{2}', '{3}', '{4}', '{5}')", idMembre, idType, unPlat.Nom.Replace("'", "''"), unPlat.Description, unPlat.ImageUrl, DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
                connexion.Query(requeteInsert);

                string requetePlat = string.Format("SELECT * FROM Plats WHERE nom = '{0}'", unPlat.Nom.Replace("'", "''"));

                DataSet dataSetPlat = connexion.Query(requetePlat);
                DataTable tablePlat = dataSetPlat.Tables[0];

                int idPlat = 0;

                foreach (DataRow rowPlat in tablePlat.Rows)
                {
                    idPlat = (int)rowPlat["idPlat"];
                }

                for (int i = 0; i < unPlat.ListeIngredients.Count; i++)
                {
                    string requeteInsertAlimentPlat = string.Format("INSERT INTO PlatsAliments (idPlat, idAliment, quantite) VALUES ({0}, {1}, {2})", idPlat, unPlat.ListeIngredients[i].IdAliment, unPlat.ListeIngredients[i].Quantite);
                    connexion.Query(requeteInsertAlimentPlat);
                }
            }
            catch (Exception)
            {
                throw;
            }
        }
Esempio n. 16
0
        /// <summary>
        /// Méthode de mise à jour d'un plat modifié dans la base de données.
        /// </summary>
        /// <param name="unPlat">Le plat à mettre à jour.</param>
        public void Update(Plat unPlat)
        {
            try
            {
                connexion = new MySqlConnexion();

                string requeteTypePlat = string.Format("SELECT * FROM TypesPlats WHERE typePlat = '{0}'", unPlat.TypePlat);

                DataSet   dataSetTypes = connexion.Query(requeteTypePlat);
                DataTable tableTypes   = dataSetTypes.Tables[0];

                int idType = 0;

                foreach (DataRow rowType in tableTypes.Rows)
                {
                    idType = (int)rowType["idTypePlat"];
                }

                string note = unPlat.Note.ToString();
                string requeteUpdate;
                if (!String.IsNullOrWhiteSpace(note))
                {
                    if (note.Contains(","))
                    {
                        note = note.Replace(",", ".");
                    }
                    requeteUpdate = string.Format("UPDATE Plats SET idTypePlat = {0}, nom = '{1}', imageUrl = '{2}', note = '{3}', nbVotes = {4}, description = '{5}' WHERE idPlat = {6}", idType, unPlat.Nom.Replace("'", "''"), unPlat.ImageUrl, note, unPlat.NbVotes, unPlat.Description, unPlat.IdPlat);
                }
                else
                {
                    //string.Format remplace un NULL, par un espace vide, ce qui est invalide dans MySql et lance une exception puisqu'il essait de convertir un string vide à un Double (le type de donnée en bd pour note)
                    //Dois vérifier manuellement et écrire NULL.
                    requeteUpdate = string.Format("UPDATE Plats SET idTypePlat = {0}, nom = '{1}', imageUrl = '{2}', note = NULL, nbVotes = {3}, description = '{4}' WHERE idPlat = {5}", idType, unPlat.Nom.Replace("'", "''"), unPlat.ImageUrl, unPlat.NbVotes, unPlat.Description, unPlat.IdPlat);
                }

                connexion.Query(requeteUpdate);

                int idPlat = (int)unPlat.IdPlat;

                string requeteDelete = string.Format("DELETE FROM PlatsAliments WHERE idPlat = {0}", idPlat);
                connexion.Query(requeteDelete);

                for (int i = 0; i < unPlat.ListeIngredients.Count; i++)
                {
                    string requeteInsertAlimentPlat = string.Format("INSERT INTO PlatsAliments (idPlat, idAliment, quantite) VALUES ({0}, {1}, {2})", idPlat, unPlat.ListeIngredients[i].IdAliment, unPlat.ListeIngredients[i].Quantite);
                    connexion.Query(requeteInsertAlimentPlat);
                }
            }
            catch (Exception)
            {
                throw;
            }
        }
Esempio n. 17
0
 /// <summary>
 /// Méthode qui insère dans la base de données un Don
 /// </summary>
 /// <param name="don">Don à insérer</param>
 public void Insert(Don don)
 {
     try
     {
         connexion = new MySqlConnexion();
         string requete = string.Format("INSERT INTO Dons (idModePaiement, nom, montant, noTransaction) VALUES ( (SELECT idModePaiement FROM ModesPaiement WHERE nom = '{0}'), '{1}', {2}, '{3}')", don.ModePaiementTransaction, don.NomAuteur, don.Montant, don.NoTransaction);
         connexion.Query(requete);
     }
     catch (MySqlException)
     {
         throw;
     }
 }
Esempio n. 18
0
 public void Insert(Transaction don)
 {
     try
     {
         connexion = new MySqlConnexion();
         string requete = string.Format("INSERT INTO Dons (idModePaiement, nom, montant, noTransaction) VALUES ( (SELECT idModePaiement FROM ModesPaiement WHERE nom = '{0}'), '{1}', {2}, '{3}')", don.ModePaiementTransaction, don.NomAuteur, don.Montant, don.NoTransaction);
         connexion.Query(requete);
     }
     catch (MySqlException)
     {
         throw;
     }
 }
Esempio n. 19
0
        public void Insert(Membre membre, Transaction transaction)
        {
            Insert(transaction);

            try
            {
                connexion = new MySqlConnexion();
                string requete = string.Format("INSERT INTO DonsMembres (idMembre, idDon) VALUES ( (SELECT idMembre FROM Membres WHERE nomUtilisateur = '{0}'), (SELECT idDon FROM Dons WHERE noTransaction = '{1}')) ", membre.NomUtilisateur, transaction.NoTransaction);
                connexion.Query(requete);
            }
            catch (MySqlException)
            {
                throw;
            }
        }
Esempio n. 20
0
 /// <summary>
 /// Méthode permettant d'associer un don à un membre
 /// </summary>
 /// <param name="membre">Membre envoyant le don</param>
 /// <param name="transaction">Don à insérer dans la base de données</param>
 public void Insert(Membre membre, Don transaction)
 {
     //Appel la méthode qui ne fait qu'insérer le Don dans la bd.
     Insert(transaction);
     //Puis on exécute le code qui rajoutera les données nécessaire dans la table de correspondance DonsMembres pour associé le don au membre.
     try
     {
         connexion = new MySqlConnexion();
         string requete = string.Format("INSERT INTO DonsMembres (idMembre, idDon) VALUES ( (SELECT idMembre FROM Membres WHERE nomUtilisateur = '{0}'), (SELECT idDon FROM Dons WHERE noTransaction = '{1}')) ", membre.NomUtilisateur, transaction.NoTransaction);
         connexion.Query(requete);
     }
     catch (MySqlException)
     {
         throw;
     }
 }
Esempio n. 21
0
        /// <summary>
        /// Méthode permettant de mettre à jour le suivi des plats d'un membre.
        /// </summary>
        /// <param name="listePlats">La liste des plats.</param>
        /// <param name="membre">Le membre correspondant.</param>
        public void Update(IList <Plat> listePlats, Membre membre)
        {
            try
            {
                connexion = new MySqlConnexion();

                string requeteEffacerSuivi = string.Format("DELETE FROM SuiviPlats WHERE idMembre = {0}", membre.IdMembre);
                connexion.Query(requeteEffacerSuivi);

                Insert(listePlats, membre);
            }
            catch (Exception)
            {
                throw;
            }
        }
Esempio n. 22
0
 /// <summary>
 /// Méthode permettant d'associer un don à un membre
 /// </summary>
 /// <param name="membre">Membre envoyant le don</param>
 /// <param name="transaction">Don à insérer dans la base de données</param>
 public void Insert(Membre membre, Don transaction)
 {
     //Appel la méthode qui ne fait qu'insérer le Don dans la bd.
     Insert(transaction);
     //Puis on exécute le code qui rajoutera les données nécessaire dans la table de correspondance DonsMembres pour associé le don au membre.
     try
     {
         connexion = new MySqlConnexion();
         string requete = string.Format("INSERT INTO DonsMembres (idMembre, idDon) VALUES ( (SELECT idMembre FROM Membres WHERE nomUtilisateur = '{0}'), (SELECT idDon FROM Dons WHERE noTransaction = '{1}')) ", membre.NomUtilisateur, transaction.NoTransaction);
         connexion.Query(requete);
     }
     catch (MySqlException)
     {
         throw;
     }
 }
Esempio n. 23
0
        /// <summary>
        /// Méthode permettant d'insérer le suivi des plats d'un membre.
        /// </summary>
        /// <param name="listePlats">La liste des plats.</param>
        /// <param name="membre">Le membre correspondant.</param>
        public void Insert(IList<Plat> listePlats, Membre membre)
        {
            try
            {
                connexion = new MySqlConnexion();

                foreach (Plat plat in listePlats)
                {
                    string requete = string.Format("INSERT INTO SuiviPlats (idMembre, idPlat, estTricherie) VALUES ({0}, {1}, {2})", membre.IdMembre, plat.IdPlat, plat.EstTricherie);
                    connexion.Query(requete);
                }
            }
            catch (Exception)
            {
                throw;
            }
        }
Esempio n. 24
0
        /// <summary>
        /// Méthode permettant d'insérer le suivi des plats d'un membre.
        /// </summary>
        /// <param name="listePlats">La liste des plats.</param>
        /// <param name="membre">Le membre correspondant.</param>
        public void Insert(IList <Plat> listePlats, Membre membre)
        {
            try
            {
                connexion = new MySqlConnexion();

                foreach (Plat plat in listePlats)
                {
                    string requete = string.Format("INSERT INTO SuiviPlats (idMembre, idPlat, estTricherie) VALUES ({0}, {1}, {2})", membre.IdMembre, plat.IdPlat, plat.EstTricherie);
                    connexion.Query(requete);
                }
            }
            catch (Exception)
            {
                throw;
            }
        }
Esempio n. 25
0
        /// <summary>
        /// Méthode permettant de mettre à jour un membre dans la base de données.
        /// </summary>
        /// <param name="membre">L'objet Membre à mettre à jour.</param>
        public void Update(Membre membre)
        {
            try
            {
                //Si stringConnexion est null ou vide, constructeur vide, sinon on utilise le stringConnexion spécifié.
                using (MySqlConnexion connexion = (String.IsNullOrWhiteSpace(stringConnexion)) ? new MySqlConnexion() : new MySqlConnexion(stringConnexion))
                {
                    string requete = string.Format("UPDATE Membres SET nom = '{0}' ,prenom = '{1}', taille = {2}, masse = {3}, dateNaissance = '{4}', nomUtilisateur = '{5}', motPasse = '{6}', estAdmin = {7}, estBanni = {8}, idLangue = (SELECT idLangue FROM Langues WHERE IETF = '{9}'), derniereMaj = CURRENT_TIMESTAMP WHERE idMembre = {10}", membre.Nom, membre.Prenom, membre.Taille, membre.Masse, membre.DateNaissance.ToString("yyyy-MM-dd"), membre.NomUtilisateur, membre.MotPasse, membre.EstAdministrateur, membre.EstBanni, membre.LangueMembre.IETF, membre.IdMembre);

                    connexion.Query(requete);

                    string requeteEffacerRestrictions = string.Format("DELETE FROM RestrictionsAlimentairesMembres WHERE idMembre = {0}", membre.IdMembre);
                    string requeteEffacerObjectifs    = string.Format("DELETE FROM ObjectifsMembres WHERE idMembre = {0}", membre.IdMembre);
                    string requeteEffacerPreferences  = string.Format("DELETE FROM PreferencesMembres WHERE idMembre = {0}", membre.IdMembre);

                    connexion.Query(requeteEffacerRestrictions);
                    connexion.Query(requeteEffacerObjectifs);
                    connexion.Query(requeteEffacerPreferences);

                    // Ajout des restrictions alimentaires du membre.
                    foreach (RestrictionAlimentaire restriction in membre.ListeRestrictions)
                    {
                        requete = string.Format("INSERT INTO RestrictionsAlimentairesMembres (idRestrictionAlimentaire, idMembre) VALUES ({0}, {1})", restriction.IdRestrictionAlimentaire, membre.IdMembre);
                        connexion.Query(requete);
                    }

                    // Ajout des objectifs du membre.
                    foreach (Objectif objectif in membre.ListeObjectifs)
                    {
                        requete = string.Format("INSERT INTO ObjectifsMembres (idObjectif, idMembre) VALUES ({0}, {1})", objectif.IdObjectif, membre.IdMembre);
                        connexion.Query(requete);
                    }

                    // Ajout des préférences du membre.
                    foreach (Preference preference in membre.ListePreferences)
                    {
                        requete = string.Format("INSERT INTO PreferencesMembres (idPreference, idMembre) VALUES ({0}, {1})", preference.IdPreference, membre.IdMembre);
                        connexion.Query(requete);
                    }
                }
            }
            catch (MySqlException)
            {
                throw;
            }
        }
Esempio n. 26
0
        public DateTime LastTimeDon()
        {
            DateTime last = DateTime.MinValue;
            try
            {
                connexion = new MySqlConnexion();
                string requete = " SELECT * FROM LastTimeDon";

                DataSet dataSetDon = connexion.Query(requete);
                DataTable tableDon = dataSetDon.Tables[0];
                if (tableDon.Rows.Count != 0)
                    last = (DateTime)tableDon.Rows[0]["dateDon"];
            }
            catch (MySqlException)
            {
                throw;
            }
            return last;
        }
Esempio n. 27
0
        /// <summary>
        /// Méthode permettant d'insérer un membre dans la base de données.
        /// </summary>
        /// <param name="membre">L'objet Membre a insérer.</param>
        public void Insert(Membre membre)
        {
            try
            {
                if (!String.IsNullOrWhiteSpace(stringConnexion))
                {
                    connexion = new MySqlConnexion(stringConnexion);
                }
                else
                    connexion = new MySqlConnexion();

                string requete = string.Format("INSERT INTO Membres (nom ,prenom, taille, masse, dateNaissance, nomUtilisateur, motPasse, idLangue) VALUES ('{0}', '{1}', {2}, {3}, '{4}', '{5}', '{6}', (SELECT idLangue FROM Langues WHERE IETF = '{7}'))", membre.Nom, membre.Prenom, membre.Taille, membre.Masse, membre.DateNaissance.ToString("yyyy-MM-dd"), membre.NomUtilisateur, membre.MotPasse, membre.LangueMembre.IETF);
                connexion.Query(requete);

                int idMembre = (int)Retrieve(new RetrieveMembreArgs { NomUtilisateur = membre.NomUtilisateur }).IdMembre;

                // Ajout des restrictions alimentaires du membre.
                foreach (RestrictionAlimentaire restriction in membre.ListeRestrictions)
                {
                    requete = string.Format("INSERT INTO RestrictionsAlimentairesMembres (idRestrictionAlimentaire, idMembre) VALUES ({0}, {1})", restriction.IdRestrictionAlimentaire, idMembre);
                    connexion.Query(requete);
                }

                // Ajout des objectifs du membre.
                foreach (Objectif objectif in membre.ListeObjectifs)
                {
                    requete = string.Format("INSERT INTO ObjectifsMembres (idObjectif, idMembre) VALUES ({0}, {1})", objectif.IdObjectif, idMembre);
                    connexion.Query(requete);
                }

                // Ajout des préférences du membre.
                foreach (Preference preference in membre.ListePreferences)
                {
                    requete = string.Format("INSERT INTO PreferencesMembres (idPreference, idMembre) VALUES ({0}, {1})", preference.IdPreference, idMembre);
                    connexion.Query(requete);
                }
            }
            catch (MySqlException)
            {
                throw;
            }
        }
Esempio n. 28
0
        /// <summary>
        /// Méthode permettant d'insérer un menu dans la base de données.
        /// </summary>
        /// <param name="menu">Le menu à insérer.</param>
        public void Insert(Menu menu)
        {
            try
            {
                connexion = new MySqlConnexion();

                string requete = string.Format("INSERT INTO Menus (idMembre, nom, nbPersonnes, dateMenu) VALUES ({0}, '{1}', {2}, '{3}')", App.MembreCourant.IdMembre, menu.Nom, menu.NbPersonnes, menu.DateCreation.ToString("yyyy-MM-dd"));
                connexion.Query(requete);

                foreach(Plat platCourant in menu.ListePlats)
                {
                    requete = string.Format("INSERT INTO MenusPlats (idMenu, idPlat) VALUES ({0}, {1})", Retrieve(new RetrieveMenuArgs { IdMembre = App.MembreCourant.IdMembre, Nom = menu.Nom }).IdMenu, platCourant.IdPlat);
                    connexion.Query(requete);
                }
            }
            catch(MySqlException)
            {
                throw;
            }
        }
        public VersionLogiciel RetrieveLatest()
        {
            try
            {
                VersionLogiciel latestVersion;
                connexion = new MySqlConnexion();
                string requete = "SELECT * FROM CurrentVersion";

                DataSet dataSetVersionsLogiciel = connexion.Query(requete);
                DataTable tableVersionsLogiciel = dataSetVersionsLogiciel.Tables[0];

                latestVersion = ConstruireVersionLogiciel(tableVersionsLogiciel.Rows[0]);
                return latestVersion;
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
                return new VersionLogiciel("0.0.0.0", "Empty", "Empty", DateTime.MinValue);
            }
        }
Esempio n. 30
0
        /// <summary>
        /// Méthode qui récupère la VersionLogiciel la plus récente de la base de données à partir d'une VIEW
        /// </summary>
        /// <returns></returns>
        public VersionLogiciel RetrieveLatest()
        {
            try
            {
                VersionLogiciel latestVersion;
                connexion = new MySqlConnexion();
                string requete = "SELECT * FROM CurrentVersion";

                DataSet   dataSetVersionsLogiciel = connexion.Query(requete);
                DataTable tableVersionsLogiciel   = dataSetVersionsLogiciel.Tables[0];

                latestVersion = ConstruireVersionLogiciel(tableVersionsLogiciel.Rows[0]);
                return(latestVersion);
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
                return(new VersionLogiciel("0.0.0.0", "Empty", "Empty", DateTime.MinValue));
            }
        }
Esempio n. 31
0
        /// <summary>
        /// Méthode permettant d'insérer un membre dans la base de données.
        /// </summary>
        /// <param name="membre">L'objet Membre a insérer.</param>
        public void Insert(Membre membre)
        {
            try
            {
                //Si stringConnexion est null ou vide, constructeur vide, sinon on utilise le stringConnexion spécifié.
                using (MySqlConnexion connexion = (String.IsNullOrWhiteSpace(stringConnexion)) ? new MySqlConnexion() : new MySqlConnexion(stringConnexion))
                {
                    string requete = string.Format("INSERT INTO Membres (nom ,prenom, taille, masse, dateNaissance, nomUtilisateur, motPasse, idLangue) VALUES ('{0}', '{1}', {2}, {3}, '{4}', '{5}', '{6}', (SELECT idLangue FROM Langues WHERE IETF = '{7}'))", membre.Nom, membre.Prenom, membre.Taille, membre.Masse, membre.DateNaissance.ToString("yyyy-MM-dd"), membre.NomUtilisateur, membre.MotPasse, membre.LangueMembre.IETF);
                    connexion.Query(requete);

                    int idMembre = (int)Retrieve(new RetrieveMembreArgs {
                        NomUtilisateur = membre.NomUtilisateur
                    }).IdMembre;

                    // Ajout des restrictions alimentaires du membre.
                    foreach (RestrictionAlimentaire restriction in membre.ListeRestrictions)
                    {
                        requete = string.Format("INSERT INTO RestrictionsAlimentairesMembres (idRestrictionAlimentaire, idMembre) VALUES ({0}, {1})", restriction.IdRestrictionAlimentaire, idMembre);
                        connexion.Query(requete);
                    }

                    // Ajout des objectifs du membre.
                    foreach (Objectif objectif in membre.ListeObjectifs)
                    {
                        requete = string.Format("INSERT INTO ObjectifsMembres (idObjectif, idMembre) VALUES ({0}, {1})", objectif.IdObjectif, idMembre);
                        connexion.Query(requete);
                    }

                    // Ajout des préférences du membre.
                    foreach (Preference preference in membre.ListePreferences)
                    {
                        requete = string.Format("INSERT INTO PreferencesMembres (idPreference, idMembre) VALUES ({0}, {1})", preference.IdPreference, idMembre);
                        connexion.Query(requete);
                    }
                }
            }
            catch (MySqlException)
            {
                throw;
            }
        }
Esempio n. 32
0
        /// <summary>
        /// Méthode permettant d'obtenir un ensemble de menus sauvegardé dans la base de données.
        /// </summary>
        /// <param name="args">Les arguments permettant de retrouver les menus.</param>
        /// <returns>Une liste contenant les menus.</returns>
        public IList <Menu> RetrieveSome(RetrieveMenuArgs args)
        {
            IList <Menu> resultat = new List <Menu>();

            try
            {
                connexion = new MySqlConnexion();

                string requete = string.Format("SELECT * FROM Menus WHERE idMembre = {0}", args.IdMembre);

                DataSet   dataSetMenus = connexion.Query(requete);
                DataTable tableMenus   = dataSetMenus.Tables[0];

                foreach (DataRow rowMenu in tableMenus.Rows)
                {
                    Menu menu = ConstruireMenu(rowMenu);

                    // Ajout des plats du menu.
                    requete = string.Format("SELECT * FROM MenusPlats WHERE idMenu = {0}", menu.IdMenu);

                    DataSet   dataSetPlats = connexion.Query(requete);
                    DataTable tablePlats   = dataSetPlats.Tables[0];

                    foreach (DataRow rowPlat in tablePlats.Rows)
                    {
                        menu.ListePlats.Add(platService.Retrieve(new RetrievePlatArgs {
                            IdPlat = (int)rowPlat["idPlat"]
                        }));
                    }

                    resultat.Add(menu);
                }
            }
            catch (MySqlException)
            {
                throw;
            }

            return(resultat);
        }
Esempio n. 33
0
        /// <summary>
        /// Méthode permettant d'obtenir un objectif sauvegardé dans la base de données.
        /// </summary>
        /// <param name="args">Les arguments permettant de retrouver l'objectif.</param>
        /// <returns>Un objet Objectif.</returns>
        public Objectif Retrieve(RetrieveObjectifArgs args)
        {
            Objectif objectif;

            try
            {
                connexion = new MySqlConnexion();

                string requete = string.Format("SELECT * FROM Objectifs WHERE idObjectif = {0}", args.IdObjectif);

                DataSet   dataSet = connexion.Query(requete);
                DataTable table   = dataSet.Tables[0];

                objectif = ConstruireObjectif(table.Rows[0]);
            }
            catch (Exception)
            {
                throw;
            }

            return(objectif);
        }
Esempio n. 34
0
        /// <summary>
        /// Méthode appelant une VIEW pour obtenir le DateTime du don le plus récents dans la base de données
        /// </summary>
        /// <returns></returns>
        public DateTime LastTimeDon()
        {
            DateTime last = DateTime.MinValue;

            try
            {
                connexion = new MySqlConnexion();
                string requete = " SELECT * FROM LastTimeDon";

                DataSet   dataSetDon = connexion.Query(requete);
                DataTable tableDon   = dataSetDon.Tables[0];
                if (!tableDon.Rows[0].IsNull("derniereMaj"))
                {
                    last = (DateTime)tableDon.Rows[0]["derniereMaj"];
                }
            }
            catch (MySqlException)
            {
                throw;
            }
            return(last);
        }
Esempio n. 35
0
        /// <summary>
        /// Méthode permettant d'insérer un menu dans la base de données.
        /// </summary>
        /// <param name="menu">Le menu à insérer.</param>
        public void Insert(Menu menu)
        {
            try
            {
                connexion = new MySqlConnexion();

                string requete = string.Format("INSERT INTO Menus (idMembre, nom, nbPersonnes, dateMenu) VALUES ({0}, '{1}', {2}, '{3}')", App.MembreCourant.IdMembre, menu.Nom, menu.NbPersonnes, menu.DateCreation.ToString("yyyy-MM-dd"));
                connexion.Query(requete);

                foreach (Plat platCourant in menu.ListePlats)
                {
                    requete = string.Format("INSERT INTO MenusPlats (idMenu, idPlat) VALUES ({0}, {1})", Retrieve(new RetrieveMenuArgs {
                        IdMembre = App.MembreCourant.IdMembre, Nom = menu.Nom
                    }).IdMenu, platCourant.IdPlat);
                    connexion.Query(requete);
                }
            }
            catch (MySqlException)
            {
                throw;
            }
        }
Esempio n. 36
0
        /// <summary>
        /// Méthode permettant d'obtenir une préférence sauvegardé dans la base de données.
        /// </summary>
        /// <param name="args">Les arguments permettant de retrouver la préférence.</param>
        /// <returns>Un objet Preference.</returns>
        public Preference Retrieve(RetrievePreferenceArgs args)
        {
            Preference preference;

            try
            {
                connexion = new MySqlConnexion();

                string requete = string.Format("SELECT * FROM Preferences WHERE idPreference = {0}", args.IdPreference);

                DataSet   dataSet = connexion.Query(requete);
                DataTable table   = dataSet.Tables[0];

                preference = ConstruirePreference(table.Rows[0]);
            }
            catch (Exception)
            {
                throw;
            }

            return(preference);
        }
Esempio n. 37
0
        /// <summary>
        /// Insertion d'une valeur nutritionnelle dans la table de correspondance "AlimentsValeursNutritionnelles".
        /// </summary>
        /// <param name="idValeur">l'id de la valeur nutritionnelle.</param>
        /// <param name="idAliment">L'id de l'aliment correspondant.</param>
        /// <param name="valeur">La valeur nutritionnelle.</param>
        private void Inserer_Valeur_Nutritionnelle(int idValeur, int idAliment, double valeur)
        {
            try
            {
                using (MySqlConnexion connexion = new MySqlConnexion())
                {
                    string uneValeur = valeur.ToString();

                    if (uneValeur.Contains(","))
                    {
                        uneValeur = uneValeur.Replace(",", ".");
                    }

                    string requeteInsert = string.Format("INSERT INTO AlimentsValeursNutritionnelles (idAliment ,idValeurNutritionnelle, quantite) VALUES ({0}, {1}, {2})", idAliment, idValeur, uneValeur);
                    connexion.Query(requeteInsert);
                }
            }
            catch (Exception)
            {
                throw;
            }
        }
        /// <summary>
        /// Méthode permettant d'obtenir une restriction alimentaire de la base de données.
        /// </summary>
        /// <param name="args">Les arguments permettant de récupérer la restriction alimentaire.</param>
        /// <returns>Un objet RestrictionAlimentaire.</returns>
        public RestrictionAlimentaire Retrieve(RetrieveRestrictionAlimentaireArgs args)
        {
            RestrictionAlimentaire restrictionAlimentaire;

            try
            {
                connexion = new MySqlConnexion();

                string requete = string.Format("SELECT * FROM RestrictionsAlimentaires WHERE idRestrictionAlimentaire = {0}", args.IdRestrictionAlimentaire);

                DataSet   dataSet = connexion.Query(requete);
                DataTable table   = dataSet.Tables[0];

                restrictionAlimentaire = ConstruireRestrictionAlimentaire(table.Rows[0]);
            }
            catch (Exception)
            {
                throw;
            }

            return(restrictionAlimentaire);
        }
Esempio n. 39
0
        /// <summary>
        /// Méthode permettant d'obtenir un menu sauvegardé dans la base de données.
        /// </summary>
        /// <param name="args">Les arguments permettant de retrouver le menu.</param>
        /// <returns>Un objet Menu.</returns>
        public Menu Retrieve(RetrieveMenuArgs args)
        {
            Menu menu = new Menu();

            try
            {
                connexion = new MySqlConnexion();

                string requete = string.Format("SELECT * FROM Menus WHERE idMembre = {0} && Nom = '{1}'", args.IdMembre, args.Nom);

                DataSet   dataSetMenus = connexion.Query(requete);
                DataTable tableMenus   = dataSetMenus.Tables[0];

                if (tableMenus.Rows.Count != 0)
                {
                    menu = ConstruireMenu(tableMenus.Rows[0]);

                    // Ajout des plats du menu.
                    requete = string.Format("SELECT * FROM MenusPlats WHERE idMenu = {0}", menu.IdMenu);

                    DataSet   dataSetPlats = connexion.Query(requete);
                    DataTable tablePlats   = dataSetPlats.Tables[0];

                    foreach (DataRow rowPlat in tablePlats.Rows)
                    {
                        menu.ListePlats.Add(platService.Retrieve(new RetrievePlatArgs {
                            IdPlat = (int)rowPlat["idPlat"]
                        }));
                    }
                }
            }
            catch (MySqlException)
            {
                throw;
            }

            return(menu);
        }
Esempio n. 40
0
        public IList<Transaction> RetrieveAll()
        {
            IList<Transaction> resultat = new List<Transaction>();

            try
            {
                connexion = new MySqlConnexion();
                string requete = "SELECT * FROM AllDons";

                DataSet dataSetDon = connexion.Query(requete);
                DataTable tableDon = dataSetDon.Tables[0];

                foreach (DataRow don in tableDon.Rows)
                {
                    resultat.Add(ConstruireDon(don));
                }
            }
            catch (MySqlException)
            {
                throw;
            }
            return resultat;
        }
Esempio n. 41
0
        /// <summary>
        /// Méthode permettant d'obtenir une préférence sauvegardé dans la base de données.
        /// </summary>
        /// <param name="args">Les arguments permettant de retrouver la préférence.</param>
        /// <returns>Un objet Preference.</returns>
        public Preference Retrieve(RetrievePreferenceArgs args)
        {
            Preference preference;

            try
            {
                connexion = new MySqlConnexion();

                string requete = string.Format("SELECT * FROM Preferences WHERE idPreference = {0}", args.IdPreference);

                DataSet dataSet = connexion.Query(requete);
                DataTable table = dataSet.Tables[0];

                preference = ConstruirePreference(table.Rows[0]);

            }
            catch (Exception)
            {
                throw;
            }

            return preference;
        }
Esempio n. 42
0
        /// <summary>
        /// Méthode permettant d'obtenir un objectif sauvegardé dans la base de données.
        /// </summary>
        /// <param name="args">Les arguments permettant de retrouver l'objectif.</param>
        /// <returns>Un objet Objectif.</returns>
        public Objectif Retrieve(RetrieveObjectifArgs args)
        {
            Objectif objectif;

            try
            {
                connexion = new MySqlConnexion();

                string requete = string.Format("SELECT * FROM Objectifs WHERE idObjectif = {0}", args.IdObjectif);

                DataSet dataSet = connexion.Query(requete);
                DataTable table = dataSet.Tables[0];

                objectif = ConstruireObjectif(table.Rows[0]);

            }
            catch (Exception)
            {
                throw;
            }

            return objectif;
        }
        /// <summary>
        /// Méthode permettant d'obtenir une restriction alimentaire de la base de données.
        /// </summary>
        /// <param name="args">Les arguments permettant de récupérer la restriction alimentaire.</param>
        /// <returns>Un objet RestrictionAlimentaire.</returns>
        public RestrictionAlimentaire Retrieve(RetrieveRestrictionAlimentaireArgs args)
        {
            RestrictionAlimentaire restrictionAlimentaire;

            try
            {
                connexion = new MySqlConnexion();

                string requete = string.Format("SELECT * FROM RestrictionsAlimentaires WHERE idRestrictionAlimentaire = {0}", args.IdRestrictionAlimentaire);

                DataSet dataSet = connexion.Query(requete);
                DataTable table = dataSet.Tables[0];

                restrictionAlimentaire = ConstruireRestrictionAlimentaire(table.Rows[0]);

            }
            catch (Exception)
            {
                throw;
            }

            return restrictionAlimentaire;
        }
Esempio n. 44
0
        /// <summary>
        /// Méthode qui récupère tout les dons contenu dans la base de données
        /// </summary>
        /// <returns>IList de tout les dons</returns>
        public IList <Don> RetrieveAll()
        {
            IList <Don> resultat = new List <Don>();

            try
            {
                connexion = new MySqlConnexion();
                string requete = "SELECT * FROM AllDons";

                DataSet   dataSetDon = connexion.Query(requete);
                DataTable tableDon   = dataSetDon.Tables[0];

                foreach (DataRow don in tableDon.Rows)
                {
                    resultat.Add(ConstruireDon(don));
                }
            }
            catch (MySqlException)
            {
                throw;
            }
            return(resultat);
        }
Esempio n. 45
0
        /// <summary>
        /// Méthode permettant d'obtenir la date de la dernière modification d'un plat dans la base de données.
        /// </summary>
        /// <returns>Un objet DateTime.</returns>
        public DateTime LastUpdatedTime()
        {
            DateTime time;

            try
            {
                using (MySqlConnexion connexion = new MySqlConnexion())
                {
                    string requete = "SELECT * FROM LastModifiedPlat";
                    using (DataSet dataSetLastUpdatedTime = connexion.Query(requete))
                        using (DataTable tableLastUpdatedTime = dataSetLastUpdatedTime.Tables[0])
                        {
                            time = (DateTime)tableLastUpdatedTime.Rows[0]["derniereMaj"];
                        }
                }
            }

            catch (MySqlException)
            {
                throw;
            }
            return(time);
        }
Esempio n. 46
0
        /// <summary>
        /// Méthode permettant d'obtenir l'ensemble des aliments sauvegardés dans la base de données.
        /// </summary>
        /// <returns>Une liste contenant les aliments.</returns>
        public IList <Aliment> RetrieveAll()
        {
            IList <Aliment> resultat = new List <Aliment>();
            string          requete  = "SELECT * FROM Aliments a INNER JOIN CategoriesAlimentaires ca ON ca.idCategorieAlimentaire = a.idCategorieAlimentaire INNER JOIN UnitesMesure um ON um.idUniteMesure = a.idUniteMesure ORDER BY a.nom asc";

            try
            {
                using (MySqlConnexion connexion = new MySqlConnexion())
                    using (DataSet dataSetAliments = connexion.Query(requete))
                        using (DataTable tableAliments = dataSetAliments.Tables[0])
                        {
                            foreach (DataRow rowAliment in tableAliments.Rows)
                            {
                                requete = string.Format("SELECT quantite, valeurNutritionnelle FROM AlimentsValeursNutritionnelles avn INNER JOIN ValeursNutritionnelles vn ON avn.idValeurNutritionnelle = vn.idValeurNutritionnelle WHERE idAliment = {0}", (int)rowAliment["idAliment"]);

                                using (DataSet dataSetAlimentsValeursNut = connexion.Query(requete))
                                    using (DataTable tableAlimentsValeursNut = dataSetAlimentsValeursNut.Tables[0])
                                    {
                                        Dictionary <string, double> valeurNut = new Dictionary <string, double>();

                                        foreach (DataRow rowAlimentValeurNut in tableAlimentsValeursNut.Rows)
                                        {
                                            valeurNut.Add((string)rowAlimentValeurNut["valeurNutritionnelle"], (double)rowAlimentValeurNut["quantite"]);
                                        }

                                        resultat.Add(ConstruireAliment(rowAliment, valeurNut));
                                    }
                            }
                        }
            }
            catch (Exception)
            {
                throw;
            }

            return(resultat);
        }
Esempio n. 47
0
        /// <summary>
        /// Méthode permettant d'obtenir un menu sauvegardé dans la base de données.
        /// </summary>
        /// <param name="args">Les arguments permettant de retrouver le menu.</param>
        /// <returns>Un objet Menu.</returns>
        public Menu Retrieve(RetrieveMenuArgs args)
        {
            Menu menu = new Menu();

            try
            {
                connexion = new MySqlConnexion();

                string requete = string.Format("SELECT * FROM Menus WHERE idMembre = {0} && Nom = '{1}'", args.IdMembre, args.Nom);

                DataSet dataSetMenus = connexion.Query(requete);
                DataTable tableMenus = dataSetMenus.Tables[0];

                if(tableMenus.Rows.Count != 0)
                {
                    menu = ConstruireMenu(tableMenus.Rows[0]);

                    // Ajout des plats du menu.
                    requete = string.Format("SELECT * FROM MenusPlats WHERE idMenu = {0}", menu.IdMenu);

                    DataSet dataSetPlats = connexion.Query(requete);
                    DataTable tablePlats = dataSetPlats.Tables[0];

                    foreach (DataRow rowPlat in tablePlats.Rows)
                    {
                        menu.ListePlats.Add(platService.Retrieve(new RetrievePlatArgs { IdPlat = (int)rowPlat["idPlat"] }));
                    }
                }
            }
            catch (MySqlException)
            {
                throw;
            }

            return menu;
        }
Esempio n. 48
0
        /// <summary>
        /// Méthode permettant d'obtenir l'objet Langue à partir du idLangue associé au Membre.
        /// </summary>
        /// <param name="id">idLangue que nous cherchons.</param>
        /// <returns>Un objet Langue.</returns>
        private Langue LangueFromId(int id)
        {
            Langue langue;

            try
            {
                //Si stringConnexion est null ou vide, constructeur vide, sinon on utilise le stringConnexion spécifié.
                using (MySqlConnexion connexion = (String.IsNullOrWhiteSpace(stringConnexion)) ? new MySqlConnexion() : new MySqlConnexion(stringConnexion))
                {
                    string requete = string.Format("SELECT IETF FROM Langues WHERE idLangue = {0}", id);
                    using (DataSet dataSetLangue = connexion.Query(requete))
                        using (DataTable tableLangue = dataSetLangue.Tables[0])
                        {
                            //Utilise la méthode LangueFromIETF de la classe Langue pour obtenir l'objet Langue à partir d'un string du tag IETF ("fr-CA").
                            langue = Langue.LangueFromIETF(tableLangue.Rows[0]["IETF"].ToString());
                        }
                }
            }
            catch (MySqlException)
            {
                throw;
            }
            return(langue);
        }
Esempio n. 49
0
        public DateTime LastUpdatedTime()
        {
            DateTime time;
            try
            {
                if (!String.IsNullOrWhiteSpace(stringConnexion))
                {
                    connexion = new MySqlConnexion(stringConnexion);
                }
                else
                    connexion = new MySqlConnexion();

                string requete = "SELECT * FROM LastModifiedMember";
                using (DataSet dataSetLastUpdatedTime = connexion.Query(requete))
                {
                    using (DataTable tableLastUpdatedTime = dataSetLastUpdatedTime.Tables[0])
                    {
                        time = (DateTime)tableLastUpdatedTime.Rows[0]["derniereMaj"];
                    }
                }
            }

            catch (MySqlException)
            {
                throw;
            }
            return time;
        }
Esempio n. 50
0
        private Langue LangueFromId(int id)
        {
            Langue langue;
            try
            {
                if (!String.IsNullOrWhiteSpace(stringConnexion))
                {
                    connexion = new MySqlConnexion(stringConnexion);
                }
                else
                    connexion = new MySqlConnexion();

                string requete = string.Format("SELECT IETF FROM Langues WHERE idLangue = {0}", id);
                using (DataSet dataSetLangue = connexion.Query(requete))
                {
                    using (DataTable tableLangue = dataSetLangue.Tables[0])
                    {
                        langue = Langue.LangueFromIETF(tableLangue.Rows[0]["IETF"].ToString());
                    }
                }
            }
            catch (MySqlException)
            {
                throw;
            }
            return langue;
        }
Esempio n. 51
0
        /// <summary>
        /// Méthode permettant de mettre à jour un membre dans la base de données.
        /// </summary>
        /// <param name="membre">L'objet Membre à mettre à jour.</param>
        public void Update(Membre membre)
        {
            try
            {
                if (!String.IsNullOrWhiteSpace(stringConnexion))
                {
                    connexion = new MySqlConnexion(stringConnexion);
                }
                else
                    connexion = new MySqlConnexion();

                string requete = string.Format("UPDATE Membres SET nom = '{0}' ,prenom = '{1}', taille = {2}, masse = {3}, dateNaissance = '{4}', nomUtilisateur = '{5}', motPasse = '{6}', estAdmin = {7}, estBanni = {8}, idLangue = (SELECT idLangue FROM Langues WHERE IETF = '{9}') WHERE idMembre = {10}", membre.Nom, membre.Prenom, membre.Taille, membre.Masse, membre.DateNaissance.ToString("yyyy-MM-dd"), membre.NomUtilisateur, membre.MotPasse, membre.EstAdministrateur, membre.EstBanni, membre.LangueMembre.IETF, membre.IdMembre);

                connexion.Query(requete);

                string requeteEffacerRestrictions = string.Format("DELETE FROM RestrictionsAlimentairesMembres WHERE idMembre = {0}", membre.IdMembre);
                string requeteEffacerObjectifs = string.Format("DELETE FROM ObjectifsMembres WHERE idMembre = {0}", membre.IdMembre);
                string requeteEffacerPreferences = string.Format("DELETE FROM PreferencesMembres WHERE idMembre = {0}", membre.IdMembre);

                connexion.Query(requeteEffacerRestrictions);
                connexion.Query(requeteEffacerObjectifs);
                connexion.Query(requeteEffacerPreferences);

                // Ajout des restrictions alimentaires du membre.
                foreach (RestrictionAlimentaire restriction in membre.ListeRestrictions)
                {
                    requete = string.Format("INSERT INTO RestrictionsAlimentairesMembres (idRestrictionAlimentaire, idMembre) VALUES ({0}, {1})", restriction.IdRestrictionAlimentaire, membre.IdMembre);
                    connexion.Query(requete);
                }

                // Ajout des objectifs du membre.
                foreach (Objectif objectif in membre.ListeObjectifs)
                {
                    requete = string.Format("INSERT INTO ObjectifsMembres (idObjectif, idMembre) VALUES ({0}, {1})", objectif.IdObjectif, membre.IdMembre);
                    connexion.Query(requete);
                }

                // Ajout des préférences du membre.
                foreach (Preference preference in membre.ListePreferences)
                {
                    requete = string.Format("INSERT INTO PreferencesMembres (idPreference, idMembre) VALUES ({0}, {1})", preference.IdPreference, membre.IdMembre);
                    connexion.Query(requete);
                }
            }
            catch (MySqlException)
            {
                throw;
            }
        }
Esempio n. 52
0
        /// <summary>
        /// Méthode permettant d'obtenir l'ensemble des membres sauvegardés dans la base de données.
        /// </summary>
        /// <returns>Une liste contenant les membres.</returns>
        public IList<Membre> RetrieveAll()
        {
            IList<Membre> resultat = new List<Membre>();

            try
            {
                if (!String.IsNullOrWhiteSpace(stringConnexion))
                {
                    connexion = new MySqlConnexion(stringConnexion);
                }
                else
                    connexion = new MySqlConnexion();
                string requete = "SELECT * FROM Membres";

                DataSet dataSetMembres = connexion.Query(requete);
                DataTable tableMembres = dataSetMembres.Tables[0];

                // Construction de chaque objet Membre.
                foreach (DataRow rowMembre in tableMembres.Rows)
                {
                    Membre membre = ConstruireMembre(rowMembre);

                    membre.LangueMembre = LangueFromId((int)rowMembre["idLangue"]);

                    // Ajout des restrictions alimentaires du membre.
                    requete = string.Format("SELECT idRestrictionAlimentaire FROM RestrictionsAlimentairesMembres WHERE idMembre = {0}", membre.IdMembre);

                    DataSet dataSetRestrictions = connexion.Query(requete);
                    DataTable tableRestrictions = dataSetRestrictions.Tables[0];

                    foreach (DataRow rowRestriction in tableRestrictions.Rows)
                    {
                        membre.ListeRestrictions.Add(restrictionAlimentaireService.Retrieve(new RetrieveRestrictionAlimentaireArgs { IdRestrictionAlimentaire = (int)rowRestriction["idRestrictionAlimentaire"] }));
                    }

                    // Ajout des objectifs du membre.
                    requete = string.Format("SELECT idObjectif FROM ObjectifsMembres WHERE idMembre = {0}", membre.IdMembre);

                    DataSet dataSetObjectifs = connexion.Query(requete);
                    DataTable tableObjectifs = dataSetObjectifs.Tables[0];

                    foreach (DataRow rowObjectif in tableObjectifs.Rows)
                    {
                        membre.ListeObjectifs.Add(objectifService.Retrieve(new RetrieveObjectifArgs { IdObjectif = (int)rowObjectif["idObjectif"] }));
                    }

                    // Ajout des préférences du membre.
                    requete = string.Format("SELECT idPreference FROM PreferencesMembres WHERE idMembre = {0}", membre.IdMembre);

                    DataSet dataSetPreferences = connexion.Query(requete);
                    DataTable tablePreferences = dataSetPreferences.Tables[0];

                    foreach (DataRow rowPreference in tablePreferences.Rows)
                    {
                        membre.ListePreferences.Add(preferenceService.Retrieve(new RetrievePreferenceArgs { IdPreference = (int)rowPreference["idPreference"] }));
                    }

                    membre.ListeMenus = menuService.RetrieveSome(new RetrieveMenuArgs { IdMembre = (int)membre.IdMembre });

                    resultat.Add(membre);

                }

            }
            catch (MySqlException)
            {
                throw;
            }

            return resultat;
        }
Esempio n. 53
0
        /// <summary>
        /// Méthode permettant d'obtenir un aliment sauvegardé dans la base de données.
        /// </summary>
        /// <param name="args">Les arguments permettant de retrouver l'aliment.</param>
        /// <returns>Un objet Aliment.</returns>
        public Aliment Retrieve(RetrieveAlimentArgs args)
        {
            Aliment aliment;

            try
            {
                connexion = new MySqlConnexion();

                string requete = string.Format("SELECT * FROM Aliments a INNER JOIN CategoriesAlimentaires ca ON ca.idCategorieAlimentaire = a.idCategorieAlimentaire INNER JOIN UnitesMesure um ON um.idUniteMesure = a.idUniteMesure WHERE idAliment = {0}", args.IdAliment);

                DataSet dataSetAliments = connexion.Query(requete);
                DataTable tableAliments = dataSetAliments.Tables[0];

                DataRow rowAliment = tableAliments.Rows[0];

                requete = string.Format("SELECT quantite, valeurNutritionnelle FROM AlimentsValeursNutritionnelles avn INNER JOIN ValeursNutritionnelles vn ON avn.idValeurNutritionnelle = vn.idValeurNutritionnelle WHERE idAliment = {0}", (int)rowAliment["idAliment"]);

                DataSet dataSetAlimentsValeursNut = connexion.Query(requete);
                DataTable tableAlimentsValeursNut = dataSetAlimentsValeursNut.Tables[0];

                Dictionary<string, double> valeurNut = new Dictionary<string, double>();

                foreach (DataRow rowAlimentValeurNut in tableAlimentsValeursNut.Rows)
                {
                    valeurNut.Add((string)rowAlimentValeurNut["valeurNutritionnelle"], (double)rowAlimentValeurNut["quantite"]);
                }

                aliment = ConstruireAliment(rowAliment, valeurNut);

            }
            catch (Exception)
            {
                throw;
            }

            return aliment;
        }
Esempio n. 54
0
        /// <summary>
        /// Méthode permettant de mettre à jour un plat dans la base de données.
        /// </summary>
        /// <param name="plat">Le plat à mettre à jour.</param>
        public void UpdateVote(Plat plat)
        {
            try
            {
                connexion = new MySqlConnexion();

                // Obtenir le idTypePlat.
                string requete = string.Format("SELECT idTypePlat FROM TypesPlats WHERE typePlat = '{0}'", plat.TypePlat);

                DataSet dataSetType = connexion.Query(requete);
                DataTable tableType = dataSetType.Tables[0];
                int idTypePlat = (int)(tableType.Rows[0]["idTypePlat"]);

                string note = plat.Note.ToString();

                if (note.Contains(","))
                {
                    note = note.Replace(",", ".");
                }

                requete = string.Format("UPDATE Plats SET idTypePlat = {0}, nom = '{1}', imageUrl = '{2}', note = {3}, nbVotes = {4} WHERE idPlat = {5}", idTypePlat, plat.Nom.Replace("'", "''"), plat.ImageUrl, note, plat.NbVotes, plat.IdPlat);
                connexion.Query(requete);
            }
            catch (Exception)
            {
                throw;
            }
        }
Esempio n. 55
0
        /// <summary>
        /// Méthode permettant d'obtenir un ensemble de plats sauvegardé dans la base de données.
        /// </summary>
        /// <param name="args">Les arguments permettant de retrouver les plats.</param>
        /// <returns>Une liste contenant les plats.</returns>
        public IList<Plat> RetrieveSome(RetrievePlatArgs args)
        {
            List<Plat> resultat = new List<Plat>();

            try
            {
                connexion = new MySqlConnexion();

                string requete = "SELECT * FROM Plats p INNER JOIN TypesPlats tp ON tp.idTypePlat = p.idTypePlat INNER JOIN Membres m ON m.idMembre = p.idMembre";

                if (args.Categorie != null && args.Categorie != string.Empty)
                {
                    requete += string.Format(" WHERE typePlat = '{0}'", args.Categorie);
                }

                if (args.NbResultats != null)
                {
                    if (args.PlusPopulaires == true)
                    {
                        requete += " ORDER BY note DESC ";
                    }
                    else if (args.PlusPopulaires == false)
                    {
                        requete += " ORDER BY note ASC ";
                    }
                    else if (args.PlusPopulaires == null)
                    {
                        if (args.Depart != null && args.Depart != string.Empty)
                        {
                            requete += " ORDER BY idPlat ";

                            if (args.Depart == "Fin")
                            {
                                requete += "DESC";
                            }
                            else
                            {
                                requete += "ASC";
                            }
                        }
                    }

                    requete += string.Format(" LIMIT {0} ", args.NbResultats);

                }

                DataSet dataSetPlats = connexion.Query(requete);
                DataTable tablePlats = dataSetPlats.Tables[0];

                foreach (DataRow rowPlat in tablePlats.Rows)
                {
                    Plat plat = ConstruirePlat(rowPlat);

                    plat.ListeIngredients = RetrieveAlimentsPlat(new RetrievePlatArgs { IdPlat = plat.IdPlat });

                    resultat.Add(plat);
                }
            }
            catch (Exception)
            {
                throw;
            }

            return resultat;
        }
Esempio n. 56
0
        /// <summary>
        /// Méthode permettant d'obtenir l'ensemble des plats sauvegardé dans la base de données.
        /// </summary>
        /// <returns>Une liste contenant les plats.</returns>
        public IList<Plat> RetrieveAll()
        {
            List<Plat> resultat = new List<Plat>();

            try
            {
                connexion = new MySqlConnexion();

                string requete = "SELECT * FROM Plats p INNER JOIN TypesPlats tp ON tp.idTypePlat = p.idTypePlat INNER JOIN Membres m ON m.idMembre = p.idMembre";

                DataSet dataSetPlats = connexion.Query(requete);
                DataTable tablePlats = dataSetPlats.Tables[0];

                foreach (DataRow rowPlat in tablePlats.Rows)
                {
                    Plat plat = ConstruirePlat(rowPlat);

                    plat.ListeIngredients = RetrieveAlimentsPlat(new RetrievePlatArgs { IdPlat = plat.IdPlat });

                    resultat.Add(plat);
                }
            }
            catch (Exception)
            {
                throw;
            }

            return resultat;
        }
Esempio n. 57
0
        /// <summary>
        /// Méthode permettant d'obtenir un plat sauvegardé dans la base de données.
        /// </summary>
        /// <param name="args">Les arguments permettant de retrouver le plat.</param>
        /// <returns>Un objet Plat.</returns>
        public Plat Retrieve(RetrievePlatArgs args)
        {
            Plat plat;

            try
            {
                connexion = new MySqlConnexion();
                string requete = string.Format("SELECT * FROM Plats p INNER JOIN TypesPlats tp ON tp.idTypePlat = p.idTypePlat INNER JOIN Membres m ON m.idMembre = p.idMembre WHERE idPlat = '{0}'", args.IdPlat);

                DataSet dataSetPlats = connexion.Query(requete);
                DataTable tablePlats = dataSetPlats.Tables[0];

                plat = ConstruirePlat(tablePlats.Rows[0]);

                plat.ListeIngredients = RetrieveAlimentsPlat(new RetrievePlatArgs { IdPlat = plat.IdPlat });

            }
            catch (Exception)
            {
                throw;
            }

            return plat;
        }
Esempio n. 58
0
        /// <summary>
        /// Méthode permettant d'obtenir un membre sauvegardé dans la base de données.
        /// </summary>
        /// <param name="args">Les arguments permettant de retrouver le membre.</param>
        /// <returns>Un objet Membre.</returns>
        public Membre Retrieve(RetrieveMembreArgs args)
        {
            Membre membre = new Membre();

            try
            {
                if (!String.IsNullOrWhiteSpace(stringConnexion))
                {
                    connexion = new MySqlConnexion(stringConnexion);
                }
                else
                    connexion = new MySqlConnexion();

                string requete = string.Format("SELECT * FROM Membres WHERE idMembre = {0}", args.IdMembre);

                if (args.NomUtilisateur != null && args.NomUtilisateur != string.Empty)
                {
                    requete = string.Format("SELECT * FROM Membres WHERE nomUtilisateur = '{0}'", args.NomUtilisateur);
                }

                using (DataSet dataSetMembres = connexion.Query(requete))
                {
                    using (DataTable tableMembres = dataSetMembres.Tables[0])
                    {
                        // Construction de l'objet Membre.
                        if (tableMembres.Rows.Count != 0)
                        {
                            membre = ConstruireMembre(tableMembres.Rows[0]);

                            membre.LangueMembre = LangueFromId((int)tableMembres.Rows[0]["idLangue"]);

                            // Ajout des restrictions alimentaires du membre.
                            requete = string.Format("SELECT idRestrictionAlimentaire FROM RestrictionsAlimentairesMembres WHERE idMembre = {0}", membre.IdMembre);

                            using (DataSet dataSetRestrictions = connexion.Query(requete))
                            {
                                using (DataTable tableRestrictions = dataSetRestrictions.Tables[0])
                                {

                                    foreach (DataRow rowRestriction in tableRestrictions.Rows)
                                    {
                                        membre.ListeRestrictions.Add(restrictionAlimentaireService.Retrieve(new RetrieveRestrictionAlimentaireArgs { IdRestrictionAlimentaire = (int)rowRestriction["idRestrictionAlimentaire"] }));
                                    }

                                    // Ajout des objectifs du membre.
                                    requete = string.Format("SELECT idObjectif FROM ObjectifsMembres WHERE idMembre = {0}", membre.IdMembre);

                                    using (DataSet dataSetObjectifs = connexion.Query(requete))
                                    {
                                        using (DataTable tableObjectifs = dataSetObjectifs.Tables[0])
                                        {

                                            foreach (DataRow rowObjectif in tableObjectifs.Rows)
                                            {
                                                membre.ListeObjectifs.Add(objectifService.Retrieve(new RetrieveObjectifArgs { IdObjectif = (int)rowObjectif["idObjectif"] }));
                                            }

                                            // Ajout des préférences du membre.
                                            requete = string.Format("SELECT idPreference FROM PreferencesMembres WHERE idMembre = {0}", membre.IdMembre);

                                            using (DataSet dataSetPreferences = connexion.Query(requete))
                                            {
                                                using (DataTable tablePreferences = dataSetPreferences.Tables[0])
                                                {

                                                    foreach (DataRow rowPreference in tablePreferences.Rows)
                                                    {
                                                        membre.ListePreferences.Add(preferenceService.Retrieve(new RetrievePreferenceArgs { IdPreference = (int)rowPreference["idPreference"] }));
                                                    }

                                                    membre.ListeMenus = menuService.RetrieveSome(new RetrieveMenuArgs { IdMembre = (int)membre.IdMembre });
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }

            }
            catch (MySqlException)
            {
                throw;
            }

            return membre;
        }
Esempio n. 59
0
        /// <summary>
        /// Méthode de mise à jour d'un plat dans la base de données.
        /// </summary>
        /// <param name="unAliment"></param>
        public void Update(Plat unPlat)
        {
            try
            {
                connexion = new MySqlConnexion();

                string requeteTypePlat = string.Format("SELECT * FROM TypesPlats WHERE typePlat = '{0}'", unPlat.TypePlat);

                DataSet dataSetTypes = connexion.Query(requeteTypePlat);
                DataTable tableTypes = dataSetTypes.Tables[0];

                int idType = 0;

                foreach (DataRow rowType in tableTypes.Rows)
                {
                    idType = (int)rowType["idTypePlat"];
                }

                string note = unPlat.Note.ToString();

                if (note.Contains(","))
                {
                    note = note.Replace(",", ".");
                }

                string requeteUpdate = string.Format("UPDATE Plats SET idTypePlat = {0}, nom = '{1}', imageUrl = '{2}', note = '{3}', nbVotes = {4}, description = '{5}' WHERE idPlat = {6}", idType, unPlat.Nom.Replace("'", "''"), unPlat.ImageUrl, note, unPlat.NbVotes, unPlat.Description, unPlat.IdPlat);
                connexion.Query(requeteUpdate);

                int idPlat = (int)unPlat.IdPlat;

                string requeteDelete = string.Format("DELETE FROM PlatsAliments WHERE idPlat = {0}", idPlat);
                connexion.Query(requeteDelete);

                for (int i = 0; i < unPlat.ListeIngredients.Count; i++)
                {
                    string requeteInsertAlimentPlat = string.Format("INSERT INTO PlatsAliments (idPlat, idAliment, quantite) VALUES ({0}, {1}, {2})", idPlat, unPlat.ListeIngredients[i].IdAliment, unPlat.ListeIngredients[i].Quantite);
                    connexion.Query(requeteInsertAlimentPlat);
                }

            }
            catch (Exception)
            {
                throw;
            }
        }
Esempio n. 60
0
        /// <summary>
        /// Insertion d'une valeur nutritionnelle dans la table de correspondance "AlimentsValeursNutritionnelles".
        /// </summary>
        /// <param name="idValeur"></param>
        /// <param name="idAliment"></param>
        /// <param name="valeur"></param>
        private void Inserer_Valeur_Nutritionnelle(int idValeur, int idAliment, double valeur)
        {
            try
            {
                connexion = new MySqlConnexion();

                string uneValeur = valeur.ToString();

                if (uneValeur.Contains(","))
                {
                    uneValeur = uneValeur.Replace(",", ".");
                }

                string requeteInsert = string.Format("INSERT INTO AlimentsValeursNutritionnelles (idAliment ,idValeurNutritionnelle, quantite) VALUES ({0}, {1}, {2})", idAliment, idValeur, uneValeur);
                connexion.Query(requeteInsert);
            }
            catch (Exception)
            {
                throw;
            }
        }