using System.ComponentModel.DataAnnotations;

namespace GerbilManagerWebAPI.Models
{
    /// <summary>
    /// Zuchtprofil (Verkäufer-Block der Abgabeverträge) — Einzelzeilen-Entity
    /// (Singleton, fixe Id, leer geseedet). Die Züchterin pflegt ihre Daten in
    /// der App unter /einstellungen statt in einer JSON-Datei; FEAT-13 phase B
    /// ersetzt damit die appsettings-Variante aus phase A.
    /// </summary>
    public class BreederSettings
    {
        /// <summary>Fixe Id der einzigen Zeile (per HasData geseedet).</summary>
        public static readonly Guid SingletonId = new("11111111-1111-1111-1111-000000000001");

        [Key]
        public Guid Id { get; set; }

        public string ZuchtName { get; set; } = "";

        /// <summary>Vor- und Nachname inkl. Anrede, z. B. „Frau Erika Muster“.</summary>
        public string Name { get; set; } = "";

        /// <summary>Anschrift einzeilig: „Straße Nr, PLZ Ort“.</summary>
        public string Address { get; set; } = "";

        public string Phone { get; set; } = "";

        public string Email { get; set; } = "";

        public string Homepage { get; set; } = "";

        /// <summary>Ort für die Unterschriftszeile („{Ort}, den {Datum}“).</summary>
        public string City { get; set; } = "";
    }
}
