- Mitarbeit: Tagesflagge (👑 Spitzentag / 😴 Schlaftag / ⚡ Schlechter Tag)
je Schüler und Sitzung. Primär im Sitzplatz-Dialog (⇧1/2/3, ⇧X) mit
Badge auf der Sitzplatz-Kachel; Fallback in der Schnelleingabe für
Lerngruppen ohne Sitzplan.
- Noten: neuer Dialog "Überblick" in der Notenübersicht zeigt Klausuren,
Mitarbeit- und sonstige Noten eines Schülers samt berechneter
Zeugnisnote. Zielnoten-Rechner (ReportGradeTargetCalculator) beantwortet
"was brauche ich noch für Note X", ein Was-wäre-wenn-Rechner simuliert
eine zusätzliche Klausurnote. Bewerter-/Schülermodus per Umschalter im
selben Fenster — Bewertermodus zeigt zusätzlich Kursdurchschnitt je
Klausur und erlaubt das Bearbeiten von Mitarbeit-/Sonstige-Noten.
Klausurverlauf als Balken-Sparkline wie die bestehende Notenentwicklung.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
- Klausuren: neuer ExamWeekLoadService zählt eigene Klausuren je ISO-Woche
über alle Kurse hinweg (Klassen-Kollisionen deckt bereits der externe
Klausurplaner ab). Hinweis direkt im ExamDialog beim Datum, zusätzlich
neue Dashboard-Karte "Klausurwochen" für die 60-Tage-Vorausschau.
- Mitarbeit: Schnelleingabe-Dialog kann eine Bewertung jetzt per Entf auf
"nicht bewertet" zurücksetzen (bisher nur im Sitzplatz-Dialog möglich).
- Sitzplan: Strichliste "gemeldet"/"gemeldet und drangekommen" direkt auf
der Sitzplatz-Kachel (ParticipationEntry.RaisedHandCount/CalledOnCount);
schlägt im Sitzplatz-Dialog eine Quantitätsbewertung vor (ein Klick zum
Übernehmen, nie automatisch).
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Kapitel 3.3: neuer Button erzeugt eine Mitarbeitssitzung aus einer geplanten
Stunde (Datum/Thema, dupl.-sicher über Lesson.LessonId), Sitzungen lassen
sich jetzt mit Rückfrage bei vorhandenen Bewertungen löschen, und der
Dashboard-Kalender zeigt Sitzungen als dritten Termintyp neben Stunden/
Klausuren. Das Bearbeiten von Sitzungen war bereits vorhanden (undokumentiert
aus früherer Ad-hoc-Arbeit) und wird hier nur nachgezogen.
Bugfix: "Serie erzeugen" legte für Doppelstunden zwei Lessons mit gleichem
Datum an statt einer, da jede Stundenplan-Periode einzeln behandelt wurde.
Folgeperioden werden jetzt der Lesson der ersten Periode zugerechnet.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
- Schnellbewerten-Dialog: abwesende Schüler werden gedimmt und mit ihrem
Anwesenheitsstatus statt der Aspektbeschriftung angezeigt, damit keine
Mitarbeitsnote für nicht anwesende Schüler vergeben wird.
- Zeugnisnoten-Dialog: zeigt je Schüler die Fehlquote im gewählten
Zeitraum, ab 50 % hervorgehoben (informativ, keine automatische
Notenänderung).
- Gruppen-Tab "Dokumentation" (bisher Platzhalter) implementiert: listet
alle Dokumentationseinträge der Gruppen-Schüler, mit Schüler-Filter und
optionalem "Nur dieser Unterricht"-Schalter. Einträge aus anderen
Lerngruppen werden standardmäßig mitangezeigt, aber gedimmt. Der
Dokumentationsdialog bekommt dafür einen optionalen Schüler-Picker.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
- GetRating las aus einem nie aktualisierten ParticipationEntry-
Snapshot statt aus der laufend gepflegten Cells-Liste. Beim
Zurückwechseln zu einem vorherigen Schüler zeigte der Dialog
dadurch fälschlich keine Bewertung, obwohl sie tatsächlich
gespeichert war. Jetzt liest GetRating aus Cells, das ungenutzte
_entry-Feld entfernt.
- Pfeiltasten waren unbehandelt und fielen auf Avalonias
Standard-Fokusnavigation durch: der Fokus sprang auf den
Schließen-Button, ein Enter danach schloss den Dialog statt zum
nächsten Schüler zu springen. Jetzt echte Navigation: ↑/↓ voriger/
nächster Aspekt (neue PreviousAspect-Methode), ←/→ voriger/
nächster Schüler - zugleich rechtsseitiges Pendant zu Q/W/E/R/T
links. Hotkey-Legende im Dialog aktualisiert.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Neue Klasse ParticipationRatingScale (Core) ist die einzige Quelle für
Rohwerte je Aspekt-Typ. Scale3/Binary liegen bewusst direkt auf derselben
-2..+2-Achse wie Scale5 (nur mit weniger Zwischenschritten), damit die
bestehende Gewichtung/Mittelwertbildung zur Mitarbeitsnote unverändert
kompatibel bleibt. Points ist grundverschieden (echter Zählwert 0..MaxPoints,
neues Feld auf ParticipationAspect) und wird nur zur Aggregation linear auf
dieselbe Achse normiert.
Ohne diese Normierung hätte ein Punkte-Aspekt die Mitarbeitsnote verfälscht:
drei Stellen summierten bisher den Rohwert direkt (ParticipationGradeDialog-
ViewModel.Recompute, ParticipationWizardViewModels.WeightedRating und
.ComputeSuggestion) - alle drei sind jetzt auf die Normierung umgestellt.
Raster: Punkte-Aspekte zeigen ein NumericUpDown statt fester Stufen-Buttons.
Schnelleingabe-Dialog: Zifferntasten/+/- sind jetzt typabhängig, Legende
zeigt live die für den aktuellen Aspekt gültigen Tasten. Aspekt-Verwaltung
um "Max. Punkte"-Feld ergänzt (nur bei Typ "Punkte" sichtbar).
Bewusst nicht angefasst: die Trendlinien-Visualisierung im
Mitarbeits-Assistenten bleibt fest auf die drei Standardaspekte
zugeschnitten - eigener, größerer Umbau.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Neuer Button "Aspekte verwalten" im Mitarbeit-Tab öffnet
ParticipationAspectsDialog: Anlegen, Bezeichnung/Typ/Gewichtung/Aktiv-Status
bearbeiten (speichert sofort, gleiches Muster wie die bestehende
Gewichtungs-Bearbeitung in 3.2.1), Hoch/Runter-Reihenfolge, Löschen mit
Rückfrage. Verwaltet bewusst nur die gruppenspezifischen Aspekte, nicht den
bislang nirgends befüllten globalen Standardkatalog.
Schlüssel ist nur beim Neuanlegen editierbar - er verknüpft AspectRating mit
dem Aspekt per Key, ein nachträgliches Umbenennen würde historische
Bewertungen unauffindbar machen.
IParticipationAspectRepository.Save validiert jetzt Pflichtfelder und
Schlüssel-Eindeutigkeit gegen globale Standards UND eigene Gruppen-Aspekte
zusammen, da beide im Bewertungsraster kombiniert verwendet werden. Neue
GetAllByGroup-Methode (inkl. inaktiver) für die Verwaltungsansicht.
3.1.3 (Scale3/Binary/Points im Bewertungsraster selbst) bewusst nicht
angefasst - eigener, größerer Eingriff in die Bewertungs-UI.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Zentrale Exception-Behandlung (Dispatcher.UIThread.UnhandledException,
AppDomain, TaskScheduler) verhindert Abstürze und protokolliert Fehler
über AppLogger in eine rotierende Log-Datei im App-Datenverzeichnis.
Toast-Benachrichtigungen zeigen Erfolg/Fehler global an. Alle Dialoge
mit Formularfeldern zeigen Validierungsmeldungen jetzt direkt am
betroffenen Feld statt in einem Sammel-Label.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Notenübersicht der Gruppe (Matrix, Gesamt-Spalte, Sortierung, Halbjahresfilter),
Einzelnoten-Pflege samt Sammelerfassung, Gewichtungsschema mit Voreinstellung je
Gruppentyp, Zeugnisnoten-Berechnung mit Übersteuern/Festschreiben/Export und
Notenentwicklung im Schülerdetail.
Dazu Anwesenheits-/Hausaufgaben-Tracking je Mitarbeit-Sitzung, ein neuer
Mitarbeits-Assistent (Zeitleiste mit Abschnitten, automatischer Notenvorschlag,
Zusammenzug zur Halbjahresnote) und eine Dashboard-Kachel für offene
Entschuldigungen. Außerdem: verbliebene englische Begriffe in Auswahlfeldern
und Buttons auf Deutsch umgestellt.
Neuer Dialog berechnet aus den Sitzungs-Bewertungen je Schüler eine
Mitarbeitsnote (H1/H2/Gesamtjahr), mit editierbarer Aspekt-Gewichtung,
Trendanzeige und Übernahme als Grade (Category=Participation).