using System; using System.Collections.Generic; using System.Threading.Tasks; using ChronoFlow.Model; namespace ChronoFlow.Persistence { /// /// Repository-Interface für den Zugriff auf Zeiteinträge in der Datenbank. /// Wird von der SqliteZeiterfassungsService-Klasse implementiert. /// public interface ITimeEntryRepository { /// /// Gibt alle Zeiteinträge für einen bestimmten Mitarbeiter zurück. /// Task> GetEntriesForUserAsync(string username); /// /// Gibt alle Zeiteinträge aus der Datenbank zurück (Admin-Ansicht). /// Task> LadeAlleEintraegeAsync(); /// /// Fügt einen neuen Zeiteintrag in die Datenbank ein. /// Task AddEntryAsync(Zeiteintrag entry); /// /// Löscht einen Zeiteintrag anhand seiner ID. /// Task DeleteEntryAsync(int id); /// /// Aktualisiert den Status (erledigt) und den Kommentar eines Eintrags. /// Task UpdateEntryStatusAndCommentAsync(int id, bool isCompleted, string? comment); } }