using OmsorgCore.Domain.Common;
using OmsorgCore.Domain.Enums;

namespace OmsorgCore.Domain.Entities;

/// <summary>
/// Systemweite, zur Laufzeit änderbare Konfiguration der FR-EM-3-Konfliktprüfungen bei der
/// Mitarbeiterzuweisung (<see cref="Assignment"/>). Genau eine Zeile (Singleton) —
/// <see cref="Application.Abstractions.IAssignmentValidationSettingsRepository.GetOrCreateAsync"/>
/// legt sie bei Bedarf mit den hier hinterlegten Defaults an.
/// </summary>
public class AssignmentValidationSettings : Entity
{
    public ValidationSeverity QualificationMode { get; set; } = ValidationSeverity.Error;
    public ValidationSeverity AbsenceMode { get; set; } = ValidationSeverity.Error;
    public ValidationSeverity WorkingHoursMode { get; set; } = ValidationSeverity.Warning;
    public ValidationSeverity OverlapMode { get; set; } = ValidationSeverity.Error;
    public ValidationSeverity ContractMode { get; set; } = ValidationSeverity.Error;
}
