private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {
            if (e.RowIndex < 0)
            {
                return;
            }
            if (e.ColumnIndex == 5)
            {
                var db       = new dbContext();
                int id       = (int)dataGridView1.Rows[e.RowIndex].Cells[0].Value;
                var commande = db.Commandes.Where(c => c.NCommande == id).FirstOrDefault();
                if (commande != null && commande.statut == false)
                {
                    Form1.SetMessageLog("La commande N " + commande.NCommande + " est arrivée");
                    dataGridView1.Rows[e.RowIndex].Cells[5].Value = "Arrivé";
                    commande.statut = true;
                    db.SaveChanges();
                    dataGridView1.Rows[e.RowIndex].Cells[5].Style.BackColor          = Color.Green;
                    dataGridView1.Rows[e.RowIndex].Cells[5].Style.SelectionBackColor = Color.Green;
                    dataGridView1.Rows[e.RowIndex].Selected = true;
                    var produits_commande = db.Produit_commande.Where(p => p.NCommande == id).ToList();
                    foreach (var item in produits_commande)
                    {
                        double   addDate    = (item.Produit.dureeValidite_jour == null) ? 10 : (double)item.Produit.dureeValidite_jour;
                        DateTime dateExpire = DateTime.Now.AddDays(addDate) == null?Convert.ToDateTime("07/12/1999") : DateTime.Now.AddDays(addDate);

                        Stock_Magazin stockNewProduit = new Stock_Magazin()
                        {
                            codeMagazin    = 1,
                            codeProduit    = item.codeProduit,
                            quantite       = item.quantite,
                            dateExpiration = dateExpire
                        };
                        db.Stock_Magazin.Add(stockNewProduit);
                        db.SaveChanges();
                    }
                }
            }
            if (e.ColumnIndex == 6)
            {
                DialogResult rs = MessageBox.Show("La commande sera supprimer definitivement, Continue?", "Supprimer", MessageBoxButtons.YesNo, MessageBoxIcon.Warning);
                if (rs != DialogResult.Yes)
                {
                    return;
                }
                var db       = new dbContext();
                int id       = (int)dataGridView1.Rows[e.RowIndex].Cells[0].Value;
                var commande = db.Commandes.Where(c => c.NCommande == id).FirstOrDefault();
                if (commande != null)
                {
                    db.Commandes.Remove(commande);
                    db.SaveChanges();
                    refrechDataGrid(db.Commandes.ToList <Commande>());
                }
            }
        }
        private void affecterCommande(object sender, EventArgs e)
        {
            var             dbase = new dbContext();
            List <Commande> list  = dbase.Commandes.ToList <Commande>();
            List <int>      idfournisseurDansLaCommande = new List <int>();

            foreach (ElementPagnierVentes item in flowLayoutPagnierProduitCommandes.Controls)
            {
                Produit p = dbase.Produits.
                            Where(s => s.codeProduit == item.Id).SingleOrDefault();
                if (p != null && !idfournisseurDansLaCommande.Contains(p.idFournisseur))
                {
                    idfournisseurDansLaCommande.Add(p.idFournisseur);
                    Commande CommadeAchaquefournisseur = new Commande()
                    {
                        codeMagazin        = 1,
                        dateDemande        = DateTime.Now,
                        dateArriveSouhaite = dateSouhaité.Value,
                        statut             = false,
                        idFournisseur      = idfournisseurDansLaCommande[idfournisseurDansLaCommande.Count - 1]
                    };
                    dbase.Commandes.Add(CommadeAchaquefournisseur);
                    dbase.SaveChanges();
                }

                list = dbase.Commandes.ToList <Commande>();
                Commande lastOneId = list[list.Count - 1];//chno had khra a Messlo7i wliti rj3ti hadi
                Form1.SetMessageLog("Création de la commande N " + lastOneId.NCommande + " au fournisseur : " + p.Fournisseur.nomFournisseur + " " + p.Fournisseur.prenomFournisseur);

                if (a != null)
                {
                    Produit_commande pc = new Produit_commande()
                    {
                        codeProduit = item.Id,
                        quantite    = int.Parse(item.QuntiteProduit),
                        NCommande   = lastOneId.NCommande,
                    };
                    dbase.Produit_commande.Add(pc);
                    dbase.SaveChanges();
                }
            }
            refrechDataGrid(list);
            if (produitVentes != null)
            {
                produitVentes.Clear();
            }
            //this.flowLayoutPanel1.Controls.Clear();
            //remplireListeProduit();

            this.flowLayoutPagnierProduitCommandes.Controls.Clear();
            a.Visible = false;
        }
        private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {
            if (e.ColumnIndex == 3)
            {
                if (e.RowIndex < 0)
                {
                    return;
                }
                try
                {
                    var db         = new dbContext();
                    var stock      = db.Stock_Magazin.Where(s => s.codeProduit.Equals(currentProd.codeProduit));
                    var stk2delete = stock.ToList <Stock_Magazin>()[e.RowIndex];
                    Form1.SetMessageLog("Suppression du stock N" + stk2delete.codeStock + " du '" + currentProd.libelle + ", Quatite retitré " + stk2delete.quantite + " produit(s) , date d'expiration : " + stk2delete.dateExpiration.ToShortDateString());

                    db.Stock_Magazin.Remove(stk2delete);
                    db.SaveChanges();
                    refreshDatagrid(currentProd);
                    DialogResult res = MessageBox.Show("Stock supprimé!", "Supprimé", MessageBoxButtons.OK, MessageBoxIcon.Information);
                }
                catch (Exception exc)
                {
                    MessageBox.Show("Error! " + exc.Message);
                }
            }
        }
Esempio n. 4
0
        private void Ajouter_Click(object sender, EventArgs e)
        {
            var db = new dbContext();

            if (!isEditing)
            {
                if (tbNom.Text.Length > 0 && tbPrenom.Text.Length > 0 && tbtel.Text.Length > 0 && tbadress.Text.Length > 0)
                {
                    try
                    {
                        Fournisseur f = new Fournisseur()
                        {
                            nomFournisseur    = tbNom.Text,
                            prenomFournisseur = tbPrenom.Text,
                            adressFournisseur = tbadress.Text,
                            telFournisseur    = tbtel.Text,
                        };
                        db.Fournisseurs.Add(f);
                        db.SaveChanges();
                        Form1.SetMessageLog($"L'ajout d'un nouveau fournisseur {tbNom.Text} {tbPrenom.Text} à la liste des fournisseurs");
                        MessageBox.Show("Fournisseur ajouté!", "Sucess", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        this.Close();
                        theCaller.refrechDataGrid(db.Fournisseurs.ToList());
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show("erreur! fournisseur n'est pas ajouter :\n" + ex.Message, "Erreur", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                }
                else
                {
                    MessageBox.Show("Veuillez remplir tous les champs", "Champs vides!", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                }
            }
            else
            {
                Fournisseur f2Edit = db.Fournisseurs.Find(fournisseursToEdit.idFournisseur);
                f2Edit.nomFournisseur    = tbNom.Text;
                f2Edit.prenomFournisseur = tbPrenom.Text;
                f2Edit.adressFournisseur = tbadress.Text;
                f2Edit.telFournisseur    = tbtel.Text;
                db.SaveChanges();
                theCaller.refrechDataGrid(db.Fournisseurs.ToList());
                this.Close();
            }
        }
        private int retirerDeStock(int idProduit, int Quantite)
        {
            var db = new dbContext();
            List <Stock_Magazin> Stock_Prod = db.Stock_Magazin.
                                              Where(s => (s.codeProduit == idProduit) && (DateTime.Compare(s.dateExpiration, DateTime.Now) > 0)).ToList <Stock_Magazin>();
            String libele = "";

            if (Stock_Prod != null)
            {
                for (int i = 0; i < Stock_Prod.Count; i++)
                {
                    libele = Stock_Prod[i].Produit.libelle;
                    if (Stock_Prod[i].quantite == 0)
                    {
                        db.Stock_Magazin.Remove(Stock_Prod[i]);
                    }
                    if (Stock_Prod[i].quantite - Quantite < 0)
                    {
                        int rest = Quantite - Stock_Prod[i].quantite;
                        Stock_Prod[i].quantite -= (Quantite - rest);
                        db.Stock_Magazin.Remove(Stock_Prod[i]);
                        db.SaveChanges();
                        Quantite = rest;
                    }
                    else
                    {
                        Stock_Prod[i].quantite -= Quantite;
                        db.SaveChanges();
                        return(Stock_Prod[i].codeProduit);
                    }
                }
            }
            else
            {
                DialogResult a = MessageBox.Show($"Le produits {libele} n'existe pas dans le stock, vous voulez continuez l'achat", "WARNING", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning);
                if (a != DialogResult.OK)
                {
                    return(0);
                }
            }
            return(1);
        }
Esempio n. 6
0
        private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            var db = new dbContext();

            if (e.RowIndex != -1)
            {
                if (e.ColumnIndex == 6)//delete fournisseur row
                {
                    var result = MessageBox.Show("la suppression est en cascade .Tous les produits relative a ce fourniseur vont etre supprimer  y compris tous les records.Vous voulez Continuez ? ", "Attention",
                                                 MessageBoxButtons.YesNo,
                                                 MessageBoxIcon.Warning);
                    if (result == DialogResult.Yes)
                    {
                        try
                        {
                            if (e.RowIndex < 0)
                            {
                                return;                //avoid header click event exception
                            }
                            Fournisseur fournisseur = db.Fournisseurs.ToArray <Fournisseur>()[e.RowIndex];
                            Form1.SetMessageLog($"Suppression de {fournisseur.nomFournisseur} {fournisseur.prenomFournisseur} de la liste des fournisseurs");
                            db.Fournisseurs.Remove(fournisseur);
                            db.SaveChanges();
                            refrechDataGrid(db.Fournisseurs.ToList());
                            DialogResult res = MessageBox.Show("Fournisseur supprimé!", "Supprimé", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        }
                        catch (Exception exc)
                        {
                            MessageBox.Show("Error! " + exc.Message);
                        }
                    }
                    else
                    {
                        return;
                    }
                }
                if (e.ColumnIndex == 5)//edit fournisseur row
                {
                    if (e.RowIndex < 0)
                    {
                        return;
                    }
                    Fournisseur            fournisseur = db.Fournisseurs.ToArray <Fournisseur>()[e.RowIndex];
                    AjouterFournisseurForm f           = new AjouterFournisseurForm(fournisseur, this);
                    f.Show();
                }
                if (e.ColumnIndex == 7)//Detaille des produits
                {
                    int idFournisseur         = (int)dataGridView1.Rows[e.RowIndex].Cells[0].Value;
                    FormDetailleFournisseur a = new FormDetailleFournisseur(idFournisseur);
                    a.Show();
                }
            }
        }
        private void buttonSumbitPagnier_Click(object sender, EventArgs e)
        {
            var     db        = new dbContext();
            string  qVendu    = "";
            string  cProduits = "";
            decimal _gain     = 0;
            int     qVenduInt = 0;
            //Just to fix the aded Column CodeProduit in Vente_magazin
            int prodActuel = 1;

            foreach (ElementPagnierVentes item in listElementPagnier)
            {
                _gain     += item.Gain;
                qVendu    += item.Quantite + " ";
                qVenduInt += item.Quantite;
                cProduits += item.Id + " ";
                prodActuel = retirerDeStock(item.Id, item.Quantite);
                if (prodActuel == 0)
                {
                    return;
                }
            }
            qVendu += qVenduInt;
            var facture = new Vente_magazin()
            {
                //Les quantité des Produits commandées Stocker successivement comme un string separer par des espace
                //La dernier valuer c'est le toatal de facture
                quantiteVendus = qVendu,
                codeMagazin    = 1,
                codeProduit    = prodActuel,
                gain           = _gain,
                dateVente      = DateTime.Now.Date,
                //Les Produits commandées Stocker comme un string separer par des espace
                codeProduits = cProduits
            };

            try
            {
                db.Vente_magazin.Add(facture);
                db.SaveChanges();
            }
            catch (Exception)
            {
                MessageBox.Show($"Probléme dans BaseDonné (Stock) ", "WARNING", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }

            MessageBox.Show("Facture réglé!");
            listElementPagnier.Clear();
            flowLayoutPanel1.Controls.Clear();
            this.Visible = false;
        }
Esempio n. 8
0
        private void btnDelete_Click(object sender, EventArgs e)
        {
            DialogResult res = DialogResult.No;

            if (isDeatilleFournisseur)
            {
                res = MessageBox.Show("Ce produit sera supprimé définitivement du magazin avec tous les records, voulez vous continuez?", "Supprimer produit?", MessageBoxButtons.YesNo, MessageBoxIcon.Warning);
                if (res == DialogResult.Yes)
                {
                    try
                    {
                        var db = new dbContext();
                        var produitFournisseur = db.Produits.Where(st => st.codeProduit.Equals(currentProd.codeProduit)).FirstOrDefault();
                        Form1.SetMessageLog($"Supprimer le produit {produitFournisseur.libelle} du Fournisseur {produitFournisseur.Fournisseur.nomFournisseur}  {produitFournisseur.Fournisseur.prenomFournisseur} depuis la base donne .");
                        db.Produits.Remove(produitFournisseur);
                        db.SaveChanges();
                        this.Dispose();
                    }
                    catch (Exception excep)
                    {
                        MessageBox.Show("Error! cant delete product :" + excep.Message);
                    }
                }
            }
            else
            {
                res = MessageBox.Show("Tous le stock de ce produit va être retirer, voulez vous continuez?", "Supprimer produit?", MessageBoxButtons.YesNo, MessageBoxIcon.Warning);
                if (res == DialogResult.Yes)
                {
                    try
                    {
                        var db = new dbContext();
                        List <Stock_Magazin> stock2delete = db.Stock_Magazin.Where(st => st.codeProduit.Equals(currentProd.codeProduit)).ToList <Stock_Magazin>();
                        Form1.SetMessageLog($"Retirer tous le stock du produit {stock2delete[0].Produit.libelle} du Fournisseur {stock2delete[0].Produit.Fournisseur.nomFournisseur}  {stock2delete[0].Produit.Fournisseur.prenomFournisseur}.");
                        db.Stock_Magazin.RemoveRange(stock2delete);
                        db.SaveChanges();
                        this.Dispose();



                        // MessageBox.Show("product deleted");
                    }
                    catch (Exception excep)
                    {
                        MessageBox.Show("Error! cant delete product :" + excep.Message);
                    }
                }
            }
        }
Esempio n. 9
0
        private void Ajouter_Click(object sender, EventArgs e)
        {
            var db = new dbContext();

            if (fournisseur.nomFournisseur != null)
            {
                try
                {
                    var           prod  = db.Produits.ToList <Produit>()[comboBox1.SelectedIndex];
                    Stock_Magazin stock = new Stock_Magazin();
                    stock.codeProduit    = prod.codeProduit;
                    stock.codeMagazin    = 1;
                    stock.dateExpiration = dateExpirePick.Value;
                    stock.quantite       = Convert.ToInt32(tbQuantite.Text);
                    db.Stock_Magazin.Add(stock);
                    db.SaveChanges();
                    MessageBox.Show("Produit ajouté!", "Success", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    this.Close();
                    //refrech flowlayoutpanel1
                    if (formParent.filter == 0)
                    {
                        formParent.btnViewAll_Click(null, null);
                    }
                    else if (formParent.filter == 1)
                    {
                        formParent.btnDisponible_Click(null, null);
                    }
                    else if (formParent.filter == 2)
                    {
                        formParent.btnNonDisponible_Click(null, null);
                    }
                    Form1.SetMessageLog("L'ajout d'un nouveau stock de " + prod.libelle + ", quantité: " + stock.quantite + ", date d'expiration: " + stock.dateExpiration);
                }
                catch (Exception exc)
                {
                    MessageBox.Show("Error! " + exc.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                }
            }
            else
            {
                MessageBox.Show("Veuillez remplir tous les champs demandés", "Error", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
        }
        private void Ajouter_Click(object sender, EventArgs e)
        {
            var db = new dbContext();

            if (tb_Prix_Achat.Text == "" || tb_Prix_Vente.Text == "" || tbLibelle.Text == "" || tbDescription.Text == "")
            {
                MessageBox.Show("Remplire tous les chapms", "Error", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                return;
            }
            if (isDetailFournisseur)
            {
                Decimal prix_Achat, prix_Vente;
                try
                {
                    string[] pat = tb_Prix_Achat.Text.Split('.');
                    string[] pvt = tb_Prix_Vente.Text.Split('.');
                    string   pa  = tb_Prix_Achat.Text;
                    string   pv  = tb_Prix_Vente.Text;
                    if (tb_Prix_Achat.Text.Split('.').Length > 1)
                    {
                        pa = pa.Replace(".", ",").Trim();
                    }
                    if (tb_Prix_Vente.Text.Split('.').Length > 1)
                    {
                        pv = pv.Replace(".", ",").Trim();
                    }
                    prix_Achat = Convert.ToDecimal(pa);
                    prix_Vente = Convert.ToDecimal(pv);
                }
                catch (Exception)
                {
                    MessageBox.Show("Le prix doit être un nombre decimal", "Error", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    return;
                }


                try
                {
                    Produit prod = db.Produits.Where(p => p.codeProduit == this.prod2Edit.codeProduit).FirstOrDefault <Produit>();
                    if (prod != null)
                    {
                        prod.idFournisseur = prod.Fournisseur.idFournisseur;
                        prod.libelle       = tbLibelle.Text;
                        prod.prixAchat     = prix_Achat;
                        prod.prixVente     = prix_Vente;
                        prod.description   = tbDescription.Text;
                        prod.img           = (byte[])(new ImageConverter()).ConvertTo(pictureBox1.Image, typeof(byte[]));
                    }
                    else
                    {
                        MessageBox.Show("Opération Non effectuer", "Error", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    }
                    db.SaveChanges();
                    formParent2.remplireLayout(db);
                    this.Close();
                }
                catch (Exception exc)
                {
                    MessageBox.Show("Error! " + exc.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                }
            }
        }
        private void Ajouter_Click(object sender, EventArgs e)
        {
            var     db = new dbContext();
            Decimal prix_Achat, prix_Vente;

            if (tb_Prix_Achat.Text == "" || tb_Prix_Vente.Text == "" || tbLibelle.Text == "" || tbDescription.Text == "")
            {
                MessageBox.Show("Remplire tous les chapms", "Error", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                return;
            }
            try
            {
                string[] pat = tb_Prix_Achat.Text.Split('.');
                string[] pvt = tb_Prix_Vente.Text.Split('.');
                string   pa  = tb_Prix_Achat.Text;
                string   pv  = tb_Prix_Vente.Text;
                if (tb_Prix_Achat.Text.Split('.').Length > 1)
                {
                    pa = pa.Replace(".", ",").Trim();
                }
                if (tb_Prix_Vente.Text.Split('.').Length > 1)
                {
                    pv = pv.Replace(".", ",").Trim();
                }
                prix_Achat = Convert.ToDecimal(pa);
                prix_Vente = Convert.ToDecimal(pv);
            }
            catch (Exception)
            {
                MessageBox.Show("Le prix doit être un nombre decimal", "Error", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                return;
            }

            int dv = 1;

            try
            {
                dv = Convert.ToInt32(textBoxDV.Text);
            }
            catch (Exception)
            {
                MessageBox.Show("Le duréé doit être un nombre un eniter", "Error", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                return;
            }

            try
            {
                Produit prod = new Produit();
                if (prod != null)
                {
                    prod.idFournisseur      = idFournisseurAajouter;
                    prod.libelle            = tbLibelle.Text;
                    prod.prixAchat          = prix_Achat;
                    prod.prixVente          = prix_Vente;
                    prod.description        = tbDescription.Text;
                    prod.dureeValidite_jour = dv;
                    using (MemoryStream mStream = new MemoryStream())
                    {
                        if (pictureBox1.Image != null)
                        {
                            pictureBox1.Image.Save(mStream, pictureBox1.Image.RawFormat);
                            prod.img = mStream.ToArray();
                        }
                        else
                        {
                            prod.img = null;
                        }
                    }
                }
                else
                {
                    MessageBox.Show("Opération Non effectuer", "Error", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                }
                var fournisseur = db.Fournisseurs.Where(f => f.idFournisseur == idFournisseurAajouter).FirstOrDefault();
                Form1.SetMessageLog($"L'ajout d'un nouveau produit '{tbLibelle.Text}' au liste des produits du  fournisseur {fournisseur.nomFournisseur} {fournisseur.prenomFournisseur} ");
                db.Produits.Add(prod);
                db.SaveChanges();
                formParent2.remplireLayout(db);
                this.Close();
            }
            catch (Exception exc)
            {
                MessageBox.Show("Error! " + exc.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                throw exc;
            }
        }