namespace WorkTracker.Domain;

public sealed class WorkUnitDocument
{
    public string Id { get; set; } = string.Empty;

    public string Label { get; set; } = "Work unit";

    public WorkUnitLocation Location { get; set; } = WorkUnitLocation.Office;

    public TimeOnly? StartTime { get; set; }

    public TimeOnly? EndTime { get; set; }

    public bool IsPreview { get; set; }

    public decimal ManualWorkedHours { get; set; }

    public decimal CalculatedWorkedHours { get; set; }

    public decimal WorkedHoursDelta { get; set; }

    public decimal GrossIncome { get; set; }

    public decimal NetIncome { get; set; }

    public string? Notes { get; set; }

    public CoeffSnapshotDocument CoeffSnapshot { get; set; } = new();

    public DateTimeOffset CreatedAtUtc { get; set; } = DateTimeOffset.UtcNow;

    public DateTimeOffset UpdatedAtUtc { get; set; } = DateTimeOffset.UtcNow;
}