コード例 #1
0
        public void AddMarque(String MarqueName, AddMarque AddMarque)
        {
            if (FamillesDao.FindFamilleByFamilleName(MarqueName))
            {
                MessageBox.Show("This name has already been used by a Famille!", "ERROR");
                AddMarque.textBox_MarqueName.Text = "";
                return;
            }

            if (SousFamillesDao.FindSousFamilleBySousFamilleName(MarqueName))
            {
                MessageBox.Show("This name has already been used by a SousFamille!", "ERROR");
                AddMarque.textBox_MarqueName.Text = "";
                return;
            }

            if (MarquesDao.FindMarqueByMarqueName(MarqueName))
            {
                MessageBox.Show("Marque Already exsited!", "ERROR");
                AddMarque.textBox_MarqueName.Text = "";
                return;
            }
            else
            {
                Marques Marque = new Marques(MarqueName);
                Marque.RefMarque = MarquesDao.GetMaxRefMarque() + 1;
                MarquesDao.AddMarque(Marque);
                if (MarquesDao.FindMarqueByMarqueName(MarqueName))
                {
                    MessageBox.Show("Add Marque succeed!");
                    AddMarque.Close();
                }
            }
        }
コード例 #2
0
        public void CsvImport(bool Flag, string ParamFilePath, FormImport FormImport)
        {
            ModelList           ModelList           = new ModelList();
            ModelListController ModelListController = new ModelListController();

            ModelList = ModelListController.GetAllModelList();
            ArticlesDao     ArticleDao     = new ArticlesDao();
            FamillesDao     FamilleDao     = new FamillesDao();
            MarquesDao      MarqueDao      = new MarquesDao();
            SousFamillesDao SousFamilleDao = new SousFamillesDao();
            Articles        Article        = new Articles();
            Marques         Marque         = new Marques();
            SousFamilles    SousFamille    = new SousFamilles();
            Familles        Famille        = new Familles();

            try
            {
                int AddedArticles    = 0;
                int ExistingArticles = 0;

                if (Flag == true)
                {
                    ModelList.Articles.Clear();
                    ModelList.Familles.Clear();
                    ModelList.Marques.Clear();
                    ModelList.SousFamilles.Clear();

                    ArticleDao.EmptyArticles();
                    SousFamilleDao.EmptySousFamilles();
                    MarqueDao.EmptyMarques();
                    FamilleDao.EmptyFamilles();
                }

                if (ParamFilePath == "")
                {
                    if (MessageBox.Show("Please choose a file!", "ERROR") == DialogResult.OK)
                    {
                        FormImport.label_FichierImporte.Text = "FileName: " + System.IO.Path.GetFileName(ChooseFile());
                    }
                }

                using (var StreamReader = new StreamReader(ParamFilePath, Encoding.Default))
                {
                    var NbLines = File.ReadAllLines(ParamFilePath).Length;

                    FormImport.progressBar.Maximum = NbLines;
                    FormImport.progressBar.Value   = 1;

                    StreamReader.ReadLine();

                    string Line;
                    while ((Line = StreamReader.ReadLine()) != null)
                    {
                        var Values          = Line.Split(';');
                        var Description     = Values[0].Trim();
                        var RefArticle      = Values[1].Trim();
                        var MarqueName      = Values[2].Trim();
                        var FamilleName     = Values[3].Trim();
                        var SousFamilleName = Values[4].Trim();
                        var Prix            = Values[5].Trim();

                        if (Prix.IndexOf("\"") >= 0)
                        {
                            Prix = Prix.Replace("\"", "");
                        }

                        if (Prix.EndsWith(","))
                        {
                            Prix = Prix.Remove(Prix.Length - 1, 1);
                        }

                        if (Prix.IndexOf(",") != -1)
                        {
                            int StartIndex = 0;
                            int Count      = 0;
                            while (true)
                            {
                                int Index = Prix.IndexOf(",", StartIndex);
                                if (Index != -1)
                                {
                                    Count++;
                                    StartIndex = Index + 1;
                                }
                                else
                                {
                                    break;
                                }
                            }

                            StartIndex = 0;
                            for (int i = 0; i < Count - 1; i++)
                            {
                                int Index = Prix.IndexOf(",", StartIndex);
                                StartIndex = Index + 1;
                                Prix       = Prix.Remove(Index, Index);
                            }

                            Prix = Prix.Replace(",", ".");
                        }

                        var PrixHT = double.Parse(Prix, new CultureInfo("en-US"));

                        if (ArticleDao.FindArticleByRefArticle(RefArticle))
                        {
                            ExistingArticles += 1;
                            if (Flag == false)
                            {
                                Article = ArticleDao.FindArticlesByRefArticle(RefArticle);
                                if (Article.Description != Description)
                                {
                                    Article.Description = Description;
                                }
                                if (Article.PrixHT != PrixHT)
                                {
                                    Article.PrixHT = PrixHT;
                                }
                                if (Article.Quantite != 1)
                                {
                                    Article.Quantite = 1;
                                }
                                if (!MarqueDao.FindMarqueByMarqueName(MarqueName))
                                {
                                    Marque = new Marques(MarqueName);
                                    ModelList.Marques.Add(Marque);
                                    MarqueDao.AddMarque(Marque);
                                    Article.Marque = Marque;
                                }
                                if (!SousFamilleDao.FindSousFamilleBySousFamilleName(SousFamilleName))
                                {
                                    SousFamille = new SousFamilles(SousFamilleName);
                                    ModelList.SousFamilles.Add(SousFamille);
                                    SousFamilleDao.AddSousFamille(SousFamille, Famille);
                                    Article.SousFamille = SousFamille;
                                }
                            }
                            continue;
                        }
                        else
                        {
                            AddedArticles += 1;
                        }

                        if (!MarqueDao.FindMarqueByMarqueName(MarqueName))
                        {
                            Marque = new Marques(MarqueName);
                            ModelList.Marques.Add(Marque);
                            MarqueDao.AddMarque(Marque);
                        }

                        if (!ArticleDao.FindArticleByFamilleName(FamilleName))
                        {
                            Famille = new Familles(FamilleName);
                            ModelList.Familles.Add(Famille);
                            FamilleDao.AddFamille(Famille);
                        }

                        if (!SousFamilleDao.FindSousFamilleBySousFamilleName(SousFamilleName))
                        {
                            SousFamille = new SousFamilles(SousFamilleName);
                            ModelList.SousFamilles.Add(SousFamille);
                            SousFamilleDao.AddSousFamille(SousFamille, Famille);
                        }

                        Article = new Articles(RefArticle, Description, FamilleDao.FindFamillesByRefSousFamille(SousFamille.RefSousFamille), SousFamille, Marque, PrixHT, 1);
                        ModelList.Articles.Add(Article);
                        ArticleDao.AddArticle(Article);

                        FormImport.progressBar.Value++;
                    }
                    StreamReader.Close();
                }

                string Message = "Nombre d'articles ajoutés " + AddedArticles + "\n" +
                                 "Nombre d'articles anomalies " + ExistingArticles;

                MessageBox.Show(" Import success!\n" + Message, System.IO.Path.GetFileName(ParamFilePath));

                String FileDirectory = Path.GetDirectoryName(ParamFilePath);
                //if (FileDirectory != null)
                //FormMain_FileSystemWatcher();
            }
            catch (System.IO.IOException)
            {
                MessageBox.Show("Please close the selected file!");
            }
        }
コード例 #3
0
        /// <summary>
        /// Add an article to the database.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void button_Add_Click(object sender, EventArgs e)
        {
            var RefArticle      = this.textBox_RefArticle.Text;
            var Description     = this.textBoxDescription.Text;
            var MarqueName      = this.comboBox_Marque.Text;
            var FamilleName     = this.comboBox_Famille.Text;
            var SousFamilleName = this.comboBox_SousFamille.Text;
            var PrixHT          = this.textBox_PrixHT.Text;
            var Quantite        = this.textBox_Quantite.Text;

            if (RefArticle == "")
            {
                MessageBox.Show("Please enter the RefArticle!", "ERROR");
            }

            else if (Description == "")
            {
                MessageBox.Show("Please enter the Description!", "ERROR");
            }

            else if (PrixHT == "")
            {
                MessageBox.Show("Please enter the Price!", "ERROR");
            }

            else if (Quantite == "")
            {
                MessageBox.Show("Please enter the Quantite!", "ERROR");
            }

            else if (MarqueName == "")
            {
                MessageBox.Show("Please enter the Marque Name!", "ERROR");
            }

            else if (FamilleName == "")
            {
                MessageBox.Show("Please enter the Famille Name!", "ERROR");
            }

            else if (SousFamilleName == "")
            {
                MessageBox.Show("Please enter the SousFamille Name!", "ERROR");
            }

            else if (RefArticle.Length >= 15)
            {
                MessageBox.Show("RefArticle is too long! The maximum length of the RefArticle is 15!");
            }

            else if (!float.TryParse(PrixHT, out var Prix))
            {
                MessageBox.Show("Please enter the right price!");
            }

            else if (!int.TryParse(Quantite, out var Number))
            {
                MessageBox.Show("Please enter the right quantity!");
            }

            else if (ArticleController.FindArticleByRefArticle(RefArticle))
            {
                MessageBox.Show("Article Already exsited!", "ERROR");
            }

            else
            {
                if (!SousFamilleController.FindSousFamilleBySousFamilleName(SousFamilleName))
                {
                    var Result = MessageBox.Show("SousFamille doesn't exsite! Do you want to add a new SousFamille?", "Confirm Message", MessageBoxButtons.OKCancel, MessageBoxIcon.Question);
                    if (Result == DialogResult.OK)
                    {
                        AddSousFamille AddSousFamille = new AddSousFamille {
                            StartPosition = FormStartPosition.CenterParent
                        };
                        AddSousFamille.ShowDialog(this);
                    }
                    else
                    {
                        return;
                    }
                }
                if (!MarqueController.FindMarqueByMarqueName(MarqueName))
                {
                    var Result = MessageBox.Show("Marque doesn't exsite! Do you want to add a new Marque?", "Confirm Message", MessageBoxButtons.OKCancel, MessageBoxIcon.Question);
                    if (Result == DialogResult.OK)
                    {
                        Marques NewMarque = new Marques(MarqueName);
                        NewMarque.RefMarque = MarqueDao.GetMaxRefMarque() + 1;
                        MarqueDao.AddMarque(NewMarque);
                    }
                    else
                    {
                        return;
                    }
                }

                SousFamilles SousFamille = SousFamilleController.FindSousFamillesBySousFamilleName(SousFamilleName);
                Marques      Marque      = MarqueController.FindMarquesByMarqueName(MarqueName);
                string       Price       = float.Parse(PrixHT).ToString();
                Price = Price.Replace(".", ",");
                Articles Article = new Articles(RefArticle, Description, FamilleController.FindFamillesByRefSousFamille(SousFamille.RefSousFamille), SousFamille, Marque, float.Parse(Price), int.Parse(Quantite));
                ArticleDao.AddArticle(Article);

                if (ArticleController.FindArticleByRefArticle(RefArticle))
                {
                    MessageBox.Show("Add Article succeed!");
                    this.Close();
                }
            }
        }
コード例 #4
0
        /// <summary>
        /// Add a marque to the database.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void button_Add_Click(object sender, EventArgs e)
        {
            var MarqueName = this.textBox_MarqueName.Text;

            if (MarqueName == "")
            {
                MessageBox.Show("Please enter the Marque Name!", "ERROR");
                return;
            }

            if (MarqueName == "Familles")
            {
                MessageBox.Show("MarqueName can't be Familles!", "ERROR");
                this.textBox_MarqueName.Text = "";
                return;
            }

            if (MarqueName == "Marques")
            {
                MessageBox.Show("MarqueName can't be Marques!", "ERROR");
                this.textBox_MarqueName.Text = "";
                return;
            }

            if (MarqueName == "Familles")
            {
                MessageBox.Show("MarqueName can't be Familles!", "ERROR");
                this.textBox_MarqueName.Text = "";
                return;
            }

            if (MarqueName == "Tous les articles")
            {
                MessageBox.Show("MarqueName can't be Tous les articles!", "ERROR");
                this.textBox_MarqueName.Text = "";
                return;
            }

            if (FamilleController.FindFamilleByFamilleName(MarqueName))
            {
                MessageBox.Show("This name has already been used by a Famille!", "ERROR");
                this.textBox_MarqueName.Text = "";
                return;
            }

            if (SousFamilleController.FindSousFamilleBySousFamilleName(MarqueName))
            {
                MessageBox.Show("This name has already been used by a SousFamille!", "ERROR");
                this.textBox_MarqueName.Text = "";
                return;
            }

            if (MarqueController.FindMarqueByMarqueName(MarqueName))
            {
                MessageBox.Show("Marque Already exsited!", "ERROR");
                this.textBox_MarqueName.Text = "";
                return;
            }
            else
            {
                Marques Marque = new Marques(MarqueName);
                Marque.RefMarque = MarqueDao.GetMaxRefMarque() + 1;
                MarqueDao.AddMarque(Marque);
                if (MarqueController.FindMarqueByMarqueName(MarqueName))
                {
                    MessageBox.Show("Add Marque succeed!");
                    this.Close();
                }
            }
        }
コード例 #5
0
        /// <summary>
        /// Read the csv file in two modes, mode erasement et mode ajout.
        /// </summary>
        /// <param name="Flag"></param>
        /// <param name="FilePath"></param>
        /// <param name="FormImport"></param>
        public static void ReadFile(bool Flag, string FilePath, FormImport FormImport)
        {
            try
            {
                int AddedArticles    = 0;
                int ExistingArticles = 0;

                if (Flag == true)
                {
                    ModelList.Articles.Clear();
                    ModelList.Familles.Clear();
                    ModelList.Marques.Clear();
                    ModelList.SousFamilles.Clear();

                    ArticleDao.EmptyArticles();
                    SousFamilleDao.EmptySousFamilles();
                    MarqueDao.EmptyMarques();
                    FamilleDao.EmptyFamilles();
                }

                if (FilePath == "")
                {
                    if (MessageBox.Show("Please choose a file!", "ERROR") == DialogResult.OK)
                    {
                        using (OpenFileDialog openFileDialog = new OpenFileDialog())
                        {
                            openFileDialog.Filter           = "csv files (*.csv)|*.csv";
                            openFileDialog.RestoreDirectory = true;

                            if (openFileDialog.ShowDialog() == DialogResult.OK)
                            {
                                FilePath = openFileDialog.FileName;
                                FormImport.label_FichierImporte.Text = "FileName: " + System.IO.Path.GetFileName(FilePath);
                            }
                        }
                    }
                }

                using (var StreamReader = new StreamReader(FilePath, Encoding.Default))
                {
                    var NbLines = File.ReadAllLines(FilePath).Length;

                    FormImport.progressBar.Maximum = NbLines;
                    FormImport.progressBar.Value   = 1;

                    StreamReader.ReadLine();

                    string Line;
                    while ((Line = StreamReader.ReadLine()) != null)
                    {
                        var Values          = Line.Split(';');
                        var Description     = Values[0].Trim();
                        var RefArticle      = Values[1].Trim();
                        var MarqueName      = Values[2].Trim();
                        var FamilleName     = Values[3].Trim();
                        var SousFamilleName = Values[4].Trim();
                        //var Prix = Values[5].Trim();

                        /*
                         * if (Prix.IndexOf("\"") >= 0)
                         *  Prix = Prix.Replace("\"", "");
                         *
                         * if (Prix.EndsWith(","))
                         *  Prix = Prix.Remove(Prix.Length - 1, 1);
                         *
                         * if (Prix.IndexOf(",") != -1)
                         * {
                         *  int StartIndex = 0;
                         *  int Count = 0;
                         *  while (true)
                         *  {
                         *      int Index = Prix.IndexOf(",", StartIndex);
                         *      if (Index != -1)
                         *      {
                         *          Count++;
                         *          StartIndex = Index + 1;
                         *      }
                         *      else
                         *          break;
                         *  }
                         *
                         *  StartIndex = 0;
                         *  for (int i = 0; i < Count - 1; i++)
                         *  {
                         *      int Index = Prix.IndexOf(",", StartIndex);
                         *      StartIndex = Index + 1;
                         *      Prix = Prix.Remove(Index, Index);
                         *  }
                         *
                         *  Prix = Prix.Replace(",", ".");
                         * }
                         *
                         * var PrixHT = float.Parse(Prix, CultureInfo.InvariantCulture.NumberFormat);
                         */
                        var PrixHT = float.Parse(Values[5].Trim().Replace(",", "."), CultureInfo.InvariantCulture.NumberFormat);
                        if (ArticleController.FindArticleByRefArticle(RefArticle))
                        {
                            ExistingArticles += 1;
                            if (Flag == false)
                            {
                                Article = ArticleController.FindArticlesByRefArticle(RefArticle);
                                if (Article.Description != Description)
                                {
                                    Article.Description = Description;
                                }
                                if (Article.PrixHT != PrixHT)
                                {
                                    Article.PrixHT = PrixHT;
                                }
                                if (Article.Quantite != 1)
                                {
                                    Article.Quantite = 1;
                                }
                                if (!MarqueController.FindMarqueByMarqueName(MarqueName))
                                {
                                    Marque = new Marques(MarqueName);
                                    ModelList.Marques.Add(Marque);
                                    MarqueDao.AddMarque(Marque);
                                    Article.Marque = Marque;
                                }
                                if (!SousFamilleController.FindSousFamilleBySousFamilleName(SousFamilleName))
                                {
                                    SousFamille = new SousFamilles(SousFamilleName);
                                    ModelList.SousFamilles.Add(SousFamille);
                                    SousFamilleDao.AddSousFamille(SousFamille, Famille);
                                    Article.SousFamille = SousFamille;
                                }
                            }
                            continue;
                        }
                        else
                        {
                            AddedArticles += 1;
                        }

                        if (!MarqueController.FindMarqueByMarqueName(MarqueName))
                        {
                            Marque = new Marques(MarqueName);
                            ModelList.Marques.Add(Marque);
                            MarqueDao.AddMarque(Marque);
                        }

                        if (!ArticleController.FindArticleByFamilleName(FamilleName))
                        {
                            Famille = new Familles(FamilleName);
                            ModelList.Familles.Add(Famille);
                            FamilleDao.AddFamille(Famille);
                        }

                        if (!SousFamilleController.FindSousFamilleBySousFamilleName(SousFamilleName))
                        {
                            SousFamille = new SousFamilles(SousFamilleName);
                            ModelList.SousFamilles.Add(SousFamille);
                            SousFamilleDao.AddSousFamille(SousFamille, Famille);
                        }

                        Article = new Articles(RefArticle, Description, FamilleController.FindFamillesByRefSousFamille(SousFamille.RefSousFamille), SousFamille, Marque, PrixHT, 1);
                        ModelList.Articles.Add(Article);
                        ArticleDao.AddArticle(Article);

                        FormImport.progressBar.Value++;
                    }
                    StreamReader.Close();
                }

                string Message = "Nombre d'articles ajoutés " + AddedArticles + "\n" +
                                 "Nombre d'articles anomalies " + ExistingArticles;

                MessageBox.Show(" Import success!\n" + Message, System.IO.Path.GetFileName(FilePath));

                FileDirectory = Path.GetDirectoryName(FilePath);
                if (FileDirectory != null)
                {
                    FormMain_FileSystemWatcher();
                }
            }
            catch (System.IO.IOException)
            {
                MessageBox.Show("Please close the selected file!");
            }
        }
コード例 #6
0
        public void AddArticle(String RefArticle, String Description, String MarqueName, String FamilleName, String SousFamilleName, String PrixHT, String Quantite, Form Form)
        {
            if (RefArticle == "")
            {
                MessageBox.Show("Please enter the RefArticle!", "ERROR");
            }

            else if (Description == "")
            {
                MessageBox.Show("Please enter the Description!", "ERROR");
            }

            else if (PrixHT == "")
            {
                MessageBox.Show("Please enter the Price!", "ERROR");
            }

            else if (Quantite == "")
            {
                MessageBox.Show("Please enter the Quantite!", "ERROR");
            }

            else if (MarqueName == "")
            {
                MessageBox.Show("Please enter the Marque Name!", "ERROR");
            }

            else if (FamilleName == "")
            {
                MessageBox.Show("Please enter the Famille Name!", "ERROR");
            }

            else if (SousFamilleName == "")
            {
                MessageBox.Show("Please enter the SousFamille Name!", "ERROR");
            }

            else if (RefArticle.Length >= 15)
            {
                MessageBox.Show("RefArticle is too long! The maximum length of the RefArticle is 15!");
            }

            else if (!PrixHT.Contains(","))
            {
                MessageBox.Show("In our software, you must enter a price with ',' instead of '.'. If you want to enter an integer, please enter like '5,0'.");
            }

            //else if (!int.TryParse(PrixHT, out var Prix))
            //  MessageBox.Show("Please enter the right price!");

            else if (!int.TryParse(Quantite, out var Number))
            {
                MessageBox.Show("Please enter the right quantity!");
            }

            else if (FindArticleByRefArticle(RefArticle))
            {
                MessageBox.Show("Article Already exsited!", "ERROR");
            }

            else
            {
                if (!SousFamillesDao.FindSousFamilleBySousFamilleName(SousFamilleName))
                {
                    var Result = MessageBox.Show("SousFamille doesn't exsite! Do you want to add a new SousFamille?", "Confirm Message", MessageBoxButtons.OKCancel, MessageBoxIcon.Question);
                    if (Result == DialogResult.OK)
                    {
                        AddSousFamille AddSousFamille = new AddSousFamille {
                            StartPosition = FormStartPosition.CenterParent
                        };
                        AddSousFamille.ShowDialog(Form);
                    }
                    else
                    {
                        return;
                    }
                }
                if (!MarquesDao.FindMarqueByMarqueName(MarqueName))
                {
                    var Result = MessageBox.Show("Marque doesn't exsite! Do you want to add a new Marque?", "Confirm Message", MessageBoxButtons.OKCancel, MessageBoxIcon.Question);
                    if (Result == DialogResult.OK)
                    {
                        Marques NewMarque = new Marques(MarqueName);
                        NewMarque.RefMarque = MarquesDao.GetMaxRefMarque() + 1;
                        MarquesDao.AddMarque(NewMarque);
                    }
                    else
                    {
                        return;
                    }
                }

                SousFamilles SousFamille = SousFamillesDao.FindSousFamillesBySousFamilleName(SousFamilleName);
                Marques      Marque      = MarquesDao.FindMarquesByMarqueName(MarqueName);
                Articles     Article     = new Articles(RefArticle, Description, FamillesDao.FindFamillesByRefSousFamille(SousFamille.RefSousFamille), SousFamille, Marque, double.Parse(PrixHT), int.Parse(Quantite));
                ArticlesDao.AddArticle(Article);

                if (ArticlesDao.FindArticleByRefArticle(RefArticle))
                {
                    MessageBox.Show("Add Article succeed!");
                    Form.Close();
                }
            }
        }