Exemple #1
0
 public Info(Führer f, List <Führung> fg)
 {
     this.f  = f;
     this.fg = fg;
     InitializeComponent();
     Initialize();
 }
Exemple #2
0
 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); }
 }
Exemple #3
0
 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); }
 }
Exemple #4
0
 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); }
 }
Exemple #5
0
 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); }
 }
Exemple #6
0
 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); }
 }
Exemple #7
0
 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); }
 }
Exemple #8
0
        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); }
        }
Exemple #9
0
        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); }
        }
Exemple #10
0
 public Edit(ref Führer f)
 {
     this.f = f;
     InitializeComponent();
     Initialize();
 }