//Constructeur /// <summary> /// Controller pour le menu Fichier de la fenetre principale /// </summary> /// <param name="Form"> fenetre principale </param> /// <param name="Type"> nom du bouton </param> public MenuFichierController(FormMain Form, string Type) { this.Form = Form; this.Type = Type; if (Type.Equals("importer")) { ModaleImporter FenetreImporter = new ModaleImporter(Form); FenetreImporter.StartPosition = FormStartPosition.CenterParent; FenetreImporter.ShowDialog(Form); } else if (Type.Equals("exporter")) { ModaleExporter FenetreExporter = new ModaleExporter(); FenetreExporter.StartPosition = FormStartPosition.CenterParent; FenetreExporter.ShowDialog(Form); } else if (Type.Equals("actualiser")) { InitializeTreeView TreeViewInit = new InitializeTreeView(Form.GetTreeView()); TreeViewInit.ConstructTree(Form.GetPathToSave()); ListViewController ListViewInit = new ListViewController(Form.GetListView(), Form.GetPathToSave()); ListViewInit.LoadListView(Form.GetTreeView().SelectedNode); } }
//Constructeur /// <summary> /// Lancement de l'importation /// </summary> /// <param name="Modale"> fenetre d'importation </param> public ImportButtonController(ModaleImporter Modale) { this.Modale = Modale; Modale.GetFormMain().GetLabelAjouter().Text = ""; //si on a pas choisi un mode d'importation if (Modale.GetButtonsValue().Equals("") || Modale.GetPathToImport().Equals("") || Modale.GetPathToSave().Equals("")) { Modale.GetLabelImport().Text = "Veuillez choisir un mode d'intégration pour la base de données, un fichier .csv à importer et un fichier .sqlite dans lequel le fichier .csv sera importé."; } else { //import en mode ecrasement if (Modale.GetButtonsValue().Equals("Ecrasement")) { Modale.GetLabelImport().Text = "Import en mode Ecrasement en cours ..."; ImporterEcrasement ImportEcrasement = new ImporterEcrasement(Modale); } //import en mode ajout else if (Modale.GetButtonsValue().Equals("Ajout")) { Modale.GetLabelImport().Text = "Import en mode Ajout en cours ..."; ImporterAjout ImportAjout = new ImporterAjout(Modale); } //mise à jour de la treeView InitializeTreeView initializeTree = new InitializeTreeView(Modale.GetFormMain().GetTreeView()); initializeTree.ConstructTree(Modale.GetPathToSave()); //stockage du chemin de la bdd Modale.GetFormMain().SetPathToSave(Modale.GetPathToSave()); //mise à jour du statusStrip ToolStatusStripController FamilleStripControl = new ToolStatusStripController(Modale.GetFormMain().GetToolStatusStrip("Familles")); ToolStatusStripController ArticleStripControl = new ToolStatusStripController(Modale.GetFormMain().GetToolStatusStrip("Article")); ToolStatusStripController SousFamilleStripControl = new ToolStatusStripController(Modale.GetFormMain().GetToolStatusStrip("SousFamilles")); ToolStatusStripController MarqueStripControl = new ToolStatusStripController(Modale.GetFormMain().GetToolStatusStrip("Marques")); ArticlesDAO ArticlesDAO = new ArticlesDAO(Modale.GetPathToSave()); MarquesDAO MarquesDAO = new MarquesDAO(Modale.GetPathToSave()); FamillesDAO FamillesDAO = new FamillesDAO(Modale.GetPathToSave()); SousFamillesDAO SousFamillesDAO = new SousFamillesDAO(Modale.GetPathToSave()); ArticleStripControl.ChangeNumber(ArticlesDAO.CountAllArticles()); FamilleStripControl.ChangeNumber(FamillesDAO.CountAllFamilles()); SousFamilleStripControl.ChangeNumber(SousFamillesDAO.CountAllSousFamilles()); MarqueStripControl.ChangeNumber(MarquesDAO.CountAllMarques()); } }
//Constructuers /// <summary> /// Constructeur pour lancer la fenetre de selection du fichier SQLite /// </summary> /// <param name="Modale"> fenetre d'importation </param> public SelectSQLButtonImportController(ModaleImporter Modale) { this.Modale = Modale; String FileName; OpenFileDialog Picker = new OpenFileDialog(); Picker.Title = "Selectionne le fichier .sqlite dans lequel importer le fichier .csv"; Picker.InitialDirectory = Directory.GetCurrentDirectory(); Picker.Filter = "SQLite files (*.sqlite)|*.sqlite"; Picker.ShowDialog(); FileName = Picker.FileName; Modale.SetPathToSave(Picker.FileName); Modale.GetLabelSQL().Text = FileName; }
//Constructeur /// <summary> /// Fenetre de selection du .csv /// </summary> /// <param name="Modale"> fenetre d'import </param> public SelectCSVButtonImportController(ModaleImporter Modale) { this.Modale = Modale; String FileName; OpenFileDialog Picker = new OpenFileDialog(); Picker.Title = "Selectionne ton fichier .csv"; Picker.InitialDirectory = Directory.GetCurrentDirectory(); Picker.Filter = "CSV files (*.csv)|*.csv"; Picker.ShowDialog(); FileName = Picker.FileName; Modale.SetPathToImport(FileName); Modale.GetLabelFileName().Text = FileName; }
//Constructeur /// <summary> /// Constructeur permettant de faire l'importation /// </summary> /// <param name="Modale"> fenêtre d'import </param> public ImporterEcrasement(ModaleImporter Modale) { this.Modale = Modale; //création de la connexion avec la base de données //suppression des tables de la base locale SQLiteConnection M_dbConnection = new SQLiteConnection("Data Source=" + Modale.GetPathToSave()); M_dbConnection.Open(); String Sql = "DELETE FROM 'Marques'"; Console.WriteLine(Sql); SQLiteCommand Command = new SQLiteCommand(Sql, M_dbConnection); Command.ExecuteNonQuery(); Sql = "DELETE FROM 'Familles'"; Console.WriteLine(Sql); Command = new SQLiteCommand(Sql, M_dbConnection); Command.ExecuteNonQuery(); Sql = "DELETE FROM 'SousFamilles'"; Console.WriteLine(Sql); Command = new SQLiteCommand(Sql, M_dbConnection); Command.ExecuteNonQuery(); Sql = "DELETE FROM 'Articles'"; Console.WriteLine(Sql); Command = new SQLiteCommand(Sql, M_dbConnection); Command.ExecuteNonQuery(); Sql = "delete from sqlite_sequence"; Console.WriteLine(Sql); Command = new SQLiteCommand(Sql, M_dbConnection); Command.ExecuteNonQuery(); M_dbConnection.Close(); ImporterBDD(); }
//Constructeur /// <summary> /// Constructeur permettant de faire l'importation /// </summary> /// <param name="Modale"> fenêtre d'import </param> public ImporterAjout(ModaleImporter Modale) { this.Modale = Modale; ImporterBDD(); }