public async Task <IActionResult> Edit(int?id) { if (id == null) { return(NotFound()); } ProduitCatAdapter adaptateur = new ProduitCatAdapter(); adaptateur.Produit = await _context.Produits .Include(p => p.Categorie) .Include(p => p.Valeur) .ThenInclude(a => a.Attribut) .Include(p => p.MotClef) .Include(p => p.Provients) .ThenInclude(tva => tva.TauxTVAObjet) .Include(p => p.TauxTVA) .SingleOrDefaultAsync(m => m.ID == id); adaptateur.ListCat = await _context.Categories.Where(c => !(c.CategorieEnfant.Any())) .ToListAsync(); adaptateur.ListMotClef = await _context.MotClefs .Include(mc => mc.Produit) .ToListAsync(); adaptateur.TauxTVA = await _context.TVA.ToListAsync(); foreach (var item in adaptateur.Produit.MotClef) { int i = 0; while (i < adaptateur.ListMotClef.Count) { var item2 = adaptateur.ListMotClef[i]; if (item2.Produit.Contains(item)) { adaptateur.ListMotClef.Remove(item2); } else { ++i; } } } adaptateur.ListFournisseur = await _context.Fournisseurs .ToListAsync(); adaptateur.TousLesAttributs = await _context.Attributs .ToListAsync(); if (adaptateur == null) { return(NotFound()); } return(View(adaptateur)); }
// GET: Produits/Create //[Authorize(Roles = "gestionnaire")] public async Task <IActionResult> Create() { ProduitCatAdapter pc = new ProduitCatAdapter(); pc.ListCat = await _context.Categories.ToListAsync(); pc.ListMotClef = await _context.MotClefs.ToListAsync(); pc.TousLesAttributs = await _context.Attributs.ToListAsync(); pc.ListFournisseur = await _context.Fournisseurs.ToListAsync(); return(View(pc)); }
public async Task <IActionResult> Create() { ProduitCatAdapter pc = new ProduitCatAdapter(); pc.ListCat = await _context.Categories.Where(c => !(c.CategorieEnfant.Any())).ToListAsync(); pc.ListMotClef = await _context.MotClefs.ToListAsync(); pc.TousLesAttributs = await _context.Attributs.ToListAsync(); pc.ListFournisseur = await _context.Fournisseurs.ToListAsync(); pc.TauxTVA = await _context.TVA.OrderByDescending(t => t.Valeur).ToListAsync(); return(View(pc)); }
public async Task <IActionResult> Create(ProduitCatAdapter produitcatAdapter) { var prixvente = Request.Form["Prixvente"]; var prixachat = Request.Form["Prix"]; produitcatAdapter.Produit.Prix = double.Parse(prixvente.ToString().Replace('.', ',')); if (ModelState.IsValid) { try { //gestion de l'image et du produit MemoryStream ms = new MemoryStream(); var images = Request.Form.Files["Image"]; images.OpenReadStream().CopyTo(ms); produitcatAdapter.Produit.Image = ms.ToArray(); produitcatAdapter.Produit.Date = DateTime.Now; produitcatAdapter.Produit.Visible = true; produitcatAdapter.Produit.QuantiteStockTotal = produitcatAdapter.Produit.QuantiteEmballage * produitcatAdapter.Produit.NBPieceEmballage + produitcatAdapter.Produit.QuantiteStock; produitcatAdapter.Produit.TauxTVAID = int.Parse(Request.Form["Produit.TauxTVAID"]); _context.Add(produitcatAdapter.Produit);//insert le produit var tableauIDAttributs = Request.Form["nameAttribut"]; var tableauValeurs = Request.Form["ValueAttribut"]; List <int> listIDAttribut = new List <int>(); foreach (var NameAttribut in tableauIDAttributs) { listIDAttribut.Add(int.Parse(NameAttribut)); } List <String> listValeur = new List <String>(); foreach (var Value in tableauValeurs) { listValeur.Add(Value); } List <Valeur> ListValeurConstruit = new List <Valeur>(); int i = 0; while (i < listIDAttribut.Count && i < listValeur.Count) { Valeur v = new Valeur { Valeurs = listValeur[i] }; v.AttributID = listIDAttribut[i]; ++i; v.ProduitID = produitcatAdapter.Produit.ID; _context.Add(v); } //récupère les id mots clef var tableauMotClef = Request.Form["MotClef"]; List <int> ListMotClef = new List <int>(); foreach (var mot in tableauMotClef) { ListMotClef.Add(int.Parse(mot)); } foreach (int motClef in ListMotClef) { ProduitMotClef pm = new ProduitMotClef { MotClefId = motClef, ProduitID = produitcatAdapter.Produit.ID }; _context.Add(pm); } float Prix2 = 0; if (!(prixachat.ToString().Equals(""))) { Prix2 = float.Parse(prixachat.ToString().Replace('.', ',')); } //gere le fournisseur int fournisseurID = int.Parse((Request.Form["select"]).ToString()); Provient provient = new Provient { Prix = Prix2, //TauxTVA = int.Parse(Request.Form["tauxTVA"]), TauxTVAID = int.Parse(Request.Form["tauxTVA"]), QuantiteMinCommande = int.Parse(Request.Form["quantite"]), ProduitID = produitcatAdapter.Produit.ID, FournisseurID = fournisseurID }; _context.Add(provient); Historique h = new Historique { Date = DateTime.Now, ProduitID = produitcatAdapter.Produit.ID, Action = "Creation", QteStock = produitcatAdapter.Produit.QuantiteStockTotal, QteMouv = produitcatAdapter.Produit.QuantiteStockTotal, }; _context.Add(h); await _context.SaveChangesAsync(); return(RedirectToAction("")); } catch (Exception e) { } } produitcatAdapter.ListCat = _context.Categories.ToList(); return(View(produitcatAdapter)); }
//[Authorize(Roles = "gestionnaire")] public async Task <IActionResult> Create(ProduitCatAdapter produitcatAdapter) { if (ModelState.IsValid) { //gestion de l'image et du produit MemoryStream ms = new MemoryStream(); var images = Request.Form.Files["Image"]; images.OpenReadStream().CopyTo(ms); produitcatAdapter.Produit.Image = ms.ToArray(); _context.Add(produitcatAdapter.Produit);//insert le produit var tableauIDAttributs = Request.Form["nameAttribut"]; var tableauValeurs = Request.Form["ValueAttribut"]; List <int> listIDAttribut = new List <int>(); foreach (var NameAttribut in tableauIDAttributs) { listIDAttribut.Add(int.Parse(NameAttribut)); } List <String> listValeur = new List <String>(); foreach (var Value in tableauValeurs) { listValeur.Add(Value); } List <Valeur> ListValeurConstruit = new List <Valeur>(); int i = 0; while (i < listIDAttribut.Count && i < listValeur.Count) { Valeur v = new Valeur { Valeurs = listValeur[i] }; v.AttributID = listIDAttribut[i]; ++i; v.ProduitID = produitcatAdapter.Produit.ID; _context.Add(v); await _context.SaveChangesAsync(); } //récupère les id mots clef var tableauMotClef = Request.Form["MotClef"]; List <int> ListMotClef = new List <int>(); foreach (var mot in tableauMotClef) { ListMotClef.Add(int.Parse(mot)); } foreach (int motClef in ListMotClef) { ProduitMotClef pm = new ProduitMotClef { MotClefId = motClef, ProduitID = produitcatAdapter.Produit.ID }; _context.Add(pm); await _context.SaveChangesAsync(); } //gere le fournisseur int fournisseurID = int.Parse(Request.Form["select"]); Provient provient = new Provient { Prix = int.Parse(Request.Form["Prix"]), TauxTVA = int.Parse(Request.Form["tauxTVA"]), QuantiteMinCommande = int.Parse(Request.Form["quantite"]), ProduitID = produitcatAdapter.Produit.ID, FournisseurID = fournisseurID }; _context.Add(provient); await _context.SaveChangesAsync(); return(RedirectToAction("Index")); } produitcatAdapter.ListCat = _context.Categories.ToList(); return(View(produitcatAdapter)); }