diff --git a/Artikelverwaltung/Artikel_Anlegen.cs b/Artikelverwaltung/Artikel_Anlegen.cs index fa9f3a3..eed877d 100644 --- a/Artikelverwaltung/Artikel_Anlegen.cs +++ b/Artikelverwaltung/Artikel_Anlegen.cs @@ -31,19 +31,8 @@ namespace Artikelverwaltung { aktiveFlag = true; } - - try - { - artikelverwaltung.ArtikelAnlegen(artikelBeschreibung, modellName, artikelGruppe, aktiveFlag); - MessageBox.Show("Erfolgreich angelegt!"); - this.Close(); - } - catch(Exception ex) - { - - MessageBox.Show(ex.ToString()); ; - } - + artikelverwaltung.ArtikelAnlegen(artikelBeschreibung, modellName, artikelGruppe, aktiveFlag); + this.Close(); } } } diff --git a/Artikelverwaltung/Artikel_Verwaltung.cs b/Artikelverwaltung/Artikel_Verwaltung.cs index d269f16..c849cd5 100644 --- a/Artikelverwaltung/Artikel_Verwaltung.cs +++ b/Artikelverwaltung/Artikel_Verwaltung.cs @@ -7,81 +7,77 @@ using System.Windows.Forms; namespace Artikelverwaltung { - internal class Artikel_Verwaltung + internal class Artikel_Verwaltung { Database database; public List Artikelliste = new List(); - - public Artikel_Verwaltung() + public Artikel_Verwaltung() { database = new Database(); } - // Objekt wird erzeugt und an die Datenbank weiter gereicht - public void ArtikelAnlegen(string Modellname, string Artikelbeschreibung, string Artikelgruppe, bool aktiv) - { - Artikel artikel = new Artikel(Modellname, Artikelbeschreibung, Artikelgruppe, aktiv); - database.ArtikelAnlegen(artikel); - } - - // Löschen über die Artikelnummer - public void ArtikelLoeschen(int ArtikelID) - { - database.ArtikelLoeschen(ArtikelID); - } - - - // Update eines Artikels in der Datenbank - public void ArtikelAktualisieren(int ArtikelId,string Artikelbeschreibung, string Modellname, string ArtikelGruppe, bool aktiv) - { - Artikel artikel = new Artikel(Artikelbeschreibung, Modellname, ArtikelGruppe, aktiv); - database.ArtikelAendern(artikel, ArtikelId); - } - - // Alle Artikel werden aus der Datenbank abgerufen und in die Liste hinzugefügt. - - public void AlleArtikelAbrufen() - { - Artikelliste = database.ArtikelAbrufen(); - } - public string ArtikelMenge() - { - return database.ArtikelZählen().ToString(); - } - - - // Errechnet die Seitenanzahl - public void ComboBoxZähler(ComboBox combo) + // Objekt wird erzeugt und an die Datenbank weiter gereicht + public void ArtikelAnlegen(string Modellname, string Artikelbeschreibung, string Artikelgruppe, bool aktiv) { - int endPosition = 30; - bool modo = true; - int artikelInsgesammt = database.ArtikelZählen(); - int teiler = artikelInsgesammt / endPosition; - - while (modo) - { - - for (int i = 1; i <= teiler +1; i++) - { - combo.Items.Add(i); - modo = false; - } - - } - + Artikel artikel = new Artikel(Modellname, Artikelbeschreibung, Artikelgruppe, aktiv); + database.ArtikelAnlegen(artikel); } - // Gibt eine Liste mit 30 Artikeln aus der Datenbank zurück - public List ListViewPage(int index) + // Löschen über die Artikelnummer + public void ArtikelLoeschen(int ArtikelID) { - List list = new List(); - int anzahlDerGezeigtenArtikel = 40; + database.ArtikelLoeschen(ArtikelID); + } + + + // Update eines Artikels in der Datenbank + public void ArtikelAktualisieren(int ArtikelId, string Artikelbeschreibung, string Modellname, string ArtikelGruppe, bool aktiv) + { + Artikel artikel = new Artikel(Artikelbeschreibung, Modellname, ArtikelGruppe, aktiv); + database.ArtikelAendern(artikel, ArtikelId); + } + + // Alle Artikel werden aus der Datenbank abgerufen und in die Liste hinzugefügt. + + public void AlleArtikelAbrufen() + { + Artikelliste = database.ArtikelAbrufen(); + } + public string ArtikelMenge() + { + return database.ArtikelZählen().ToString(); + } + + + // Errechnet die Seitenanzahl + public void ComboBoxZähler(ComboBox combo) + { + int endPosition = 35; + bool comboBoxBefüllen = true; + int artikelInsgesammt = database.ArtikelZählen(); + int teiler = artikelInsgesammt / endPosition; + + while (comboBoxBefüllen) + { + for (int i = 1; i <= teiler + 1; i++) + { + combo.Items.Add(i); + comboBoxBefüllen = false; + } + } + } + + // Gibt eine Liste mit 30 Artikeln aus der Datenbank zurück + public List ListViewPage(int index) + { + List list; + int anzahlDerGezeigtenArtikel = 35; int startPosition = (index * anzahlDerGezeigtenArtikel) - anzahlDerGezeigtenArtikel; int endPosition = anzahlDerGezeigtenArtikel; list = database.BestimmteAnzahlanArtikeln(startPosition, endPosition); return list; - } + } } -} + diff --git a/Artikelverwaltung/Artikelverwaltung.Designer.cs b/Artikelverwaltung/Artikelverwaltung.Designer.cs index 369f5f2..37dd45f 100644 --- a/Artikelverwaltung/Artikelverwaltung.Designer.cs +++ b/Artikelverwaltung/Artikelverwaltung.Designer.cs @@ -187,7 +187,7 @@ this.button1.TabIndex = 14; this.button1.Text = "Beenden"; this.button1.UseVisualStyleBackColor = true; - this.button1.Click += new System.EventHandler(this.button1_Click); + this.button1.Click += new System.EventHandler(this.ProgrammBeenden); // // Artikelverwaltung // diff --git a/Artikelverwaltung/Artikelverwaltung.cs b/Artikelverwaltung/Artikelverwaltung.cs index 52669a5..256cdfa 100644 --- a/Artikelverwaltung/Artikelverwaltung.cs +++ b/Artikelverwaltung/Artikelverwaltung.cs @@ -4,6 +4,7 @@ using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; +using System.Reflection; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; @@ -13,12 +14,12 @@ namespace Artikelverwaltung public partial class Artikelverwaltung : Form { Artikel_Verwaltung artikelverwaltung; + List list; public Artikelverwaltung() { InitializeComponent(); artikelverwaltung = new Artikel_Verwaltung(); - ListeViewStartSetup(); - ListeAktuallisieren(); + ListeViewStartSetup(); // Beschreibt die Spalten searchbox.TextChanged += new EventHandler(searchBox_TextChanged); label3.Text = artikelverwaltung.ArtikelMenge(); // Artikel Insgesammt in der Datenbank artikelverwaltung.ComboBoxZähler(comboBox1); // Füllt die Combobox @@ -28,8 +29,9 @@ namespace Artikelverwaltung private void anlegen_Click(object sender, EventArgs e) { Artikel_Anlegen form = new Artikel_Anlegen(); - form.Show(); - ListeAktuallisieren(); + form.ShowDialog(); + PageAktuallisieren(comboBox1.Items.Count -1); + label3.Text = artikelverwaltung.ArtikelMenge(); } private void listeAktual_Click(object sender, EventArgs e) @@ -39,16 +41,11 @@ namespace Artikelverwaltung private void loeschen_Click(object sender, EventArgs e) { - try { int id = Convert.ToInt32(listView1.Items[listView1.FocusedItem.Index].Text); artikelverwaltung.ArtikelLoeschen(id); - ListeAktuallisieren(); + PageAktuallisieren(comboBox1.SelectedIndex); label3.Text = artikelverwaltung.ArtikelMenge(); - } - catch - { - MessageBox.Show("Fehler beim Löschen!"); - } + } // Aufruf nach Löschen, Ändern, Anlegen etc... @@ -56,20 +53,15 @@ namespace Artikelverwaltung { listView1.Items.Clear(); artikelverwaltung.AlleArtikelAbrufen(); - - foreach (Artikel artikel in artikelverwaltung.Artikelliste) - { - //Objekt muss in Array umgewandelt werden, damit man es der ListView übergeben kann - string[] arr = { artikel.Artikelnummer.ToString(), artikel.Artikelbeschreibung.ToString(), artikel.Modellname.ToString(), artikel.Artikelgruppe.ToString(), artikel.AktivFlag.ToString() }; - listView1.Items.Add(new ListViewItem(arr)); - } + label3.Text = artikelverwaltung.ArtikelMenge(); + TransferListeZuArrayZuListView(artikelverwaltung.Artikelliste); } private void aendern_Click(object sender, EventArgs e) { Artikel_Aendern form = new Artikel_Aendern(listView1); form.ShowDialog(); - ListeAktuallisieren(); + PageAktuallisieren(comboBox1.SelectedIndex); } private void logout_Click(object sender, EventArgs e) @@ -89,8 +81,8 @@ namespace Artikelverwaltung { Artikel_Aendern form = new Artikel_Aendern(listView1); form.ShowDialog(); - ListeAktuallisieren(); - } + PageAktuallisieren(comboBox1.SelectedIndex); + } } //Suchfunktion mit Autosuche @@ -112,14 +104,9 @@ namespace Artikelverwaltung ComboBox comobox = (ComboBox)sender; int index = comobox.SelectedIndex +1; - List list = artikelverwaltung.ListViewPage(index); + list = artikelverwaltung.ListViewPage(index); - foreach (Artikel artikel in list) - { - //Objekt muss in Array umgewandelt werden, damit man es der ListView übergeben kann - string[] arr = { artikel.Artikelnummer.ToString(), artikel.Artikelbeschreibung.ToString(), artikel.Modellname.ToString(), artikel.Artikelgruppe.ToString(), artikel.AktivFlag.ToString() }; - listView1.Items.Add(new ListViewItem(arr)); - } + TransferListeZuArrayZuListView(list); } private void ListeViewStartSetup() { @@ -133,9 +120,26 @@ namespace Artikelverwaltung listView1.MouseDoubleClick += new MouseEventHandler(listView1_MouseDoubleClick); } - private void button1_Click(object sender, EventArgs e) + // Beenden des Programms + private void ProgrammBeenden(object sender, EventArgs e) { this.Close(); } + private void TransferListeZuArrayZuListView(List list) + { + listView1.Items.Clear(); + foreach (Artikel artikel in list) + { + //Objekt muss in Array umgewandelt werden, damit man es der ListView übergeben kann + string[] arr = { artikel.Artikelnummer.ToString(), artikel.Artikelbeschreibung.ToString(), artikel.Modellname.ToString(), artikel.Artikelgruppe.ToString(), artikel.AktivFlag.ToString() }; + listView1.Items.Add(new ListViewItem(arr)); + } + } + private void PageAktuallisieren(int index) + { + list = artikelverwaltung.ListViewPage(index + 1); + TransferListeZuArrayZuListView(list); + comboBox1.SelectedIndex = index; + } } } diff --git a/Artikelverwaltung/Database.cs b/Artikelverwaltung/Database.cs index 1877b64..a1d7b73 100644 --- a/Artikelverwaltung/Database.cs +++ b/Artikelverwaltung/Database.cs @@ -159,14 +159,14 @@ namespace Artikelverwaltung connection.Close(); return result; } - public List BestimmteAnzahlanArtikeln(int start, int end) + public List BestimmteAnzahlanArtikeln(int start, int anzahl) { List list = new List(); try { connection.Open(); cmd.Connection = connection; - cmd.CommandText = $"select * from artikel limit {start},{end}"; + cmd.CommandText = $"select * from artikel limit {start},{anzahl}"; MySqlDataReader reader = cmd.ExecuteReader(); while (reader.Read()) { diff --git a/Artikelverwaltung/Program.cs b/Artikelverwaltung/Program.cs index 9ed9563..a21f7bc 100644 --- a/Artikelverwaltung/Program.cs +++ b/Artikelverwaltung/Program.cs @@ -16,7 +16,8 @@ namespace Artikelverwaltung { Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); - Application.Run(new Login()); + //Application.Run(new Login()); + Application.Run(new Artikelverwaltung()); } } } diff --git a/Artikelverwaltung/Zugriffsverwaltung.cs b/Artikelverwaltung/Zugriffsverwaltung.cs index f6d6c71..6e9b4ab 100644 --- a/Artikelverwaltung/Zugriffsverwaltung.cs +++ b/Artikelverwaltung/Zugriffsverwaltung.cs @@ -16,8 +16,7 @@ namespace Artikelverwaltung if (dbConnection.loginAbgleich(bn,pw)) { - access = true; - + access = true; } return access; }