//Afficher un article dans le fourmulaire nouvelle commande public static void Afficher(NouvelleBonDistribution frm) { GridViewRow myRow = frm.GridArticles.SelectedRow; frm.TxtNumArticle.Text = myRow.Cells[1].Text; frm.TxtNom.Text = myRow.Cells[2].Text; }
//Ajout d'une ligne de bon de distribution public static void Ajouter(NouvelleBonDistribution frm) { try { int numArticle = int.Parse(frm.TxtNumArticle.Text); int quantite = int.Parse(frm.TxtQuantite.Text); //Avant d'aller plus loin, verifier si l'article est en stock ou possede la qte demandée Article article = GestionArticle.Rechercher(numArticle); if (article != null) { StockCentral stockCentral = article.StockCentral; if (stockCentral != null) { if (stockCentral.qte >= quantite) { BonDistribution bonDistribution = frm.Session["bonDistribution"] as BonDistribution; LigneBonDistribution ligne = RechercherLigneBonDistribution(numArticle, bonDistribution.LigneBonDistributions); if (ligne == null) { ligne = new LigneBonDistribution { numArticle = numArticle, quantite = quantite, //Article=article }; bonDistribution.LigneBonDistributions.Add(ligne); } else { ligne.quantite += quantite; } frm.GridViewDistribution.DataSource = bonDistribution.LigneBonDistributions; frm.GridViewDistribution.DataBind(); frm.TxtNumArticle.Text = ""; frm.TxtNom.Text = ""; frm.TxtQuantite.Text = ""; frm.LblResultatEnregistrer.Text = ""; frm.LblResultatTxtQuantite.Text = "Article a été ajouté dans la liste bon distribution"; } else { //Message: Quantite insufisante, la quantite en etock est : stockCentral.qte frm.LblResultatTxtQuantite.Text = "Quantite insufisante! La quantite en etock est : " + stockCentral.qte; } } else { //Message: Cet article n'est pas en stock, Veuillez commander SVP! frm.LblResultatTxtQuantite.Text = "Cet article n'est pas en stock, Veuillez commander SVP!"; } } } catch (Exception e) { frm.LblResultatTxtQuantite.Text = "Champ oblitatoire et en numérique!"; } }
public static void Enregistrer(NouvelleBonDistribution frm) { //L'utilisateur en cours Utilisateur utilisateur = frm.Session["utilisateur"] as Utilisateur; //Mon fammeux objet bon distribution BonDistribution bnd = frm.Session["bonDistribution"] as BonDistribution; //Recuperer la filiale Filiale filiale = GestionFiliale.Rechercher(frm.CmbFiliale.SelectedValue); //Completion de l'objet bondistribution bnd.numFiliale = filiale.numFiliale; bnd.dateBonDistribution = DateTime.Now; bnd.nomUtilisateur = utilisateur.nomUtilisateur; //bnd.Filiale = filiale; bnd.NotificationBonDistributions.Add( new NotificationBonDistribution { message = "Un bon de distribution vous a été envoyé", dateNotification = DateTime.Now, etat = "0"//0: Nom, lu 1: Lu } ); using (var sim = new SIM_Context()) { //Mise à jour de la quantite du stock centrale pour chaque article distribué foreach (LigneBonDistribution l in bnd.LigneBonDistributions) { sim.Articles.Find(l.numArticle).StockCentral.qte -= l.quantite; } //Sauvegarde du bon de distribution bnd = sim.BonDistributions.Add(bnd); int result = sim.SaveChanges(); //Affichage numero bon de distribution frm.TxtNumBonDistribution.Text = bnd.numBonDistribution.ToString(); //Mise à jour du grid frm.GridViewDistribution.DataSource = bnd.LigneBonDistributions; frm.GridViewDistribution.DataBind(); frm.BtnEnregistrer.Enabled = false; frm.Session.Remove("bonDistribution"); frm.LblResultatEnregistrer.Text = "Bon de distribution enregistré avec succes!"; frm.LblResultatTxtQuantite.Text = ""; //Message de confirmation : Le bon de distribution a été sauvegardé avec succès! } }
//Supprimer une ligne du bon de distribution public static void supprimmerLigne(NouvelleBonDistribution frm, int numArticle) { BonDistribution bonDistribution = frm.Session["bonDistribution"] as BonDistribution; LigneBonDistribution ligne = RechercherLigneBonDistribution(numArticle, bonDistribution.LigneBonDistributions); if (ligne != null) { //Suppression de la ligne bonDistribution.LigneBonDistributions.Remove(ligne); //Mise à jour du grid frm.GridViewDistribution.DataSource = bonDistribution.LigneBonDistributions; frm.GridViewDistribution.DataBind(); } else { //Erreur systeme grave!!!!!! à ne pas traiter dans la page } }
//Lister articles dans le fenetre de bon de distribution public static void ListerArticles(NouvelleBonDistribution frm) { if (!frm.TxtArticle.Text.Equals("")) { if ((frm.GridArticles.DataSource = Rechercher(frm.TxtArticle.Text, true)) != null) { frm.GridArticles.DataBind(); } else { frm.LblResultatRechercherArticle.Text = "Rien trouvé..."; } } else { frm.LblResultatRechercherArticle.Text = "Le champ est vide"; } frm.LblResultatTxtQuantite.Text = ""; frm.TxtQuantite.Text = ""; frm.TxtNom.Text = ""; frm.TxtNumArticle.Text = ""; frm.LblResultatRechercherArticle.Text = ""; }
//Initilatisation du bon de distribution public static void InitialiserBon(NouvelleBonDistribution frm) { BonDistribution bonDistribution = new BonDistribution(); frm.Session["bonDistribution"] = bonDistribution; }
//Afficher une filiale selectionnée public static void AfficherFiliale(NouvelleBonDistribution frm) { Filiale f = Rechercher(frm.CmbFiliale.SelectedValue); frm.TxtInfoFiliale.Text = "Nom :" + f.nom + "\n" + "Adresse :" + f.adresse + "\n" + "Telephone :" + f.telephone; }
//Charger les filiales dans le combobox public static void ChargerFiliale(NouvelleBonDistribution frm) { frm.CmbFiliale.DataSource = Rechercher(); frm.CmbFiliale.DataTextField = "nom"; frm.CmbFiliale.DataBind(); }