using System.Collections.ObjectModel;
namespace Jugenddienst_Stunden.Types;
///
/// Represents a day time entry for an employee.
///
public class DayTime {
///
/// ID des Stundeneintrages
///
public int? id { get; set; }
///
/// Mitarbeiter-ID
///
public int EmployeeId { get; set; }
///
/// Der betreffende Tag
///
public DateTime day { get; set; }
///
/// Der Wochentag
///
public int wday { get; set; }
///
/// Arbeitsbeginn
///
public TimeOnly begin { get; set; }
///
/// Arbeitsende
///
public TimeOnly end { get; set; }
///
/// Beschreibung der Arbeit
///
public string description { get; set; }
///
/// Freistellung
///
public string? free { get; set; }
///
/// Freisetellung genehmigt?
///
public bool? approved { get; set; }
///
/// Sollte nix sein
///
public int? type { get; set; }
///
/// Das gewählte Projekt
///
public int? projekt { get; set; }
///
/// Die gewählte Gemeinde
///
public int? gemeinde { get; set; }
///
/// Nachtstunden
///
public TimeOnly night { get; set; }
///
/// Summe Arbeitszeit (inklusive Nachstunden mit Faktor)
///
public Dictionary total { get; set; }
public TimeOnly end_print { get; set; }
public TimeSpan TimeSpanVon { get; set; }
public TimeSpan TimeSpanBis { get; set; }
///
/// Projekte für die Auswahlliste
///
public Collection Projekte { get; set; }
///
/// Gemeinden für die Auswahlliste
///
public Collection Gemeinden { get; set; }
public Collection Freistellungen { get; set; }
///
/// Gets the active Gemeinde based on the gemeinde ID.
///
public Gemeinde GemeindeAktiv { get; set; }
///
/// Gets the active Projekt based on the projekt ID.
///
public Projekt ProjektAktiv { get; set; }
///
/// Gets the active Freistellung based on the Freistellung ID
///
public Freistellung FreistellungAktiv { get; set; }
}