private AddOrError GetAddOrError(int?personId, int?leistungId) { if (!hasPerson()) { return(new AddOrError(HttpStatusCode.Unauthorized)); } if (personId == null) { return(new AddOrError(HttpStatusCode.BadRequest)); } if (leistungId == null) { return(new AddOrError(HttpStatusCode.BadRequest)); } Person person = db.PersonSet.Find(personId); if (person == null) { return(new AddOrError(HttpStatusCode.BadRequest)); } Leistung leistung = db.LeistungSet.Find(leistungId); if (leistung == null) { return(new AddOrError(HttpStatusCode.BadRequest)); } return(new AddOrError(new Add() { Person = person, Leistung = leistung })); }
public ActionResult DeleteConfirmed(int id) { Leistung leistung = db.LeistungSet.Find(id); db.LeistungSet.Remove(leistung); db.SaveChanges(); return(RedirectToAction("Index")); }
// Gibt einen String zurück, der alle Daten des PKW Objektes in einer Textzeile enthält. // Die einzelnen Datenelemente sind durch das Zeichen ";" coneinander getrennt public override String ToString() { return (base.ToString() + "; " + // Die Daten der Basisklasse in einen String ausgeben Hubraum.ToString() + "; " + // Die PKW spezifischen Daten werden an die Daten der Basisklasse angehängt Leistung.ToString() + "; " + Schadstoffklasse.ToString()); }
private void AddNotenTextBox(Leistung l, int row, int column, bool italic = false, CellEditorTag tag = null, bool useeditor = false) { TextBox tb = new TextBox(); if (l == null) { tb.Text = ""; } else { tb.Text = l.Notenstufe.ToString(); tb.ToolTip = $"Erhoben am: {l.Erhebungsdatum} \r\n" + (l.LetzteÄnderung != null ? $"Letzte Änderung: {l.LetzteÄnderung} \r\n" : ""); } tb.TextAlignment = TextAlignment.Center; tb.VerticalAlignment = VerticalAlignment.Center; tb.Margin = new Thickness(MARGIN); tb.IsReadOnly = true; if (tag != null) { tb.Tag = tag; if (useeditor) { tb.MouseDoubleClick += (s, e) => { TextBox sender = s as TextBox; if (sender == null) { return; } CellEditorTag ctag = sender.Tag as CellEditorTag; if (ctag == null) { return; } if (new LeistungsEditor(ctag).ShowDialog() == true) { UpdateNotenGrid(); } } } ; } if (italic) { tb.FontStyle = FontStyles.Italic; } gNoten.Children.Add(tb); Grid.SetRow(tb, row); Grid.SetColumn(tb, column); }
public ActionResult Edit([Bind(Include = "Id,Bezeichnung,Preis")] Leistung leistung) { if (ModelState.IsValid) { db.Entry(leistung).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } return(View(leistung)); }
public ActionResult Create([Bind(Include = "Id,Bezeichnung,Preis")] Leistung leistung) { if (ModelState.IsValid) { db.LeistungSet.Add(leistung); db.SaveChanges(); return(RedirectToAction("Index", "Mitarbeiter")); } return(View(leistung)); }
public void SetMode(CellEditorTag tag) { CLeistung = tag.Leistung; Mode = tag.Mode; if (Mode == DialogMode.Neu) { CLeistung = new Leistung(); if (tag.Leistungsart != null) { Leistungsart = tag.Leistungsart; } else { Leistungsart = LstLeistungsarten.FirstOrDefault(); } if (tag.SchuelerKlasse != null) { SchuelerKlasse = tag.SchuelerKlasse; } else { SchuelerKlasse = LstSchuelerKlassen.FirstOrDefault(); } UFachLehrer = LstUnterrichtsfachLehrer.FirstOrDefault(); if (tag.Unterrichtsfach != null) { UFachLehrer ufl = DBZugriff.Current.SelectFirstOrDefault <UFachLehrer>(x => x.Unterrichtsfach == tag.Unterrichtsfach); if (ufl != null) { UFachLehrer = ufl; } } Notenstufe = 1; Erhebungsdatum = DateTime.Now; //Updaten OnPropertyChanged(nameof(LstUnterrichtsfachLehrer)); OnPropertyChanged(nameof(LstSchuelerKlassen)); } }
// GET: Leistungs/Edit/5 public ActionResult Edit(int?id) { if (!hasPerson()) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Leistung leistung = db.LeistungSet.Find(id); if (leistung == null) { return(HttpNotFound()); } return(View(leistung)); }
// GET: Katalog/Abwählen/5 public ActionResult Deselect(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } if (!hasPerson()) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Leistung leistung = db.LeistungSet.Find(id); if (leistung == null) { return(HttpNotFound()); } EingeloggtePerson.VerfuegtUeber.Remove(leistung); db.SaveChanges(); return(RedirectToAction("Index")); }
internal void InsertTest() { Schule schule = new Schule() { Bez = "EDV-Schule",//"TestSchule"+DateTime.Now.Millisecond, }; schule.Speichern(); Lehrer leh = new Lehrer() { Vorname = "Klaus", Nachname = "Reuther", Kuerzel = "BAR", }; leh.Speichern(); Klasse kl = new Klasse() { Bez = "BFI12A",//"TKL1A"+ DateTime.Now.Millisecond, SJ = ViewModel.Tool.CURRENTSJ, Schule = schule, Klassenleiter = leh, StellvertretenderKlassenleiter = leh, }; kl.Speichern(); Zeugnisfach zf = new Zeugnisfach() { Bez = "TFBAN", Fachart = Fachart.Pflichtfach, Pos = 1, Vorrueckungsfach = true, AbschliessendesFach = true, Klasse = kl, }; zf.Speichern(); Zeugnisfach zf2 = new Zeugnisfach() { Bez = "Anwendungsentwicklung", Fachart = Fachart.Wahlpflichtfach, Pos = 2, Vorrueckungsfach = true, AbschliessendesFach = true, Klasse = kl, }; zf2.Speichern(); Unterrichtsfach uf = new Unterrichtsfach() { Bez = "TFBAN1", Pos = 1, Stunden = 6, Zeugnisfach = zf, }; uf.Speichern(); Unterrichtsfach uf2 = new Unterrichtsfach() { Bez = "TFBAN2", Pos = 1, Stunden = 4, Zeugnisfach = zf, }; uf2.Speichern(); Unterrichtsfach uf2B = new Unterrichtsfach() { Bez = "C#", Pos = 1, Stunden = 4, Zeugnisfach = zf2, }; uf2B.Speichern(); UFachLehrer ufl = new UFachLehrer() { Lehrer = leh, Unterrichtsfach = uf, Stunden = uf.Stunden }; ufl.Speichern(); UFachLehrer ufl2 = new UFachLehrer() { Lehrer = leh, Unterrichtsfach = uf2, Stunden = uf.Stunden }; ufl2.Speichern(); UFachLehrer ufl2B = new UFachLehrer() { Lehrer = leh, Unterrichtsfach = uf2B, Stunden = uf.Stunden }; ufl2B.Speichern(); Schueler s = new Schueler() { Vorname = "Hans",//"VornameSchüler"+DateTime.Now.Millisecond, Nachname = "Bauer", Geburtsdatum = new DateTime(2000, 1, 1), Geschlecht = Geschlecht.M, Konfession = Konfession.BL, }; s.Speichern(); SchuelerKlasse sk = new SchuelerKlasse() { Klasse = kl, Schueler = s, }; sk.Speichern(); Schueler s2 = new Schueler() { Vorname = "Harry",//"VornameSchüler" + (DateTime.Now.Millisecond+10), Nachname = "Müller", Geburtsdatum = new DateTime(2001, 1, 1), Geschlecht = Geschlecht.M, Konfession = Konfession.BL, }; s2.Speichern(); SchuelerKlasse sk2 = new SchuelerKlasse() { Klasse = kl, Schueler = s2, }; sk2.Speichern(); Leistungsgruppe lg = new Leistungsgruppe() { Bez = "Schriftlich", Gewicht = 2, }; lg.Speichern(); Leistungsgruppe lg2 = new Leistungsgruppe() { Bez = "Mündlich", Gewicht = 1, }; lg2.Speichern(); Leistungsart la = new Leistungsart() { Bez = "Schulaufgabe", Gewichtung = 2, Gruppe = lg, }; la.Speichern(); Leistungsart la2 = new Leistungsart() { Bez = "Stegreifaufgabe", Gewichtung = 1, Gruppe = lg, }; la2.Speichern(); Leistungsart la3 = new Leistungsart() { Bez = "Abfrage", Gewichtung = 1, Gruppe = lg2, }; la3.Speichern(); Leistung lei = new Leistung() { Erhebungsdatum = DateTime.Now, Notenstufe = 1, Tendenz = Tendenz.UP, LetzteÄnderung = DateTime.Now, Leistungsart = la, SchuelerKlasse = sk, UFachLehrer = ufl }; lei.Speichern(); Leistung lei2 = new Leistung() { Erhebungsdatum = DateTime.Now, Notenstufe = 3, Tendenz = Tendenz.UP, LetzteÄnderung = DateTime.Now, Leistungsart = la2, SchuelerKlasse = sk, UFachLehrer = ufl }; lei2.Speichern(); Leistung lei3 = new Leistung() { Erhebungsdatum = DateTime.Now, Notenstufe = 2, Tendenz = Tendenz.UP, LetzteÄnderung = DateTime.Now, Leistungsart = la2, SchuelerKlasse = sk, UFachLehrer = ufl }; lei3.Speichern(); Leistung lei4 = new Leistung() { Erhebungsdatum = DateTime.Now, Notenstufe = 3, Tendenz = Tendenz.UP, LetzteÄnderung = DateTime.Now, Leistungsart = la3, SchuelerKlasse = sk, UFachLehrer = ufl }; lei4.Speichern(); Leistung leiB = new Leistung() { Erhebungsdatum = DateTime.Now, Notenstufe = 3, Tendenz = Tendenz.UP, LetzteÄnderung = DateTime.Now, Leistungsart = la, SchuelerKlasse = sk, UFachLehrer = ufl2 }; leiB.Speichern(); Leistung lei2B = new Leistung() { Erhebungsdatum = DateTime.Now, Notenstufe = 1, Tendenz = Tendenz.UP, LetzteÄnderung = DateTime.Now, Leistungsart = la, SchuelerKlasse = sk, UFachLehrer = ufl2B }; lei2B.Speichern(); Leistung lei2C = new Leistung() { Erhebungsdatum = DateTime.Now, Notenstufe = 3, Tendenz = Tendenz.UP, LetzteÄnderung = DateTime.Now, Leistungsart = la, SchuelerKlasse = sk, UFachLehrer = ufl2B }; lei2C.Speichern(); }
private void InternalThrowEx(Leistung l, string attr, object attrvalue) { throw new ArgumentException($"Fehler der Codierung von Leistung SchülerName['{l?.SchuelerKlasse?.Schueler?.Nachname} {l?.SchuelerKlasse?.Schueler?.Vorname}']: Fehlerhaftes Attribut '{attr}'='{attrvalue}'"); }
public override string ToString() { return($"Hersteller: {Hersteller}\t\tName: {Name}\t\tLeistung: {Leistung.ToString()}"); }
private static void RunTest() { try { Schule schule = new Schule() { Bez = "TestSchule", }; schule.Speichern(); Lehrer leh = new Lehrer() { Vorname = "VorTest", Nachname = "NachTest", Kürzel = "TL", }; leh.Speichern(); Klasse kl = new Klasse() { Bez = "TKL1A", SJ = 2017, Schule = schule, Klassenleiter = leh, StellvertretenderKlassenleiter = leh, }; kl.Speichern(); Zeugnisfach zf = new Zeugnisfach() { Bez = "TestAbschlussFach", Fachart = "TestFachArt", Pos = 1, Vorrueckungsfach = true, AbschliessendesFach = true, Klasse = kl, }; zf.Speichern(); Unterrichtsfach uf = new Unterrichtsfach() { Bez = "TestUnterichtsFach", Pos = 1, Stunden = 6, Zeugnisfach = zf, }; uf.Speichern(); UFachLehrer ufl = new UFachLehrer() { Lehrer = leh, Unterrichtsfach = uf, Stunden = uf.Stunden }; ufl.Speichern(); Schueler s = new Schueler() { Vorname = "VorTestS", Nachname = "NachTestS", Geburtsdatum = new DateTime(2000, 1, 1), Geschlecht = Geschlecht.M, Konfession = Konfession.NONE, }; s.Speichern(); SchuelerKlasse sk = new SchuelerKlasse() { Klasse = kl, Schueler = s, }; sk.Speichern(); Leistungsart la = new Leistungsart() { Bez = "Schulaufgabe", Gewichtung = 2, Gruppe = "S", }; la.Speichern(); Leistungsgruppe lg = new Leistungsgruppe() { Bez = "Schriftlich", Gewicht = "2", Leistungsart = la }; lg.Speichern(); Leistung lei = new Leistung() { Erhebungsdatum = DateTime.Now, Notenstufe = 1, Tendenz = Tendenz.UP, LetzteÄnderung = DateTime.Now, Leistungsart = la, SchuelerKlasse = sk, }; lei.Speichern(); } catch (Exception e) { Console.WriteLine(e); } }
/// <summary> /// Baut den Inhalt des Notengrids auf /// WARNUNG: Methode ist nicht optimiert! Bei vielen Einträgen kann es eventl zu UI-Verzögerungen kommen, da nur der UI-Thread genutzt wird /// </summary> private void BuildContent() { List <Zeugnisfach> lstzfs = _vm.GetZFs(); int currentrow = HEADER_ROWS - 1; foreach (Schueler s in _vm.GetSchueler()) { gNoten.RowDefinitions.Add(new RowDefinition() { Height = new GridLength(1, GridUnitType.Auto) }); currentrow++; AddTextBlock(s.Nachname + " " + s.Vorname, currentrow, 0, 1, DESC_COLUMNS); int currentrowschueler = currentrow; List <Leistung> schuelerleistungen = _vm.GetNoten(s); List <int> zfNoten = new List <int>(); foreach (Zeugnisfach zf in lstzfs) { gNoten.RowDefinitions.Add(new RowDefinition() { Height = new GridLength(1, GridUnitType.Auto) }); currentrow++; AddTextBlock(zf.Bez, currentrow, 1, 1, DESC_COLUMNS - 1); int currentrowzf = currentrow; List <Tuple <Unterrichtsfach, double> > ufNoten = new List <Tuple <Unterrichtsfach, double> >(); foreach (Unterrichtsfach uf in zf.Unterrichtsfaecher.Where(x => x.Active == true).OrderBy(x => x.Bez).ToList()) { gNoten.RowDefinitions.Add(new RowDefinition() { Height = new GridLength(1, GridUnitType.Auto) }); currentrow++; AddTextBlock(uf.Bez, currentrow, 2, 1, DESC_COLUMNS - 2); List <Leistung> lstleistungenuf = new List <Leistung>(); foreach (ColumnSpecification cs in lstcspec.Where(x => x.ColumnBez != null) .OrderBy(x => x.ColumnIndex) .ToList()) { //Einzelne Noten Leistung l = schuelerleistungen.FindAll(x => x.Leistungsart == cs.La && x.UFachLehrer.Unterrichtsfach == uf). OrderBy(x => x.Erhebungsdatum).ToList().ElementAtOrDefault((int)cs.ColumnBez - 1); if (l == null) //Neu anlegbar { AddNotenTextBox(null, currentrow, cs.ColumnIndex, false, new CellEditorTag() { Mode = DialogMode.Neu, Leistungsart = cs.La, Unterrichtsfach = uf, SchuelerKlasse = s.SchuelerKlassen.Where(x => x.Active == true && x.Klasse == _vm.CurrentKlasse).FirstOrDefault(), }, true); continue; } AddNotenTextBox(l, currentrow, cs.ColumnIndex, false, new CellEditorTag() { Mode = DialogMode.Aendern, Leistung = l, SchuelerKlasse = s.SchuelerKlassen.Where(x => x.Active == true && x.Klasse == _vm.CurrentKlasse).FirstOrDefault(), }, true); lstleistungenuf.Add(l); } //TeilNoten Leistungsarten foreach (ColumnSpecification cs in lstcspec.Where(x => x.ColumnBez == null)) { List <Leistung> lstlei = schuelerleistungen.FindAll(x => x.Leistungsart == cs.La && x.UFachLehrer.Unterrichtsfach == uf).ToList(); if (lstlei.Count == 0) { continue; } AddNotenTextBox(_vm.CalcNoteDouble(lstlei), currentrow, cs.ColumnIndex, true); } //GesamtNote UF double ufnote = _vm.CalcNoteDouble(lstleistungenuf); AddNotenTextBox(ufnote, currentrow, gNoten.ColumnDefinitions.Count - 1, true); if (ufnote != 0) { ufNoten.Add(new Tuple <Unterrichtsfach, double>(uf, ufnote)); } } //Gesamtnote ZF double zfgesnote = _vm.CalcNoteDoubleZF(ufNoten); AddNotenTextBox(zfgesnote, currentrowzf, gNoten.ColumnDefinitions.Count - 1, true); if (zfgesnote != 0) { zfNoten.Add((int)Math.Round(zfgesnote)); } } //GesamtNote Schüler AddNotenTextBox(_vm.CalcNoteDoubleSchueler(zfNoten), currentrowschueler, gNoten.ColumnDefinitions.Count - 1, true, true); } }