/// <summary> /// Gibt eine Taetigkeit aus der Datenbank anhand der Taetigkeit ID zurück /// </summary> /// <param name="taetigkeitID"></param> /// <returns>Taetigkeit aus Datenbank</returns> /// <seealso cref="EasyAuftragContext"/> public Taetigkeit TaetigkeitLaden(int taetigkeitID, out bool success, string connection) { Taetigkeit tat = new Taetigkeit(); try { using (var db = new EasyAuftragContext(connection)) { if (db.Taetigkeiten.Find(taetigkeitID) != null) { tat = (from k in db.Taetigkeiten select k).First(k => k.TaetigkeitID == taetigkeitID); success = true; } else { success = false; } } } catch (Exception ex) { ErrorHandler.ErrorHandle(ex); success = false; } return(tat); }
/// <summary> /// Bearbeitet eine existierende Tätigkeit mit den übergebenen Daten in der Datenbank. /// </summary> /// <param name="taetigkeit">aktualisierte Daten der Tätigkeit</param> /// <param name="taetigkeitID">Primärschlüssel der Tätigkeit in der Datenbank</param> /// <seealso cref="EasyAuftragContext"/> public bool TaetigkeitBearbeiten(Taetigkeit taetigkeit, int taetigkeitID, string connection) { try { using (var db = new EasyAuftragContext(connection)) { if (db.Taetigkeiten.Find(taetigkeitID) != null) { db.Taetigkeiten.Find(taetigkeitID).AuftragID = taetigkeit.AuftragID; db.Taetigkeiten.Find(taetigkeitID).MitarbeiterID = taetigkeit.MitarbeiterID; db.Taetigkeiten.Find(taetigkeitID).Name = taetigkeit.Name; db.Taetigkeiten.Find(taetigkeitID).Datum = taetigkeit.Datum; db.Taetigkeiten.Find(taetigkeitID).StartZeit = taetigkeit.StartZeit; db.Taetigkeiten.Find(taetigkeitID).EndZeit = taetigkeit.EndZeit; db.SaveChanges(); return(true); } else { return(false); } } } catch (Exception ex) { ErrorHandler.ErrorHandle(ex); return(false); } }
async void Handle_ItemTapped(object sender, ItemTappedEventArgs e) { if (e.Item == null) { return; } Taetigkeit selectedTaetigkeit = (Taetigkeit)MyListView.SelectedItem; String status; CultureInfo ci = new CultureInfo("de-DE"); String zeitraum; if (selectedTaetigkeit.aktiv) { status = "aktiv"; DateTime von; von = (DateTime)selectedTaetigkeit.entries_aktivVon; zeitraum = "Seit " + von.ToString("d", ci); } else { status = "inaktiv"; DateTime von; von = (DateTime)selectedTaetigkeit.entries_aktivVon; DateTime bis; bis = (DateTime)selectedTaetigkeit.entries_aktivBis; zeitraum = "Von " + von.ToString("d", ci) + " bis " + bis.ToString("d", ci); } String infos; if (!string.IsNullOrWhiteSpace(selectedTaetigkeit.entries_untergliederung)) { infos = "Bereich: " + selectedTaetigkeit.entries_untergliederung; infos += "\nUntergliederung: " + selectedTaetigkeit.entries_gruppierung + "\nStatus: " + status + "\n" + zeitraum; } else { infos = "Untergliederung: " + selectedTaetigkeit.entries_gruppierung + "\nStatus: " + status + "\n" + zeitraum; } if (!string.IsNullOrWhiteSpace(selectedTaetigkeit.entries_caeaGroup)) { infos += "\nRechtegruppe: " + selectedTaetigkeit.entries_caeaGroup; } await DisplayAlert(selectedTaetigkeit.entries_taetigkeit, infos, "OK"); //Deselect Item ((ListView)sender).SelectedItem = null; }
/// <summary> /// Legt eine neue Tätigkeit mit den übergebenen Daten in der Datenbank an. /// </summary> /// <param name="taetigkeit">Daten der neuen Tätigkeit</param> /// <seealso cref="EasyAuftragContext"/> public void TaetigkeitAnlegen(Taetigkeit taetigkeit, string connection) { try { using (var db = new EasyAuftragContext(connection)) { db.Taetigkeiten.Add(taetigkeit); db.SaveChanges(); } } catch (Exception ex) { ErrorHandler.ErrorHandle(ex); } }
/// <summary> /// Konstruktor für die <see cref="TaetigkeitView"/> /// </summary> /// <param name="titel"></param> /// <param name="taetigkeit"></param> public TaetigkeitView(string titel, Taetigkeit taetigkeit, string connection) { _connection = connection; InitializeComponent(); Text = titel; dtpDatum.MaxDate = DateTime.Now; dtpDatum.Value = DateTime.Now; dtpStart.CustomFormat = "HH:mm"; dtpEnde.CustomFormat = "HH:mm"; if (titel == "Tätigkeit Löschen") { butSpeichern.Text = "Löschen"; } TaetigkeitInfo = taetigkeit; FillControls(TaetigkeitInfo); }
public void ZeitBerechnenTest() { // neue Tätigkeit erzeugen Taetigkeit tatTest = new Taetigkeit(); // Array mit StartZeiten festlegen TimeSpan[] startTestZeit = new TimeSpan[] { new TimeSpan(0, 13, 0), new TimeSpan(4, 21, 0), new TimeSpan(12, 6, 0), new TimeSpan(13, 46, 0) }; // Array mit EndZeiten festlegen TimeSpan[] endTestZeit = new TimeSpan[] { new TimeSpan(23, 54, 0), new TimeSpan(21, 27, 0), new TimeSpan(15, 12, 0), new TimeSpan(13, 46, 0) }; // Array mit Testergebnissen festlegen double[] testResults = { 1421, 1026, 186, 0 }; // Durch Arrays loopen, Start- und EndZeit festlegen, und Taetigkeit.Minuten mit den Testergebnissen vergleichen for (int i = 0; i < 4; i++) { tatTest.StartZeit = startTestZeit[i]; tatTest.EndZeit = endTestZeit[i]; if (!testResults[i].Equals(tatTest.Minuten)) { Assert.Fail(); } } }
static void Main(string[] args) { Person Sohn = new Person() { Vorname = "Markus", Nachname = "Hoß" }; Taetigkeit Bloedsinn = new Taetigkeit() { Ausfuehrender = Sohn, Beschreibung = "Ich habe die Datenbank gelöscht!" }; Bloedsinn.Ausführen(2); Bloedsinn.Ausführen(1); Bloedsinn.Ausgefuehrt(); }
/// <summary> /// Zeigt die übergebene <see cref="Taetigkeit"/> in den Controls an. /// </summary> /// <param name="taetigkeit"></param> private void FillControls(Taetigkeit taetigkeit) { try { using (var db = new EasyAuftragContext(_connection)) { int[] mitarbeiterIDs = (from m in db.Mitarbeiters select m.MitarbeiterID).ToArray(); var cbMitarbeiterEintraege = (from m in db.Mitarbeiters select new { ID = m.MitarbeiterID, mName = m.Name }).ToList(); cbMitarbeiter.DataSource = cbMitarbeiterEintraege; cbMitarbeiter.DisplayMember = "mName"; cbMitarbeiter.ValueMember = "ID"; cbMitarbeiter.SelectedIndex = Array.IndexOf(mitarbeiterIDs, TaetigkeitInfo.MitarbeiterID); } dtpDatum.Value = taetigkeit.Datum; tbName.Text = taetigkeit.Name; dtpStart.Value = Convert.ToDateTime(taetigkeit.StartZeit.ToString()); dtpEnde.Value = Convert.ToDateTime(taetigkeit.EndZeit.ToString()); } catch (Exception ex) { ErrorHandler.ErrorHandle(ex); } }
/// <summary> /// Konstruktor für die <see cref="TaetigkeitView"/> /// </summary> /// <param name="titel"></param> /// <param name="connection"></param> public TaetigkeitView(string titel, string connection) { try { _connection = connection; TaetigkeitInfo = new Taetigkeit(); InitializeComponent(); Text = titel; dtpDatum.MaxDate = DateTime.Now; using (var db = new EasyAuftragContext(connection)) { var mitarbeiter = (from k in db.Mitarbeiters select new { ID = k.MitarbeiterID, mName = k.Name }).ToList(); cbMitarbeiter.DataSource = mitarbeiter; cbMitarbeiter.DisplayMember = "mName"; cbMitarbeiter.ValueMember = "ID"; } dtpStart.CustomFormat = "HH:mm"; dtpEnde.CustomFormat = "HH:mm"; } catch (Exception ex) { ErrorHandler.ErrorHandle(ex); } }
/// <summary> /// Liest Taetigkeiten aus einer XML Datei /// </summary> /// <param name="importPfad">Pfad der XML Datei</param> /// <returns>Liste mit Taetigkeitsobjekten</returns> /// <seealso cref="Taetigkeit"/> public List <Taetigkeit> TaetigkeitLesen(string importPfad) { List <Taetigkeit> lstTaetigkeit = new List <Taetigkeit>(); try { // Erzeugt ein XmlDocument und lädt die Datei XmlDocument xml = new XmlDocument(); xml.Load(importPfad); // Speichert alle Knoten mit dem Tag "Taetigkeit" in einer Liste XmlNodeList xmlTaetigkeit = xml.GetElementsByTagName("Taetigkeit"); if (xmlTaetigkeit.Count > 0) { // Geht durch die Liste der Knoten foreach (XmlNode item in xmlTaetigkeit) { // Speichert alle Eigenschaften in einem Taetigkeisobjekt Taetigkeit taetigkeit = new Taetigkeit(); taetigkeit.Name = item.Attributes["Name"].Value.Trim(); if (int.TryParse(item.Attributes["TaetigkeitID"].Value, out int taetigkeitID)) { taetigkeit.TaetigkeitID = taetigkeitID; } else { MessageBox.Show("Konnte TaetigkeitID nicht einlesen."); } if (int.TryParse(item.Attributes["AuftragID"].Value, out int auftragID)) { taetigkeit.AuftragID = auftragID; } else { MessageBox.Show("Konnte AuftragID nicht einlesen."); } if (int.TryParse(item.Attributes["MitarbeiterID"].Value, out int mitarbeiterID)) { taetigkeit.MitarbeiterID = mitarbeiterID; } else { MessageBox.Show("Konnte MitarbeiterID nicht einlesen."); } if (DateTime.TryParse(item.Attributes["Datum"].Value, out DateTime datum)) { taetigkeit.Datum = datum; } else { MessageBox.Show("Konnte Datum nicht einlesen."); } if (TimeSpan.TryParse(item.Attributes["StartZeit"].Value, out TimeSpan start)) { taetigkeit.StartZeit = start; } else { MessageBox.Show("Konnte Startzeit nicht einlesen."); } if (TimeSpan.TryParse(item.Attributes["EndZeit"].Value, out TimeSpan ende)) { taetigkeit.EndZeit = ende; } else { MessageBox.Show("Konnte Endzeit nicht einlesen."); } // Fügt die Tatigkeit der Liste hinzu lstTaetigkeit.Add(taetigkeit); } } else { MessageBox.Show("Ungültiges Format."); } } catch (Exception ex) { ErrorHandler.ErrorHandle(ex); } // Die Liste wird zurückgegeben return(lstTaetigkeit); }
/// <summary> /// Liest Tätigkeiten aus Einer CSV Datei /// </summary> /// <param name="importPfad">Pfad zur CSV Datei</param> /// <returns>Liste von Taetigkeitsobjekten</returns> /// <seealso cref="Taetigkeit"/> public List <Taetigkeit> TaetigkeitLesen(string importPfad) { List <Taetigkeit> lstTaetigkeit = new List <Taetigkeit>(); try { // Erzeugt einen StreamReader für die Datei TextReader reader = new StreamReader(importPfad); // Deklariert und initialisiert die Variable line mit der ersten Zeile der CSV Datei, also dem Header, welchen wir nicht auslesen wollen string line = reader.ReadLine(); // Solange die Zeile noch Daten enthält wird sie weiter ausgelesen und in eine Liste von Tätigkeiten geschrieben while (!string.IsNullOrEmpty(line = reader.ReadLine())) { // Die Zeile wird am Datentrenner in ein Array aus Strings aufgespalten string[] taetigkeitItems = line.Split(_datenTrenner.ToCharArray()); // Die Daten in den Zellen des Arrays werden in die einzelnen Eigenschaften eines Taetigkeitsobjekts geschrieben Taetigkeit taetigkeit = new Taetigkeit(); if (int.TryParse(string.Format(taetigkeitItems[0]), NumberStyles.Integer, _culture, out int taetigkeitID)) { taetigkeit.TaetigkeitID = taetigkeitID; } else { MessageBox.Show("Konnte TaetigkeitID nicht einlesen."); } if (int.TryParse(string.Format(taetigkeitItems[1]), NumberStyles.Integer, _culture, out int auftragID)) { taetigkeit.AuftragID = auftragID; } else { MessageBox.Show("Konnte AuftragID nicht einlesen."); } if (int.TryParse(string.Format(taetigkeitItems[2]), NumberStyles.Integer, _culture, out int mitarbeiterID)) { taetigkeit.MitarbeiterID = mitarbeiterID; } else { MessageBox.Show("Konnte MitarbeiterID nicht einlesen."); } if (DateTime.TryParse(taetigkeitItems[3], _culture, DateTimeStyles.None, out DateTime datum)) { taetigkeit.Datum = datum; } else { MessageBox.Show("Konnte Datum nicht einlesen."); } taetigkeit.Name = taetigkeitItems[4].Trim(); if (TimeSpan.TryParse(taetigkeitItems[5], out TimeSpan start)) { taetigkeit.StartZeit = start; } else { MessageBox.Show("Konnte Startzeit nicht einlesen."); } if (TimeSpan.TryParse(taetigkeitItems[6], out TimeSpan ende)) { taetigkeit.EndZeit = ende; } else { MessageBox.Show("Konnte Endzeit nicht einlesen."); } // Die Tätigkeit wird der Tätigkeitsliste hinzugefügt lstTaetigkeit.Add(taetigkeit); } reader.Close(); } catch (Exception ex) { ErrorHandler.ErrorHandle(ex); } // Die Liste wird zurückgegeben return(lstTaetigkeit); }