"Vorgang": Fallmappe für Klassenbuch- und Dokumentationseinträge
CI / build-and-test (push) Canceled after 0s

Neuer 4. Tab in der Klassenlehreransicht: bündelt Titel, Beschreibung,
Schlagwörter, verknüpfte Dokumentation und angeheftete (eingefrorene)
WebUntis-Klassenbucheinträge zu einem laufenden Problem mit einer/einem
oder mehreren Schüler*innen. Anheften direkt aus dem Klassenbuch-Tab per
Rechtsklick. Sync-fähig nach dem bestehenden Documentation-Muster.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
2026-09-01 22:42:06 +02:00
co-authored by Claude Sonnet 5
parent 987b49e761
commit 15463bc292
23 changed files with 1191 additions and 5 deletions
@@ -322,6 +322,7 @@ public partial class ClassTeacherOverviewViewModel : ObservableObject
private readonly AppLogger? _logger;
public ClassTeacherDetailsViewModel DetailsTab { get; }
public ClassTeacherCasesViewModel CasesTab { get; }
public ObservableCollection<ClassTeacherRosterRow> Roster { get; } = [];
public ObservableCollection<ClassTeacherRosterRow> PrimaryRoster { get; } = [];
public ObservableCollection<ClassTeacherRosterRow> SecondaryRoster { get; } = [];
@@ -406,7 +407,7 @@ public partial class ClassTeacherOverviewViewModel : ObservableObject
UntisReportCacheService cache, SchoolYearService schoolYear, IWorkTaskRepository workTasks,
IStudentRepository students, IDocumentationRepository documentation, IParticipationRepository participation,
IParticipationSessionRepository participationSessions, ClassTeacherDetailsViewModel detailsTab,
AppLogger? logger = null)
ClassTeacherCasesViewModel casesTab, AppLogger? logger = null)
{
_settings = settings;
_untis = untis;
@@ -419,6 +420,7 @@ public partial class ClassTeacherOverviewViewModel : ObservableObject
_participationSessions = participationSessions;
_logger = logger;
DetailsTab = detailsTab;
CasesTab = casesTab;
}
partial void OnHomeroomClassNameChanged(string? value) => OnPropertyChanged(nameof(HomeroomClassConfigured));
@@ -451,6 +453,7 @@ public partial class ClassTeacherOverviewViewModel : ObservableObject
var className = HomeroomClassName!;
DetailsTab.Initialize(className);
CasesTab.Initialize(className);
Busy = true;
NotifyRosterState();
try