CI / build-and-test (push) Canceled after 0s
Zeigt die Fälligkeit der vier bestehenden, manuell ausgelösten WebUntis-Abgleiche (Fehlzeiten je Lerngruppe, offene Stunden, Klassenbuch-, Hausaufgabenabgleich) in einem neuen Hub-Fenster, ohne selbst WebUntis anzufragen - nur gespeicherte Zeitstempel werden ausgewertet. Konsolidiert die bisher verstreuten Einstiegspunkte (Sidebar-Button, Dashboard-Buttons) in ein neues WebUntis-Menü plus einen kompakten Gesundheits-Indikator auf dem Dashboard. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
25 lines
925 B
C#
25 lines
925 B
C#
namespace LehrerApp.Core.Models;
|
|
|
|
public enum UntisHubJobKind
|
|
{
|
|
FehlzeitenKurz,
|
|
FehlzeitenLang,
|
|
OffenePeriods,
|
|
Klassenbuchabgleich,
|
|
Hausaufgabenabgleich,
|
|
}
|
|
|
|
/// <summary>Wann welcher WebUntis-Abgleich ("Untis-Hub"-Job, siehe TODO.md) zuletzt lief und mit
|
|
/// welchem Ergebnis - ein Datensatz pro (<see cref="Kind"/>, <see cref="GroupId"/>). Bei den drei
|
|
/// dashboard-weiten Jobs (<see cref="UntisHubJobKind.OffenePeriods"/>,
|
|
/// <see cref="UntisHubJobKind.Klassenbuchabgleich"/>, <see cref="UntisHubJobKind.Hausaufgabenabgleich"/>)
|
|
/// ist <see cref="GroupId"/> null; die beiden Fehlzeiten-Kadenzen sind je Lerngruppe getrennt.</summary>
|
|
public class UntisHubJobState
|
|
{
|
|
public Guid Id { get; set; } = Guid.NewGuid();
|
|
public UntisHubJobKind Kind { get; set; }
|
|
public Guid? GroupId { get; set; }
|
|
public DateTime? LastRunAt { get; set; }
|
|
public string? LastResultSummary { get; set; }
|
|
}
|