public ActionResult DeleteP(short id, short idm)
        {
            var liste_produit1 = from l in db.Liste_produit_achat.Include(l => l.Article).Include(l => l.Facture_achat)
                                 where l.Id_facture == idm && l.Id_article == id
                                 select l;

            Liste_produit_achat L = liste_produit1.First();

            Facture_achat Fa = new Facture_achat();
            Fa = db.Facture_achat.Find(idm);

            Article article = db.Article.Find(id);
            if (Fa.Type_facture.Trim() == "Bon de commande".Trim())
            { }
            else
            {
                article.Qte_article = article.Qte_article - L.Quantite;
                db.Entry(article).State = EntityState.Modified;
                db.SaveChanges();
            }
            db.Liste_produit_achat.Remove(L);
            db.SaveChanges();

            return RedirectToAction("Index", new { idm = idm });

            /* var articles = db.Article;
             ViewData["articles"] = articles.ToList();

             ViewData["op"] = db.Mouvement_stock.Find(idm);

             var liste_produit = from l in db.Liste_produit.Include(l => l.Article).Include(l => l.Mouvement_stock)
                                 where l.Id_operation == idm
                                 select l;
             return View(liste_produit.ToList());*/
        }
Beispiel #2
0
        public ActionResult Create(Facture_achat fac, string Mrg, string TypeF, string test)
        {
            fac.Mode_reglement = Mrg;
            fac.Type_facture = TypeF;
            try
            {
                if (ModelState.IsValid)
                {
                    try
                    {
                        int px = test.IndexOf("-") + 2;
                        int p = test.Length - px;
                        string v = test.Substring(px, p);
                        fac.Id_fournisseur = short.Parse(v);

                        db.Facture_achat.Add(fac);
                        db.SaveChanges();
                        return RedirectToAction("Index", "Liste_produit_achat", new { idm = fac.Id_facture });
                    }
                    catch
                    {
                        ModelState.AddModelError("", "Le fournisseur est incorrect");
                    }

                }
                //ViewBag.Id_fournisseur = new SelectList(db.Fournisseur, "Id_fournisseur", "Nom_fournisseur");
                var fournisseurs = db.Fournisseur.ToList();

                List<String> listToBind = new List<String>();

                foreach (var item in fournisseurs)
                {
                    listToBind.Add(item.Nom_fournisseur + " " + item.Prenom_fournisseur + " - " + item.Id_fournisseur);
                }

                ViewData["Fournisseur"] = listToBind;

                return View();

            }
            catch
            {
                var fournisseurs = db.Fournisseur.ToList();

                List<String> listToBind = new List<String>();

                foreach (var item in fournisseurs)
                {
                    listToBind.Add(item.Nom_fournisseur + " " + item.Prenom_fournisseur + " - " + item.Id_fournisseur);
                }

                ViewData["Fournisseur"] = listToBind;
                // ViewBag.Id_fournisseur = new SelectList(db.Fournisseur, "Id_fournisseur", "Nom_fournisseur");
                return View();
            }
        }
Beispiel #3
0
        //
        // GET: /FactureA/Create
        public ActionResult Create()
        {
            //ViewBag.Id_fournisseur = new SelectList(db.Fournisseur, "Id_fournisseur", "Nom_fournisseur");
            var fournisseurs = db.Fournisseur.ToList();
            Facture_achat facture_achat = new Facture_achat();

            List<String> listToBind = new List<String>();

            foreach (var item in fournisseurs)
            {
                listToBind.Add(item.Nom_fournisseur + " " + item.Prenom_fournisseur + " - " + item.Id_fournisseur);
            }

            ViewData["Fournisseur"] = listToBind;
            var fa = db.Facture_achat.Max(a => a.Id_facture) + 1;

            facture_achat.Code_facture = MyGlobalVariables.FormatCode("FAA", fa);
            return View(facture_achat);
        }
Beispiel #4
0
        public ActionResult Edit(int id, Facture_achat facture_achat, string type="")
        {
            Facture_achat fa = new Facture_achat();
              try
               {
               fa = db.Facture_achat.Find(facture_achat.Id_facture);
               if (type == "")
               fa.Type_facture = facture_achat.Type_facture;
               else
               {
              if (fa.Type_facture == "Bon de commande")
              {
                var lp = from l in db.Liste_produit_achat.Include(l => l.Article)
                         where l.Id_facture == fa.Id_facture
                         select l;
                 IList<Liste_produit_achat> ListP = lp.ToList();
                 // using (var context = new STOCKONEntities())
                //  {
                  foreach (Liste_produit_achat listep in ListP)
                  {
                      Article article = new Article();
                      article = listep.Article;
                    article.Qte_article = article.Qte_article + listep.Quantite;
                    db.Entry(article).State = EntityState.Modified;
                    db.SaveChanges();
                  }
              //    }

              }

              fa.Type_facture = type;

               }

                db.Entry(fa).State = EntityState.Modified;
                db.SaveChanges();
                return RedirectToAction("Index");
               }
             catch
            {
                return View(fa);
            }
        }
Beispiel #5
0
        //
        // GET: /FactureA/Edit/5
        public ActionResult Edit(int id)
        {
            Facture_achat facture_achat = new Facture_achat();
            facture_achat = db.Facture_achat.Find(id);

            if (facture_achat.Type_facture.Trim() == "Facture")
                facture_achat.Type_facture = "Facture comptabilisée";

            return View(facture_achat);
        }
Beispiel #6
0
        private ModelFacture CreatefactureA(short id)
        {
            ModelFacture modelfacture = new ModelFacture();
            Facture_achat Fa = new Facture_achat();
            Preference preference = new Preference();

            var facture = from l in db.Facture_achat.Include(l => l.Fournisseur)
                          where l.Id_facture == id
                          select l;

            var ListeP = from l in db.Liste_produit_achat.Include(l => l.Article)
                         where l.Id_facture == id
                         select l;

            preference = db.Preference.Find(1);

            Fa = facture.ToList().ElementAt(0);

            if (Fa.Type_facture == "Facture" || Fa.Type_facture == "Facture comptabilisée")
                modelfacture.Type_Op = "Facture de vente";
            else
                modelfacture.Type_Op = Fa.Type_facture;

            modelfacture.Nom_client = Fa.Fournisseur.Nom_fournisseur + " " + Fa.Fournisseur.Prenom_fournisseur;
            modelfacture.Telephone_client = Fa.Fournisseur.Telephone_fournisseur;
            modelfacture.Adresse_client = Fa.Fournisseur.Adresse_fournisseur;
            modelfacture.Num_Facture = Fa.Code_facture;
            modelfacture.Date_Facture = Fa.Date_facture.ToShortDateString();
            modelfacture.Nom_E = preference.Nom;
            modelfacture.Adresse_E = preference.Adresse;
            modelfacture.Numtel_E = preference.Num_telephone;
            modelfacture.Liste_produit_achat = ListeP.ToList();

            return modelfacture;
        }
        public ActionResult Update(short id, short idm)
        {
            //Create a new instance of the Customer class.
            var liste_produit1 = from l in db.Liste_produit_achat.Include(l => l.Article).Include(l => l.Facture_achat)
                                 where l.Id_facture == idm && l.Id_article == id
                                 select l;

            Facture_achat Fa = new Facture_achat();
            Fa = db.Facture_achat.Find(idm);

            Liste_produit_achat L = liste_produit1.First();
            var QteP = L.Quantite;

            //Article Art = new Article();
               // Art = db.Article.Find(L.Id_article);

            //Perform model binding (fill the customer properties and validate it).
            //L.Id_article = article;
            if (TryUpdateModel(L))
            {
                //The model is valid - insert the customer and redisplay the grid.
                L.Prix_total = L.Prix * L.Quantite;
                db.Entry(L).State = EntityState.Modified;
                db.SaveChanges();

                if (Fa.Type_facture.Trim() == "Bon de commande".Trim())
                { }
                else
                {
                    L.Article.Qte_article = L.Article.Qte_article - QteP + L.Quantite;
                    db.Entry(L.Article).State = EntityState.Modified;
                    db.SaveChanges();
                }
               /* Art.Qte_article = Art.Qte_article - QteP;
                db.Entry(Art).State = EntityState.Modified;
                db.SaveChanges();*/

                //GridRouteValues() is an extension method which returns the
                //route values defining the grid state - current page, sort expression, filter etc.
                return RedirectToAction("Index", new { idm = L.Id_facture });
            }

            if (L.Quantite > 0)
            {
                L.Prix_total = L.Prix * L.Quantite;
                db.Entry(L).State = EntityState.Modified;
                db.SaveChanges();
                if (Fa.Type_facture.Trim() == "Bon de commande".Trim())
                { }
                else
                {
                    L.Article.Qte_article = L.Article.Qte_article - QteP + L.Quantite;
                    db.Entry(L.Article).State = EntityState.Modified;
                    db.SaveChanges();
                }
                return RedirectToAction("Index", new { idm = L.Id_facture });

             /*   Art.Qte_article = Art.Qte_article - QteP;
                db.Entry(Art).State = EntityState.Modified;
                db.SaveChanges();
                return RedirectToAction("Index", new { idm = L.Id_facture });*/
            }
            //The model is invalid - render the current view to show any validation errors.
            var articles = db.Article;
            ViewData["articles"] = articles.ToList();

            ViewData["Fa"] = db.Facture_achat.Find(idm);

            var liste_produit = from l in db.Liste_produit_achat.Include(l => l.Article).Include(l => l.Facture_achat)
                                where l.Id_facture == idm
                                select l;
            return View("Index", liste_produit.ToList());
        }
        public ActionResult Insert(short idm, string article)
        {
            //Create a new instance of the Customer class.
            try
            {
                int px = article.IndexOf("-") + 2;
                int p = article.Length - px;
                string v = article.Substring(px, p);

                Liste_produit_achat customer = new Liste_produit_achat
                {
                    Id_article = short.Parse(v),
                    Id_facture = idm
                };

                Facture_achat Fa = new Facture_achat();
                Fa = db.Facture_achat.Find(idm);

                Article Art = new Article();
                Art = db.Article.Find(customer.Id_article);

                //Perform model binding (fill the customer properties and validate it).
                if (TryUpdateModel(customer))
                {
                    //The model is valid - insert the customer and redisplay the grid.
                    customer.Prix_total = customer.Prix * customer.Quantite;
                    db.Liste_produit_achat.Add(customer);
                    db.SaveChanges();

                    if (Fa.Type_facture.Trim() == "Bon de commande".Trim())
                    { }
                    else
                    {
                        Art.Qte_article = Art.Qte_article + customer.Quantite;
                        db.Entry(Art).State = EntityState.Modified;
                        db.SaveChanges();
                    }
                    //GridRouteValues() is an extension method which returns the
                    //route values defining the grid state - current page, sort expression, filter etc.
                    return RedirectToAction("Index", new { idm = customer.Id_facture });
                }

                if (customer.Quantite > 0)
                {
                    customer.Prix_total = customer.Prix * customer.Quantite;
                    db.Liste_produit_achat.Add(customer);
                    db.SaveChanges();
                    if (Fa.Type_facture.Trim() == "Bon de commande".Trim())
                    { }
                    else
                    {
                        Art.Qte_article = Art.Qte_article + customer.Quantite;
                        db.Entry(Art).State = EntityState.Modified;
                        db.SaveChanges();
                    }
                    return RedirectToAction("Index", new { idm = customer.Id_facture });
                }
                //The model is invalid - render the current view to show any validation errors.
            }
            catch
            {
                ModelState.AddModelError("", "l'article est incorrect");
            }
            var articles = db.Article;
            ViewData["articles"] = articles.ToList();

            List<String> listToBind = new List<String>();

            Preference preference = new Preference();
            preference = db.Preference.Find(1);

            if (preference.CRecherche.Trim() == "Code article".Trim())
            {
                foreach (var item in articles.ToList())
                {
                    listToBind.Add(item.Code_article + " - " + item.Id_article);
                }
            }
            else
            {
                foreach (var item in articles.ToList())
                {
                    listToBind.Add(item.Libelle_article + " - " + item.Id_article);
                }
            }
            ViewData["art"] = listToBind;

            ViewData["Fa"] = db.Facture_achat.Find(idm);

            var liste_produit = from l in db.Liste_produit_achat.Include(l => l.Article).Include(l => l.Facture_achat)
                                where l.Id_facture == idm
                                select l;
            return View("index",liste_produit.ToList());
        }