示例#1
0
        public static IEnumerable <Commandes> getListeDeCommande(String id)
        {
            IEnumerable <Commandes> uneCde = new List <Commandes>();
            Commandes commande;
            DataTable dt;
            Serreurs  er = new Serreurs("Erreur sur recherche d'une commande.", "Commande.RechercheUneCommande()");

            try
            {
                String mysql = "SELECT NO_ARTICLE, LIB_ARTICLE, QTE_CDEE, PRIX_ART, QTE_CDEE * PRIX_ART AS PRIX_TOT " +
                               "FROM detail_cde NATURAL JOIN articles WHERE NO_COMMAND='" + id + "'";
                dt = DBInterface.Lecture(mysql, er);
                double price = 0;
                foreach (DataRow dataRow in dt.Rows)
                {
                    commande            = new Commandes();
                    commande.NoArticle  = dataRow[0].ToString();
                    commande.LibArticle = dataRow[1].ToString();
                    commande.QteCdee    = dataRow[2].ToString();
                    commande.PrixArt    = dataRow[3].ToString();
                    commande.PrixTotal  = dataRow[4].ToString();
                    price = Convert.ToDouble(dataRow[4].ToString()) + price;
                    /*MAJ DU PRIX*/
                    commande.PrixFinal = Convert.ToString(price);

                    ((List <Commandes>)uneCde).Add(commande);
                }

                return(uneCde);
            }
            catch (MySqlException e)
            {
                throw new MonException(er.MessageUtilisateur(), er.MessageApplication(), e.Message);
            }
        }
示例#2
0
        public static void addCommande(Commandes uneCde)
        {
            /*String[] date = uneCde.DateCde.ToString().Split('-');
             * String jour = date[0];
             * String mois = date[1];
             * String annee = date[2];
             * String dateFinale = annee + '-' + mois + '-' + jour;*/

            Serreurs er      = new Serreurs("Erreur sur l'écriture d'une commande.", "Commandes.add()");
            String   requete = "INSERT INTO Commandes (NO_COMMAND,NO_VENDEUR,NO_CLIENT,DATE_CDE,FACTURE) Values (" +
                               "'" + uneCde.NoCommande + "'" +
                               ",'" + uneCde.NoVendeur + "'" +
                               ",'" + uneCde.NoClient + "'" +
                               ",'" + uneCde.DateCde + "'" +
                               ",'" + uneCde.Facture + "'); \n" +
                               "INSERT INTO detail_cde (NO_COMMAND, NO_ARTICLE, QTE_CDEE, LIVREE) Values (" +
                               "'" + uneCde.NoCommande + "'" +
                               ", '" + uneCde.NoArticle + "'" +
                               ", '" + uneCde.QteCdee + "'" +
                               ", '" + uneCde.Livree + "');";

            try
            {
                DBInterface.Insertion_Donnees(requete);
            }
            catch (MonException erreur)
            {
                throw erreur;
            }
            catch (MySqlException e)
            {
                throw new MonException(er.MessageUtilisateur(), er.MessageApplication(), e.Message);
            }
        }
示例#3
0
        public static void updateCommande(Commandes unCli)
        {
            String[] date       = unCli.DateCde.Split('.');
            String   jour       = date[0];
            String   mois       = date[1];
            String   annee      = date[2];
            String   dateFinale = annee + '-' + mois + '-' + jour;

            Serreurs er      = new Serreurs("Erreur sur l'écriture d'une commande.", "Commande.update()");
            String   requete = "UPDATE Commandes SET " +
                               "NO_VENDEUR = '" + unCli.NoVendeur + "'" +
                               ", NO_CLIENT = '" + unCli.NoClient + "'" +
                               ", DATE_CDE = '" + dateFinale + "'" +
                               ", FACTURE = '" + unCli.Facture + "'" +
                               " WHERE NO_COMMAND LIKE '" + unCli.NoCommande + "'";

            try
            {
                DBInterface.Insertion_Donnees(requete);
            }
            catch (MonException erreur)
            {
                throw erreur;
            }
            catch (MySqlException e)
            {
                throw new MonException(er.MessageUtilisateur(), er.MessageApplication(), e.Message);
            }
        }
示例#4
0
        public static ComVendCli getComVendCli(String id)
        {
            ComVendCli cvc = new ComVendCli();
            Serreurs   er  = new Serreurs("Erreur sur recherche d'un vendeur.", "vendeur.RechercheDesVendeurs()");

            try
            {
                cvc.commande      = Commandes.getCommande(id);
                cvc.listeClients  = Clientel.getClients();
                cvc.listeVendeurs = Vendeur.getVendeurs();

                return(cvc);
            }
            catch (Exception e)
            {
                throw new MonException(er.MessageUtilisateur(), er.MessageApplication(), e.Message);
            }
        }
示例#5
0
        public static IEnumerable <Commandes> getCommandes()
        {
            IEnumerable <Commandes> commandes = new List <Commandes>();
            DataTable dt;
            Commandes commande;
            Serreurs  er = new Serreurs("Erreur sur lecture des commandes.", "CommandesList.getCommandes()");

            try
            {
                string mysql = "SELECT c.NO_COMMAND, c.NO_VENDEUR, c.NO_CLIENT, c.DATE_CDE, ";
                mysql += "c.FACTURE, count(d.NO_COMMAND) NB_ARTICLES ";
                mysql += "FROM commandes c LEFT OUTER JOIN detail_cde d ";
                mysql += "ON c.NO_COMMAND=d.NO_COMMAND GROUP BY c.NO_COMMAND ORDER BY c.NO_COMMAND";

                dt = DBInterface.Lecture(mysql, er);

                foreach (DataRow dataRow in dt.Rows)
                {
                    commande            = new Commandes();
                    commande.NoCommande = dataRow[0].ToString();
                    String noVendeur = dataRow[1].ToString();
                    commande.NoVendeur = Vendeur.getVendeurById(noVendeur);
                    String noClient = dataRow[2].ToString();
                    commande.NoClient = Clientel.getClientById(noClient);
                    Match  match = Regex.Match(dataRow[3].ToString(), pattern);
                    String temp  = match.Groups[3].Value + "-" + match.Groups[2].Value + "-" + match.Groups[1].Value;
                    commande.DateCde   = temp;
                    commande.Facture   = dataRow[4].ToString();
                    commande.NbArticle = dataRow[5].ToString();

                    ((List <Commandes>)commandes).Add(commande);
                }

                return(commandes);
            }
            catch (MonException e)
            {
                throw new MonException(er.MessageUtilisateur(), er.MessageApplication(), e.Message);
            }
            catch (MySqlException e)
            {
                throw new MonException(er.MessageUtilisateur(), er.MessageApplication(), e.Message);
            }
        }
示例#6
0
        public static void SuppDetail(Commandes uneCde)
        {
            Serreurs er      = new Serreurs("Erreur sur la suppression d'une commande.", "Commandes.Supprimer()");
            String   requete = "DELETE FROM detail_cde WHERE NO_COMMAND='" + uneCde.NoCommande + "'";

            Console.WriteLine(requete);
            try
            {
                DBInterface.Insertion_Donnees(requete);
            }
            catch (MonException erreur)
            {
                throw erreur;
            }
            catch (MySqlException e)
            {
                throw new MonException(er.MessageUtilisateur(), er.MessageApplication(), e.Message);
            }
        }
示例#7
0
        /// <summary>
        /// Lire une commande sur son ID
        /// </summary>
        /// <param name="numCom">N° de la commande à lire</param>
        public static Commandes getCommande(String numCom)
        {
            String    mysql;
            DataTable dt;
            Serreurs  er = new Serreurs("Erreur sur recherche d'une commande.", "Commandes.RechercheUneCommande()");

            try
            {
                mysql  = "SELECT c.NO_VENDEUR, c.NO_CLIENT, c.DATE_CDE, ";
                mysql += "c.FACTURE, count(*) NB_ARTICLES ";
                mysql += "FROM commandes c LEFT OUTER JOIN detail_cde d ON c.NO_COMMAND=d.NO_COMMAND ";
                mysql += "WHERE c.NO_COMMAND='" + numCom + "' GROUP BY c.NO_COMMAND";
                dt     = DBInterface.Lecture(mysql, er);
                System.Console.WriteLine(mysql);
                if (dt.IsInitialized && dt.Rows.Count > 0)
                {
                    Commandes commande = new Commandes();
                    DataRow   dataRow  = dt.Rows[0];
                    commande.NoCommande = numCom;
                    String noVendeur = dataRow[0].ToString();
                    commande.NoVendeur = Vendeur.getVendeurById(noVendeur);
                    String noClient = dataRow[1].ToString();
                    commande.NoClient = Clientel.getClientById(noClient);
                    Match  match = Regex.Match(dataRow[2].ToString(), pattern);
                    String temp  = match.Groups[3].Value + "-" + match.Groups[2].Value + "-" + match.Groups[1].Value;
                    commande.DateCde   = temp;
                    commande.Facture   = dataRow[3].ToString();
                    commande.NbArticle = dataRow[4].ToString();

                    return(commande);
                }
                else
                {
                    return(null);
                }
            }
            catch (MySqlException e)
            {
                throw new MonException(er.MessageUtilisateur(), er.MessageApplication(), e.Message);
            }
        }
示例#8
0
        public static void addDetailCommande(Commandes uneCde)
        {
            Serreurs er      = new Serreurs("Erreur sur l'écriture d'une commande.", "Commandes.add()");
            String   requete = "INSERT INTO detail_cde (NO_COMMAND, NO_ARTICLE, QTE_CDEE, LIVREE) Values (" +
                               "'" + uneCde.NoCommande + "'" +
                               ", '" + uneCde.NoArticle + "'" +
                               ", '" + uneCde.QteCdee + "'" +
                               ", '" + uneCde.Livree + "');";

            try
            {
                DBInterface.Insertion_Donnees(requete);
            }
            catch (MonException erreur)
            {
                throw erreur;
            }
            catch (MySqlException e)
            {
                throw new MonException(er.MessageUtilisateur(), er.MessageApplication(), e.Message);
            }
        }
示例#9
0
        public static IEnumerable <Commandes> getCommands()
        {
            IEnumerable <Commandes> comms = new List <Commandes>();
            DataTable dt;
            Commandes comm;
            Serreurs  er = new Serreurs("Erreur sur lecture des commandes.", "CommandesList.getCommands()");

            try
            {
                String mysql = "SELECT NO_VENDEUR, NO_CLIENT, DATE_CDE, FACTURE, " +
                               "NO_COMMAND FROM commandes ORDER BY NO_COMMAND";

                dt = DBInterface.Lecture(mysql, er);

                foreach (DataRow dataRow in dt.Rows)
                {
                    comm            = new Commandes();
                    comm.NoCommande = dataRow[4].ToString();
                    comm.NoVendeur  = dataRow[0].ToString();
                    comm.NoClient   = dataRow[1].ToString();
                    comm.DateCde    = dataRow[2].ToString();
                    comm.Facture    = dataRow[3].ToString();


                    ((List <Commandes>)comms).Add(comm);
                }

                return(comms);
            }
            catch (MonException e)
            {
                throw new MonException(er.MessageUtilisateur(), er.MessageApplication(), e.Message);
            }
            catch (MySqlException e)
            {
                throw new MonException(er.MessageUtilisateur(), er.MessageApplication(), e.Message);
            }
        }
示例#10
0
        public static void createCommande(Commandes commande)
        {
            Serreurs er      = new Serreurs("Erreur sur l'écriture d'une commande.", "Commandes.create()");
            String   requete = "INSERT INTO commandes VALUES " +
                               "( '" + commande.NoCommande + "'" +
                               ", '" + commande.NoVendeur + "'" +
                               ", '" + commande.NoClient + "'" +
                               ", '" + commande.DateCde + "'" +
                               ", '" + commande.Facture + "' )";

            try
            {
                DBInterface.Insertion_Donnees(requete);          //EXCEPTION foreign key
            }
            catch (MonException erreur)
            {
                throw erreur;
            }
            catch (MySqlException e)
            {
                throw new MonException(er.MessageUtilisateur(), er.MessageApplication(), e.Message);
            }
        }
示例#11
0
        /// <summary>
        /// mise à jour d'un client sur son ID
        /// </summary>
        /// <param name="numCli">N° de l'utilisateur à lire</param>
        public static void updateCommande(Commandes commande)
        {
            Serreurs er      = new Serreurs("Erreur sur l'écriture d'une commande.", "Commandes.update()");
            String   requete = "UPDATE commandes SET " +
                               "NO_VENDEUR = '" + commande.NoVendeur + "'" +
                               ", NO_CLIENT = '" + commande.NoClient + "'" +
                               ", DATE_CDE = '" + commande.DateCde + "'" +
                               ", FACTURE = '" + commande.Facture + "'" +
                               " WHERE NO_COMMAND LIKE '" + commande.NoCommande + "'";

            try
            {
                DBInterface.Insertion_Donnees(requete);          //EXCEPTION foreign key
            }
            catch (MonException erreur)
            {
                throw erreur;
            }
            catch (MySqlException e)
            {
                throw new MonException(er.MessageUtilisateur(), er.MessageApplication(), e.Message);
            }
        }
示例#12
0
        /// <summary>
        /// Lire un utilisateur sur son ID
        /// </summary>
        /// <param name="numCo">N° de la commande à lire</param>
        public static Commandes getCommande(String numCo)
        {
            String    mysql;
            DataTable dt;
            Serreurs  er = new Serreurs("Erreur sur recherche d'une commande.", "Commande.RechercheUnClient()");

            try
            {
                mysql  = "SELECT NO_VENDEUR, NO_CLIENT, DATE_CDE,";
                mysql += "FACTURE ";
                mysql += "FROM commandes WHERE NO_COMMAND='" + numCo + "'";
                dt     = DBInterface.Lecture(mysql, er);

                if (dt.IsInitialized && dt.Rows.Count > 0)
                {
                    Commandes comm    = new Commandes();
                    DataRow   dataRow = dt.Rows[0];
                    comm.NoCommande = numCo;
                    comm.NoVendeur  = dataRow[0].ToString();
                    comm.NoClient   = dataRow[1].ToString();
                    comm.DateCde    = dataRow[2].ToString();
                    comm.Facture    = dataRow[3].ToString();


                    return(comm);
                }
                else
                {
                    return(null);
                }
            }
            catch (MySqlException e)
            {
                throw new MonException(er.MessageUtilisateur(), er.MessageApplication(), e.Message);
            }
        }
示例#13
0
 public ComVendCli(Commandes co, IEnumerable <Vendeur> v, IEnumerable <Clientel> c)
 {
     commande      = co;
     listeVendeurs = v;
     listeClients  = c;
 }
示例#14
0
 /// <summary>
 /// Initialisation
 /// </summary>
 public ComVendCli()
 {
     commande      = null;
     listeClients  = null;
     listeVendeurs = null;
 }