public Info(Führer f, List <Führung> fg) { this.f = f; this.fg = fg; InitializeComponent(); Initialize(); }
private void RfidDataStream(object sender, SerialDataReceivedEventArgs e) { try { if (führer.Values.Count() > 0) { rfiditem = ((SerialPort)sender).ReadLine().Replace("\r", ""); if (rfiditem.Contains("*") && rfiditem.Contains(";")) { Invoke(new Action(() => { rfiditem = rfiditem.Replace("*", "").Replace(";", ""); Führer f = führer.Values.Where(x => x.Nfc.ToString() == rfiditem).DefaultIfEmpty(null).First(); if (f != null) { rfiditem = string.Empty; Output_CellClick(output, new DataGridViewCellEventArgs(4, (output.Rows.Cast <DataGridViewRow>().Where(r => r.Cells[4].Tag.Equals(f.Uuid)).Select(r => r.Index)).First())); } else { MessageBox.Show("Klicken Sie auf einen Nachnamen, um die NFC-ID zu zuweisen!", "Hinweis!", MessageBoxButtons.OK, MessageBoxIcon.Information); } })); } } } catch (Exception) { MessageBox.Show("Fehler beim der SerialPort-Übertragung", "Fehler!", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
private void Infos_Click(object sender, EventArgs e) { try { Führer f = GetFührer(); using Info i = new Info(f, führung.Where(x => x.Uuid.Equals(f.Uuid)).ToList()); i.ShowDialog(); } catch (Exception) { MessageBox.Show("Fehler beim Info-Klick", "Fehler!", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
private void Nfc_Click(object sender, EventArgs e) { try { Führer f = GetFührer(); if ((MessageBox.Show("Bitte bestätigen Sie die NFC-Löschung!\nName: " + f.Nachname + " " + f.Vorname + "\tID: " + f.Nfc, "Achtung!", MessageBoxButtons.YesNo, MessageBoxIcon.Warning)).Equals(DialogResult.Yes)) { f.Nfc = 0; } } catch (Exception) { MessageBox.Show("Fehler beim NFC-Klick", "Fehler!", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
private void Löschen_Click(object sender, EventArgs e) { try { Führer f = GetFührer(); if ((MessageBox.Show("Wollen Sie den Schüler \"" + f.Nachname + " " + f.Vorname + "\" wirklich löschen? (Schülerdaten & Führungen)", "Achtung!", MessageBoxButtons.YesNo, MessageBoxIcon.Warning)).Equals(DialogResult.Yes)) { führer.Remove(f.Nachname + f.Vorname + f.Klasse); führung.RemoveAll(x => x.Uuid.Equals((Guid)output.SelectedCells[4].Tag)); output.Rows.RemoveAt(output.SelectedRows[0].Index); CountStatistik(true); } } catch (Exception) { MessageBox.Show("Fehler beim Löschen-Klick", "Fehler!", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
private void Bearbeiten_Click(object sender, EventArgs e) { try { Führer f = GetFührer(); string key = f.Nachname + f.Vorname + f.Klasse; using Edit edit = new Edit(ref f); if (edit.ShowDialog().Equals(DialogResult.OK)) { führer.Remove(key); führer[f.Nachname + f.Vorname + f.Klasse] = f; DisplayData(); } } catch (Exception) { MessageBox.Show("Fehler beim Bearbeiten-Klick", "Fehler!", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
public void UpdateValues() { try { foreach (DataGridViewRow item in output.Rows) { Führer f = GetFührer(item); item.Cells[3].Value = f.Führungen; item.Cells[4].Tag = f.Uuid; item.Cells[4].Value = f.Status ? "Pause" : "Aktivieren"; item.Cells[4].Style.BackColor = Methods.ChangeStatus(!f.Anwesenheit, f.Status); } output.ClearSelection(); } catch (Exception) { MessageBox.Show("Fehler beim Updaten der Werte", "Fehler!", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
private void Output_CellMouseDown(object sender, DataGridViewCellMouseEventArgs e) { try { if (e.Button == MouseButtons.Right) { if (e.RowIndex != -1) { output.ClearSelection(); output.Rows[e.RowIndex].Selected = true; Führer f = GetFührer(); nfc.Enabled = f.Nfc != 0; infos.Enabled = f.Führungen > 0; anwesenheit.Enabled = f.Führungen == 0; anwesenheit.Checked = f.Anwesenheit; } } } catch (Exception) { MessageBox.Show("Fehler beim ContextMenu", "Fehler!", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
private void Output_CellClick(object sender, DataGridViewCellEventArgs e) { try { if (!string.IsNullOrEmpty(rfiditem)) { if (e.ColumnIndex != 4 && e.RowIndex >= 0) { Führer f = GetFührer(output.Rows[e.RowIndex]); if ((MessageBox.Show("Name: " + f.Nachname + " " + f.Vorname + "\nID: " + rfiditem, "Überprüfung?", MessageBoxButtons.YesNo, MessageBoxIcon.Question)).Equals(DialogResult.Yes)) { f.Nfc = long.Parse(rfiditem); f.Anwesenheit = true; CountStatistik(false); output.Rows[e.RowIndex].Cells[4].Style.BackColor = Color.OrangeRed; } rfiditem = string.Empty; } } output.ClearSelection(); if (e.ColumnIndex == 4 && e.RowIndex >= 0) { DataGridViewTextBoxCell status = (DataGridViewTextBoxCell)output.Rows[e.RowIndex].Cells[e.ColumnIndex]; Führer f = führer.Values.Where(x => x.Uuid.Equals((Guid)status.Tag)).First(); if (status.Value.Equals("Aktivieren")) { using Anzahl a = new Anzahl(); if (a.ShowDialog().Equals(DialogResult.OK)) { DateTime tmptime = DateTime.UtcNow.AddHours(1); f.Status = true; f.Führungen += 1; f.Anwesenheit = true; status.Value = "Pause"; output.Rows[e.RowIndex].Cells[3].Value = f.Führungen; output.Rows[e.RowIndex].Cells[4].Style.BackColor = Color.LightGreen; führung.Add(new Führung(f.Uuid, a.besucheranzahl, tmptime)); try { if (bstatistik != null || fstatistik != null) { bstatistik.UpdateChart(tmptime, f.Abteilung, a.besucheranzahl); fstatistik.UpdateChart(tmptime, f.Abteilung); } } catch (Exception) { } } } else { f.Status = false; status.Value = "Aktivieren"; output.Rows[e.RowIndex].Cells[4].Style.BackColor = Color.OrangeRed; führung.Where(x => x.Uuid.Equals(f.Uuid) && x.Ende == new DateTime()).First().Ende = DateTime.UtcNow.AddHours(1); } CountStatistik(true); } } catch (Exception) { MessageBox.Show("Fehler beim Klicken der Ausgabe", "Fehler!", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
public Edit(ref Führer f) { this.f = f; InitializeComponent(); Initialize(); }