// Konstruktor public FliesenBerechnungBedarfsermittlung(Fliese fliese, MainWindow mainwindow) { InitializeComponent(); this.fliese = fliese; this.berechnung = new Berechnung(); this.mainwindow = mainwindow; flieseBeschreibungTextBlock.Text += " Name:\t\t\t" + fliese.name + "\n"; flieseBeschreibungTextBlock.Text += " Artikelnummer:\t\t" + fliese.artikelnummer + "\n"; flieseBeschreibungTextBlock.Text += " Beschreibung:\t\t" + fliese.beschreibung + "\n"; flieseBeschreibungTextBlock.Text += " Preis:\t\t\t" + fliese.preis + " / Paket" + "\n"; }
// Der Typ vom Parameter fliese muss auf Fliese geändert werden, sobald die Klasse dazu verfügbar ist public int FliesenBerechnen(double flaeche, Fliese fliese, double fugenbreite) { // Berechnung Fliesen // GesamtBetragAktualiseren double flieseGroesse = (double)Math.Ceiling((fliese.laenge * (fliese.breite + fugenbreite)) * 1.05); double flaecheinZm = flaeche * 100; int benoetigteFliesen = (int)Math.Ceiling(flaecheinZm / flieseGroesse); int benoetigteFlieseninQm = (int)Math.Ceiling((double)(benoetigteFliesen * flieseGroesse) / 100); return(benoetigteFlieseninQm); }
private void FliesenBerechnungStarten(object sender, RoutedEventArgs e) { // Fenster für Fliesenberechnung öffnen if (Fliesen.SelectedIndex != -1) { // Fenster für Tapetenberechnung öffnen Fliese fliese = (Fliese)Fliesen.SelectedItem; FliesenBerechnungBedarfsermittlung fliesenberechnung = new FliesenBerechnungBedarfsermittlung(fliese, this); // Position des Popup Fenster relativ zum Hauptfenster setzen fliesenberechnung.Top = this.Top + 140; fliesenberechnung.Left = this.Left + 230; fliesenberechnung.Show(); } else { MessageBox.Show("Keine Fliese ausgewählt"); } }
public void ArtikelSpeichern(dynamic artikel, bool aendereArtikel, int alteArtikelnummer = 0) { var returnType = artikel.GetType(); string dataTypeString = returnType.ToString(); try { var test = artikelnummern.Contains(artikel.artikelnummer); if (!artikelnummern.Contains(artikel.artikelnummer)) { if (!aendereArtikel) { switch (dataTypeString) { case "tfmarkt.Produktklassen.Fliese": this.fliesen.Add(artikel); this.artikelnummern.Add(artikel.artikelnummer); MessageBox.Show("Fliese hinzugefügt"); break; case "tfmarkt.Produktklassen.Tapete": this.tapeten.Add(artikel); this.artikelnummern.Add(artikel.artikelnummer); MessageBox.Show("Tapete hinzugefügt"); break; case "tfmarkt.Produktklassen.Fliesenkleber": this.fliesenkleber = artikel; this.artikelnummern.Add(artikel.artikelnummer); MessageBox.Show("Fliesenkleber hinzugefügt"); break; case "tfmarkt.Produktklassen.Fugenfueller": this.fugenfueller = artikel; this.artikelnummern.Add(artikel.artikelnummer); MessageBox.Show("Fuegenfueller hinzugefügt"); break; case "tfmarkt.Produktklassen.Tapetenkleister": this.tapetenkleister = artikel; this.artikelnummern.Add(artikel.artikelnummer); MessageBox.Show("Tapetenkleister hinzugefügt"); break; } } if (aendereArtikel) { switch (dataTypeString) { case "tfmarkt.Produktklassen.Fliese": this.fliesen.Add(artikel); Fliese alteFliese = this.fliesen.Find(x => x.artikelnummer == alteArtikelnummer); this.fliesen.Remove(alteFliese); if (alteArtikelnummer != artikel.artikelnummer) { this.artikelnummern.Add(artikel.artikelnummer); } MessageBox.Show("Fliese wurde geändert"); break; case "tfmarkt.Produktklassen.Tapete": this.tapeten.Add(artikel); Tapete alteTapete = this.tapeten.Find(x => x.artikelnummer == alteArtikelnummer); this.tapeten.Remove(alteTapete); if (alteArtikelnummer != artikel.artikelnummer) { this.artikelnummern.Add(artikel.artikelnummer); } MessageBox.Show("Tapete wurde geändert"); break; case "tfmarkt.Produktklassen.Fliesenkleber": this.fliesenkleber = artikel; if (alteArtikelnummer != artikel.artikelnummer) { this.artikelnummern.Add(artikel.artikelnummer); } MessageBox.Show("Fliesenkleber wurde geändert"); break; case "tfmarkt.Produktklassen.Fugenfueller": this.fugenfueller = artikel; if (alteArtikelnummer != artikel.artikelnummer) { this.artikelnummern.Add(artikel.artikelnummer); } MessageBox.Show("Fuegenfueller wurde geändert"); break; case "tfmarkt.Produktklassen.Tapetenkleister": this.tapetenkleister = artikel; if (alteArtikelnummer != artikel.artikelnummer) { this.artikelnummern.Add(artikel.artikelnummer); } MessageBox.Show("Tapetenkleister wurde geändert"); break; } } } else { MessageBox.Show("Ein Produkt mit der Artikelnummer " + artikel.artikelnummer.ToString() + " ist schon im System"); } var serializer = new XmlSerializer(typeof(ProduktKatalog)); TextWriter writer = new StreamWriter("produktkatalog.xml"); serializer.Serialize(writer, this); writer.Close(); } catch (Exception exception) { System.Windows.MessageBox.Show(exception.ToString()); } }
private void SpeichernButton_OnClick(object sender, RoutedEventArgs e) { try { decimal preis = Convert.ToDecimal(PreisTextBox.Text); string name = ProduktnameTextBox.Text; int artikelnummer = Convert.ToInt32(ArtikelnummerTextBox.Text); string beschreibung = BeschreibungTextBox.Text; double laenge; double breite; double reichweite; double zusatzProduktMass; if (!aendereArtikel) { switch (produktTyp) { case "Fliese": laenge = Convert.ToDouble(LaengeReichweiteTextBox.Text); breite = Convert.ToDouble(BreiteTextBox.Text); int anzahl = Convert.ToInt32(ExtraTextBox.Text); Fliese flieseZuSpeichern = new Fliese(preis, name, artikelnummer, beschreibung, laenge, breite, anzahl); produktKatalog.ArtikelSpeichern(flieseZuSpeichern, aendereArtikel); Close(); break; case "Tapete": laenge = Convert.ToDouble(LaengeReichweiteTextBox.Text); breite = Convert.ToDouble(BreiteTextBox.Text); double musterversatz = Convert.ToDouble(ExtraTextBox.Text); Tapete tapeteZuSpeichern = new Tapete(preis, name, artikelnummer, beschreibung, laenge, breite, musterversatz); produktKatalog.ArtikelSpeichern(tapeteZuSpeichern, aendereArtikel); Close(); break; case "Fugenfüller": zusatzProduktMass = Convert.ToDouble(ExtraTextBox.Text); reichweite = double.Parse(LaengeReichweiteTextBox.Text, NumberStyles.AllowDecimalPoint, CultureInfo.CurrentCulture); Fugenfueller fugenfuellerZuSpeichern = new Fugenfueller(preis, name, artikelnummer, beschreibung, zusatzProduktMass, reichweite); produktKatalog.ArtikelSpeichern(fugenfuellerZuSpeichern, aendereArtikel); Close(); break; case "Tapetenkleister": zusatzProduktMass = Convert.ToDouble(ExtraTextBox.Text); reichweite = double.Parse(LaengeReichweiteTextBox.Text, NumberStyles.AllowDecimalPoint, CultureInfo.CurrentCulture); Tapetenkleister kleisterZuSpeichern = new Tapetenkleister(preis, name, artikelnummer, beschreibung, zusatzProduktMass, reichweite); produktKatalog.ArtikelSpeichern(kleisterZuSpeichern, aendereArtikel); Close(); break; case "Fliesenkleber": zusatzProduktMass = Convert.ToDouble(ExtraTextBox.Text); reichweite = double.Parse(LaengeReichweiteTextBox.Text, NumberStyles.AllowDecimalPoint, CultureInfo.CurrentCulture); Fliesenkleber kleberZuSpeichern = new Fliesenkleber(preis, name, artikelnummer, beschreibung, zusatzProduktMass, reichweite); produktKatalog.ArtikelSpeichern(kleberZuSpeichern, aendereArtikel); Close(); break; } } else { int alteArtikelnummer = ausgewaehltesProdukt.artikelnummer; verwaltung.produktLoeschen(sender, e); switch (produktTyp) { case "Fliese": laenge = Convert.ToDouble(LaengeReichweiteTextBox.Text); breite = Convert.ToDouble(BreiteTextBox.Text); int anzahl = Convert.ToInt32(ExtraTextBox.Text); Fliese flieseZuSpeichern = new Fliese(preis, name, artikelnummer, beschreibung, laenge, breite, anzahl); produktKatalog.ArtikelSpeichern(flieseZuSpeichern, aendereArtikel, alteArtikelnummer); Close(); break; case "Tapete": laenge = Convert.ToDouble(LaengeReichweiteTextBox.Text); breite = Convert.ToDouble(BreiteTextBox.Text); double musterversatz = Convert.ToDouble(ExtraTextBox.Text); Tapete tapeteZuSpeichern = new Tapete(preis, name, artikelnummer, beschreibung, laenge, breite, musterversatz); produktKatalog.ArtikelSpeichern(tapeteZuSpeichern, aendereArtikel, alteArtikelnummer); Close(); break; case "Fugenfüller": zusatzProduktMass = Convert.ToDouble(ExtraTextBox.Text); reichweite = double.Parse(LaengeReichweiteTextBox.Text, NumberStyles.AllowDecimalPoint, CultureInfo.CurrentCulture); Fugenfueller fugenfuellerZuSpeichern = new Fugenfueller(preis, name, artikelnummer, beschreibung, zusatzProduktMass, reichweite); produktKatalog.ArtikelSpeichern(fugenfuellerZuSpeichern, aendereArtikel, alteArtikelnummer); Close(); break; case "Tapetenkleister": zusatzProduktMass = Convert.ToDouble(ExtraTextBox.Text); reichweite = double.Parse(LaengeReichweiteTextBox.Text, NumberStyles.AllowDecimalPoint, CultureInfo.CurrentCulture); Tapetenkleister kleisterZuSpeichern = new Tapetenkleister(preis, name, artikelnummer, beschreibung, zusatzProduktMass, reichweite); produktKatalog.ArtikelSpeichern(kleisterZuSpeichern, aendereArtikel, alteArtikelnummer); Close(); break; case "Fliesenkleber": zusatzProduktMass = Convert.ToDouble(ExtraTextBox.Text); reichweite = double.Parse(LaengeReichweiteTextBox.Text, NumberStyles.AllowDecimalPoint, CultureInfo.CurrentCulture); Fliesenkleber kleberZuSpeichern = new Fliesenkleber(preis, name, artikelnummer, beschreibung, zusatzProduktMass, reichweite); produktKatalog.ArtikelSpeichern(kleberZuSpeichern, aendereArtikel, alteArtikelnummer); Close(); break; } this.aendereArtikel = false; } } catch { MessageBox.Show("Überprüfen Sie Ihre Eingaben"); } }