public List <Commande> getLesCommandes(String tris, String ordres) { DataTable dt; String mysql = "SELECT NO_COMMAND, NO_VENDEUR, NO_CLIENT, DATE_CDE, FACTURE " + "FROM COMMANDES " + "ORDER BY " + tris + " " + ordres; sErreurs er = new sErreurs("Erreur sur lecture des commandes", "Commande.getLesCommandes()"); try { dt = DbInterface.Lecture(mysql, er); List <Commande> mesCdes = new List <Commande>(); foreach (DataRow dataRow in dt.Rows) { Vendeur unvd = new Vendeur(); unvd.NoVendeur = dataRow[1].ToString(); Clientel uncli = new Clientel(); uncli.NoCl = dataRow[2].ToString(); Commande unecde = new Commande(dataRow[0].ToString(), ((DateTime)dataRow[3]), dataRow[4].ToString(), unvd, uncli); mesCdes.Add(unecde); } return(mesCdes); } catch (MonException erreur) { throw erreur; } }
/// <summary> /// Augmenter ou diminuer tous les prix /// </summary> /// <param name="pourcentage"></param> public static void ModifierPrix(String pourcentage) { DataTable dt; sErreurs err = new sErreurs("", ""); String mysql; try { /* * Code SQL de création de la procédure stockée : * * CREATE PROCEDURE `modifier_prix` ( IN `pourcentage` INT ) * COMMENT 'Augmenter ou diminuer les prix d''un pourcentage.' NOT DETERMINISTIC MODIFIES SQL DATA SQL SECURITY DEFINER * BEGIN * UPDATE articles SET prix_art = prix_art * ( 1 + pourcentage /100 ); * END * */ // appel de la procédure stockée mysql = "CALL modifier_prix(" + pourcentage + ");"; dt = DbInterface.Lecture(mysql, err); } catch (MonException erreur) { throw erreur; } }
/// <summary> /// Modifier les informations de l'article courant dans la base de données /// </summary> public void modifierArticle() { DataTable dt; sErreurs err = new sErreurs("", ""); String mysql; try { // actualiser les infoamtions dans la base mysql = "UPDATE ARTICLES SET LIB_ARTICLE = '"; mysql += this.lib_article; mysql += "', QTE_DISPO = '"; mysql += this.qte_dispo; mysql += "', VILLE_ART = '"; mysql += this.ville_art; mysql += "', PRIX_ART = '"; mysql += this.prix_art; mysql += "', INTERROMPU = '"; mysql += this.interrompu; mysql += "' WHERE NO_ARTICLE = '" + this.no_article + "';"; dt = DbInterface.Lecture(mysql, err); } catch (MonException erreur) { throw erreur; } }
/// <summary> /// Récupérer la liste des articles /// </summary> /// <param name="tri">champ de tri</param> /// <param name="ordre">sens du tri</param> /// <returns>lste d'articles</returns> public List <Article> getLesArticles(String tri = "NO_ARTICLE", String ordre = "ASC") { DataTable dt; sErreurs err = new sErreurs("", ""); //MySqlConnection cnx = Connexion.getInstance().getConnexion(); String mysql = "SELECT NO_ARTICLE, LIB_ARTICLE, QTE_DISPO, VILLE_ART, PRIX_ART, INTERROMPU "; mysql += "FROM ARTICLES "; mysql += "ORDER BY " + tri + " " + ordre; try { dt = DbInterface.Lecture(mysql, err); List <Article> mesArt = new List <Article>(); foreach (DataRow dataRow in dt.Rows) { Article unart = new Article(); unart.no_article = dataRow[0].ToString(); unart.lib_article = dataRow[1].ToString(); unart.qte_dispo = dataRow[2].ToString(); unart.ville_art = dataRow[3].ToString(); unart.prix_art = dataRow[4].ToString(); unart.interrompu = dataRow[5].ToString(); mesArt.Add(unart); } return(mesArt); } catch (MonException erreur) { throw erreur; } }
public void supprimerCommande(int numeroCommande) { DataTable dataTable; sErreurs err = new sErreurs("", ""); try { String mysql1 = "delete from detail_cde where NO_COMMAND=" + numeroCommande; String mysql2 = "delete from commandes where NO_COMMAND=" + numeroCommande; dataTable = DbInterface.Lecture(mysql1, err); dataTable = DbInterface.Lecture(mysql2, err); } catch (MonException erreur) { throw erreur; } }
/// <summary> /// Ajouter l'article courant dans la base de données /// </summary> public void ajouterArticle() { DataTable dt; sErreurs err = new sErreurs("", ""); String mysql; try { mysql = "INSERT INTO ARTICLES (NO_ARTICLE, LIB_ARTICLE, QTE_DISPO, VILLE_ART, PRIX_ART, INTERROMPU) VALUES ('" + "', '" + this.lib_article + "', '" + this.qte_dispo + "', '" + this.ville_art + "', '" + this.prix_art + "', '" + this.interrompu + "');"; dt = DbInterface.Lecture(mysql, err); } catch (MonException erreur) { throw erreur; } }
/// <summary> /// Exécution de la requête demandée en paramètre, req, /// et retour du resultat : un DataTable /// Si tout se passe bien la connexion est prête à être fermée /// par le client qui utilisera cette connexion /// </summary> /// <param name="req">RequêteMySql à exécuter</param> /// <returns></returns> public static DataTable Lecture(String req, sErreurs er) { MySqlConnection cnx = null; try { cnx = Connexion.getInstance().getConnexion(); MySqlCommand cmd = new MySqlCommand(); cmd.Connection = cnx; cmd.CommandText = req; MySqlDataAdapter da = new MySqlDataAdapter(); da.SelectCommand = cmd; // Construire le DataSet DataSet ds = new DataSet(); da.Fill(ds, "resultat"); cnx.Close(); // Retourner la table return(ds.Tables["resultat"]); } catch (MonException me) { throw (me); } catch (Exception e) { throw new MonException(er.MessageUtilisateur(), er.MessageApplication(), e.Message); } finally { // S'il y a eu un problème, la connexion // peut être encore ouverte, dans ce cas // il faut la fermer. if (cnx != null) { cnx.Close(); } } }
public void ajouterCommande() { DataTable dataTable; sErreurs err = new sErreurs("", ""); String mysqlInsertion; try { // enregistrer les détails de l'article mysqlInsertion = "insert into commandes (NO_COMMAND, NO_CLIENT, NO_VENDEUR, FACTURE, DATE_CDE) values ('"; mysqlInsertion += this.noCommande + "','"; mysqlInsertion += this.client.NoCl + "','"; mysqlInsertion += this.vendeur.NoVendeur + "','"; mysqlInsertion += this.facture + "','"; mysqlInsertion += this.dateCommande.ToString("yyyy-MM-dd") + "');"; dataTable = DbInterface.Lecture(mysqlInsertion, err); } catch (MonException erreur) { throw erreur; } }
/// <summary> /// Lister les venderus de la base /// </summary> /// <returns>liste de vendeurs</returns> public List <String> LectureNoVendeur() { List <String> mesNumeros = new List <String>(); DataTable dt; sErreurs er = new sErreurs("Erreur sur lecture du vendeur.", "Vendeur.LectureNoVendeur()"); try { String mysql = "SELECT DISTINCT NO_VENDEUR FROM VENDEUR ORDER BY NO_VENDEUR"; dt = DbInterface.Lecture(mysql, er); foreach (DataRow dataRow in dt.Rows) { mesNumeros.Add((dataRow[0]).ToString()); } return(mesNumeros); } catch (MySqlException e) { throw new MonException(er.MessageUtilisateur(), er.MessageApplication(), e.Message); } }
/// <summary> /// Cherhcer les informations d'un vendeur d'après son numéro /// </summary> /// <param name="numVen"></param> /// <returns></returns> public Vendeur RechercheUnVendeur(String numVen) { String mysql; DataTable dt; sErreurs er = new sErreurs("Erreur sur recherche d'un vendeur.", "Vendeur.RechercheUnVendeur()"); try { mysql = "SELECT NO_VEND_CHEF_EQ, NOM_VEND, PRENOM_VEND,"; mysql += "DATE_EMBAU, VILLE_VEND, SALAIRE_VEND, COMMISSION "; mysql += "FROM VENDEUR WHERE NO_VENDEUR='" + numVen + "'"; dt = DbInterface.Lecture(mysql, er); if (dt.IsInitialized) { DataRow dataRow = dt.Rows[0]; this.noVendeur = numVen; this.noChef = dataRow[0].ToString(); this.nomVend = dataRow[1].ToString(); this.prenomVend = dataRow[2].ToString(); this.dateEmbau = Fonctions.StringToDate(dataRow[3].ToString()); this.villeVend = dataRow[4].ToString(); this.salaireVend = double.Parse(dataRow[5].ToString()); this.commission = double.Parse(dataRow[6].ToString()); return(this); } else { return(null); } } catch (MySqlException e) { throw new MonException(er.MessageUtilisateur(), er.MessageApplication(), e.Message); } }
/// <summary> /// Rechercher un article d'après son numéro /// </summary> /// <param name="no_cmd">Numéro de l'article</param> /// <returns>article courante</returns> public Article RechercheArticle(String no_art) { String mysql; DataTable dt; sErreurs er = new sErreurs("Erreur sur recherche d'un article.", "Article.RechercheArticle()"); try { mysql = "SELECT NO_ARTICLE, LIB_ARTICLE, QTE_DISPO, VILLE_ART, PRIX_ART, INTERROMPU "; mysql += "FROM ARTICLES "; mysql += "WHERE NO_ARTICLE = '" + no_art + "'"; dt = DbInterface.Lecture(mysql, er); if (dt.IsInitialized) { DataRow dataRow = dt.Rows[0]; this.no_article = dataRow[0].ToString(); this.lib_article = dataRow[1].ToString(); this.qte_dispo = dataRow[2].ToString(); this.ville_art = dataRow[3].ToString(); this.prix_art = dataRow[4].ToString(); this.interrompu = dataRow[5].ToString(); return(this); } else { return(null); } } catch (MySqlException e) { throw new MonException(er.MessageUtilisateur(), er.MessageApplication(), e.Message); } }
public List <DetailsCde> getDetailsCde(String noCmd) { DataTable dt; sErreurs err = new sErreurs("", ""); //MySqlConnection cnx = Connexion.getInstance().getConnexion(); String mysql = "SELECT articles.*, detail_cde.QTE_CDEE, detail_cde.LIVREE " + "FROM articles, detail_cde " + "WHERE detail_cde.NO_COMMAND = " + noCmd + " AND articles.NO_ARTICLE = detail_cde.NO_ARTICLE " + "ORDER BY NO_ARTICLE ASC"; Console.Write(mysql); try { dt = DbInterface.Lecture(mysql, err); List <DetailsCde> mesDetails = new List <DetailsCde>(); foreach (DataRow dataRow in dt.Rows) { Article unart = new Article(); unart.No_article = dataRow[0].ToString(); unart.Lib_article = dataRow[1].ToString(); unart.Qte_dispo = dataRow[2].ToString(); unart.Ville_art = dataRow[3].ToString(); unart.Prix_art = dataRow[4].ToString(); unart.Interrompu = dataRow[5].ToString(); DetailsCde unDetail = new DetailsCde(unart, dataRow[6].ToString(), dataRow[7].ToString()); mesDetails.Add(unDetail); } return(mesDetails); } catch (MonException erreur) { throw erreur; } }
/// <summary> /// Lire un utilisateur sur son ID /// </summary> /// <param name="numCli">N° de l'utilisateur à lire</param> public Clientel RechercheUnClient(String numCli) { String mysql; DataTable dt; sErreurs er = new sErreurs("Erreur sur recherche d'un client.", "Client.RechercheUnClient()"); try { mysql = "SELECT SOCIETE, NOM_CL, PRENOM_CL,"; mysql += "ADRESSE_CL, VILLE_CL, CODE_POST_CL "; mysql += "FROM CLIENTEL WHERE NO_CLIENT='" + numCli + "'"; dt = DbInterface.Lecture(mysql, er); if (dt.IsInitialized) { DataRow dataRow = dt.Rows[0]; this.noClient = numCli; this.nomCl = dataRow[1].ToString(); this.societe = dataRow[0].ToString(); this.prenomCl = dataRow[2].ToString(); this.adresseCl = dataRow[3].ToString(); this.villeCl = dataRow[4].ToString(); this.codePostCl = dataRow[5].ToString(); return(this); } else { return(null); } } catch (MySqlException e) { throw new MonException(er.MessageUtilisateur(), er.MessageApplication(), e.Message); } }