private void buttonCheckliste_Click(object sender, EventArgs e) { if (textMitarbeiterID.Text == "") { textStammdatenLog.AppendText("Es muss ein Mitarbeiter ausgewählt sein, um die Checkliste anzuzeigen \r\n "); } else { // Checkliste zur Bearbeitung öffnen Stammdaten_Check check = new Stammdaten_Check(); check.Show(); int x; int.TryParse(textMitarbeiterID.Text, out x); check.fuellen(x); check.setBearbeitend(idBearbeitend); } }
private void MitarbeiterAdd() { var bestätigung = MessageBox.Show("Den Mitarbeiter wirklich neu hinzufügen?", "Hinzufügen bestätigen", MessageBoxButtons.YesNo); if (bestätigung == DialogResult.Yes) { //Zwischenspeicher neue ID int ID = 0; // Sicherheit gegen versehendliches Doppelspeichern if (textMitarbeiterID.Text != "") { var warnung = MessageBox.Show("Es ist bereits ein Mitarbeiter geladen, /r/n ein neuer Mitarbeiter kann nicht gespeichert werden /r/n Sollte der Mitarbeiter geändert werden, bitte Änderungsknopf drücken", "Fehlermeldung"); return; } if (dateAusschied.Value.Date != new DateTime(2017, 1, 1)) { var bestätigungAusschied = MessageBox.Show("Das Ausschiedsdatum ist geändert. Mitarbeiter wirklich zum Datum ausscheiden lassen?", "Ausschied bestätigen", MessageBoxButtons.YesNo); if (bestätigungAusschied == DialogResult.No) { return; } } //String bauen //Vorlage zum Anhängen der Werte String insert = "INSERT INTO Mitarbeiter (Vorname, Nachname, StundenGehalt, Personalnummer, Straße, PLZOrt, Handynummer, Festnetznummer, Religion, Krankenkasse, " + "Steuerklasse, Familienstand, Kinderzahl, Sozialversicherungsnummer, SteuerID, FuehrerscheinNummer, PersonalausweisNummer, " + "Geburtsdatum, Geburtsort, Hauptarbeitgeber, StundenanteilMinuten, Staatsangehoerigkeit, IBAN, BIC, Kontoinhaber, Einstellungsdatum, Kategorie, UserChanged, Ausscheidedatum) VALUES ("; insert += "'" + textVorname.Text + "', "; insert += "'" + textNachname.Text + "', "; insert += numericStundenlohn.Value.ToString().Replace(',', '.') + ", "; insert += "'" + textMitarbeiterNr.Text + "', "; insert += "'" + textStraße.Text + "', "; insert += "'" + textOrt.Text + "', "; insert += "'" + textHandy.Text + "', "; insert += "'" + textTelefon.Text + "', "; insert += "'" + textReligion.Text + "', "; insert += "'" + textKrankenkasse.Text + "', "; insert += numericSteuerklasse.Value.ToString().Replace(',', '.') + ", "; insert += "'" + textFamilienstand.Text + "', "; insert += numericKinder.Value.ToString().Replace(',', '.') + ", "; insert += "'" + textSozialversicherung.Text + "', "; insert += "'" + textSteuerID.Text + "', "; insert += "'" + textFuehrerscheinNr.Text + "', "; insert += "'" + textPersoNr.Text + "', "; insert += "'" + Program.DateMachine(dateGeburtstag.Value) + "', "; insert += "'" + textGeburtsort.Text + "', "; insert += "'" + textHauptarbeitgeber.Text + "', "; insert += +decimal.ToInt32(decimal.Round(numericStundenanteil.Value * 60)) + ", "; //Stundenanteil immer pro Tag insert += "'" + textStaatsangehoerigkeit.Text + "', "; insert += "'" + textIBAN.Text + "', "; insert += "'" + textBIC.Text + "', "; insert += "'" + textKontoinhaber.Text + "', "; insert += "'" + Program.DateMachine(dateEinstellung.Value) + "',"; insert += "'" + getKategorie() + "', "; insert += idBearbeitend + ", "; insert += "'" + Program.DateMachine(dateAusschied.Value) + "');"; // String fertig, absenden MySqlCommand cmdAdd = new MySqlCommand(insert, Program.conn2); try { cmdAdd.ExecuteNonQuery(); textStammdatenLog.AppendText("Mitarbeiter erfolgreich angelegt \r\n "); } catch (Exception sqlEx) { textStammdatenLog.Text += sqlEx.ToString(); return; } // ErgebnisID rausziehen MySqlCommand cmdRead = new MySqlCommand("SELECT idMitarbeiter FROM Mitarbeiter WHERE Nachname = '" + textNachname.Text + "' AND Vorname = '" + textVorname.Text + "';", Program.conn2); MySqlDataReader rdr; int count = 0; try { rdr = cmdRead.ExecuteReader(); while (rdr.Read()) { count++; textMitarbeiterID.Text = rdr[0].ToString(); ID = rdr.GetInt32(0); } rdr.Close(); } catch (Exception sqlEx) { textStammdatenLog.AppendText(sqlEx.ToString()); return; } // Erfolg prüfen if (count == 0) { textStammdatenLog.AppendText("Fehler beim Hinzufügen, konnte keine MitarbeiterID finden \r\n "); } else if (count > 1) { textStammdatenLog.AppendText("Hinzugefügter Mitarbeiter existiert doppelt (Vor/Nachname gleich). Bitte Prüfen! \r\n "); } // Mitarbeiter-Checkliste anlegen insert = "INSERT INTO MitarbeiterCheck (Mitarbeiter_idMitarbeiter) VALUES (" + ID + ");"; MySqlCommand cmdcheck = new MySqlCommand(insert, Program.conn2); try { cmdcheck.ExecuteNonQuery(); textStammdatenLog.AppendText("Mitarbeiter Checkliste erfolgreich angelegt \r\n "); } catch (Exception sqlEx) { textStammdatenLog.Text += sqlEx.ToString(); return; } //Minuten für den Monat berechnen int min = 0; if (dateEinstellung.Value.Day <= 26) { min = Program.toMinute(numericStundenanteil.Value) * Program.getWochentage(dateEinstellung.Value.Date, new DateTime(dateEinstellung.Value.Year, dateEinstellung.Value.Month, 26)); } else { min = Program.toMinute(numericStundenanteil.Value) * Program.getWochentage(dateEinstellung.Value.Date, new DateTime(dateEinstellung.Value.Year, dateEinstellung.Value.Month + 1, 26)); } //DateTime StartMonat = new DateTime(2017, 7, 1); String stdKonto = "INSERT INTO Stundenkonto (Mitarbeiter_idMitarbeiter, Monat, SollMinuten) VALUES(" + ID + ", '" + Program.DateMachine(dateEinstellung.Value) + "', " + min + ");"; // String fertig, absenden MySqlCommand cmdStd = new MySqlCommand(stdKonto, Program.conn2); try { cmdStd.ExecuteNonQuery(); textStammdatenLog.AppendText("Stundenkonto erfolgreich angelegt \r\n "); } catch (Exception sqlEx) { textStammdatenLog.Text += sqlEx.ToString(); return; } // Checkliste zur Bearbeitung öffnen Stammdaten_Check check = new Stammdaten_Check(); check.Show(); check.fuellen(ID); check.setBearbeitend(idBearbeitend); // MitarbeiterAuocomplete-Singleton updaten Program.refreshAutocompleteMitarbeiter(); } }