public ActionResult Create(Article article) { if (ModelState.IsValid) { var dao = new ArticleDAO(); dao.AddArticle(article); return(RedirectToAction("Index", "Article", "Admin")); } SetViewBags(); return(View(article)); }
/// <summary> /// Créer l'article lorsque l'on clique sur le bouton valider /// </summary> /// <param name="Sender"></param> /// <param name="Event"></param> private void OkButton_Click(object Sender, EventArgs Event) { // vérifie si le contenue du champ reference une reference d'article valide if (ArticleDAO.VerifArticleRef(RefTextBox.Text) == true) { // verifie que le prix puis la quantité soient bien des nombres float FloatPrice; if (float.TryParse(PriceHTTextBox.Text, out FloatPrice)) { int IntQuantity; if (int.TryParse(QuantityTextBox.Text, out IntQuantity)) { // vérifie que les champs soient remplie if (DescriptionTextBox.Text != "" && PriceHTTextBox.Text != "" && QuantityTextBox.Text != "" && BrandComboBox.Text != "" && FamilyComboBox.Text != "" && SubFamilyComboBox.Text != "") { if (ArticleDAO.GetArticleById(RefTextBox.Text) == null) { Article NewArticle = new Article(RefTextBox.Text, DescriptionTextBox.Text, (SubFamily)SubFamilyComboBox.SelectedItem, (Brand)BrandComboBox.SelectedItem, FloatPrice, IntQuantity); ArticleDAO.AddArticle(NewArticle); this.Close(); } else { MessageBox.Show("Ref existe déjà", "Erreur", MessageBoxButtons.OK, MessageBoxIcon.Error); } } else { MessageBox.Show("Les champs doivent etre remplient", "Erreur", MessageBoxButtons.OK, MessageBoxIcon.Error); } } else { MessageBox.Show("La quantite doit etre un nombre", "Erreur", MessageBoxButtons.OK, MessageBoxIcon.Error); } } else { MessageBox.Show("Le prix doit etre un nombre", "Erreur", MessageBoxButtons.OK, MessageBoxIcon.Error); } } else { MessageBox.Show("Référence non valide, elle doit etre de cette forme : F0000000", "Erreur", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
public ActionResult AddArticle(string Section, Article article) { SectionDAO sectionDAO = new SectionDAO(); var section = sectionDAO.GetSection(Section); Article addArticle = new Article() { Section_articlesID = section.Id, Title = article.Title, Description = article.Description, Body = article.Body, Author = article.Author, Date = article.Date }; ArticleDAO articleDAO = new ArticleDAO(); articleDAO.AddArticle(addArticle); return(RedirectToAction("Index")); }
/// <summary> /// Lance l'import au clic sur "importer et Ecraser" /// </summary> /// <param name="Sender"></param> /// <param name="Event"></param> private void OverwriteButton_Click(object Sender, EventArgs Event) { //Nombre de ligne du fichier (-1 pour éviter la colonne titre) int NbLine = -1; // test les erreurs avec le fichier CSV try { // compte le nombre de ligne du fichier using (var reader = new StreamReader(@CSVNameTextBox.Text)) { while (!reader.EndOfStream) { var line = reader.ReadLine(); var values = line.Split(';'); NbLine++; } } // met le maximun de la progress bar au nombre de ligne ImportProgressBar.Maximum = NbLine; using (var reader = new StreamReader(@CSVNameTextBox.Text)) { // nettoie la bd try { using (var con = new SQLiteConnection("Data Source = Bacchus.SQLite ;Version=3;New=False;Compress=True;")) { // supprime le contenu de la table articles using (var Command = new SQLiteCommand("DELETE FROM Articles;")) { //execute query Command.Connection = con; Command.Connection.Open(); Command.ExecuteNonQuery(); con.Close(); } // supprime le contenu de la table marques using (var Command = new SQLiteCommand("DELETE FROM Marques;")) { //execute query Command.Connection = con; Command.Connection.Open(); Command.ExecuteNonQuery(); con.Close(); } // supprime le contenu de la table sousfamilles using (var Command = new SQLiteCommand("DELETE FROM SousFamilles;")) { //execute query Command.Connection = con; Command.Connection.Open(); Command.ExecuteNonQuery(); con.Close(); } // supprime le contenu de la table familles using (var Command = new SQLiteCommand("DELETE FROM Familles;")) { //execute query Command.Connection = con; Command.Connection.Open(); Command.ExecuteNonQuery(); con.Close(); } } } catch (Exception ExceptionCaught) { MessageBox.Show("Error while clearing db : " + ExceptionCaught.Message, ExceptionCaught.GetType().ToString()); } bool TitleLine = true; while (!reader.EndOfStream) { var line = reader.ReadLine(); var values = line.Split(';'); // verification qui permet d'éviter la ligne titre if (TitleLine == false) { // verifie si la reference est valide if (ArticleDAO.VerifArticleRef(values[1]) == true) { // cherche la quantité, si elle existe, dans la premiere colonne var firstSpaceIndex = values[0].IndexOf(" "); var Quantity = values[0].Substring(0, firstSpaceIndex); // la quantite si elle existe var Description = values[0].Substring(firstSpaceIndex + 1); // la description si il y a un quantite int IntQuantity; if (int.TryParse(Quantity, out IntQuantity) == false) { Description = values[0]; IntQuantity = 1; } // si la famille existe la trouve sinon la creer Family FamilyToAdd = FamilyDAO.GetFamilyByName(values[3]); if (FamilyToAdd == null) { FamilyToAdd = new Family(values[3]); FamilyDAO.AddFamily(FamilyToAdd); } // si la sous famille existe la trouve sinon la creer SubFamily SubFamilyToAdd = SubFamilyDAO.GetSubFamilyByName(values[4], FamilyToAdd); if (SubFamilyToAdd == null) { SubFamilyToAdd = new SubFamily(values[4], FamilyToAdd); SubFamilyDAO.AddSubFamily(SubFamilyToAdd); } // si la marque existe la trouve sinon la creer Brand BrandToAdd = BrandDAO.GetBrandByName(values[2]); if (BrandToAdd == null) { BrandToAdd = new Brand(values[2]); BrandDAO.AddBrand(BrandToAdd); } // vérifie si le prix est bien un double float FloatPrice; if (float.TryParse(values[5], out FloatPrice)) { // si la reference de l'article existe la trouve sinon creer l'article Article ArticleToAdd = ArticleDAO.GetArticleById(values[1]); if (ArticleToAdd == null) { //créer l'article et le rajoute à la bd ArticleToAdd = new Article(values[1], Description, SubFamilyToAdd, BrandToAdd, FloatPrice, IntQuantity); ArticleDAO.AddArticle(ArticleToAdd); // une ligne rajoutée, on avance donc d'une étape dans la progress bar ImportProgressBar.PerformStep(); } } } } else { TitleLine = false; } } this.Close(); } } catch (Exception ExceptionCaught) { MessageBox.Show(ExceptionCaught.Message, "Erreur : " + ExceptionCaught.GetType().ToString(), MessageBoxButtons.OK, MessageBoxIcon.Error); } }