namespace API.Models.DataClasses
{
    public readonly record struct SixDigitInt
    {
        public int Value { get; }

        public SixDigitInt(int value)
        {
            if (value < 0 || value > 999999)
                throw new ArgumentOutOfRangeException(nameof(value),
                    "Wert muss zwischen 0 und 999999 liegen.");

            Value = value;
        }

        public override string ToString() => Value.ToString("D6");

        public static implicit operator int(SixDigitInt v) => v.Value;
    }
}
