using System.ComponentModel.DataAnnotations;

namespace GestionIntegral.Api.Dtos.Distribucion
{
    public class CreateCanillaDto
    {
        public int? Legajo { get; set; }

        [Required(ErrorMessage = "El nombre y apellido son obligatorios.")]
        [StringLength(100)]
        public string NomApe { get; set; } = string.Empty;

        [StringLength(150)]
        public string? Parada { get; set; }

        [Required(ErrorMessage = "La zona es obligatoria.")]
        [Range(1, int.MaxValue, ErrorMessage = "Debe seleccionar una zona válida.")]
        public int IdZona { get; set; }

        [Required]
        public bool Accionista { get; set; } = false;

        [StringLength(150)]
        public string? Obs { get; set; }

        [Required(ErrorMessage = "La empresa es obligatoria.")]
        // Asumimos que Empresa 0 es válido para accionistas según el contexto.
        // Si Empresa 0 es un placeholder, entonces Range(1, int.MaxValue)
        public int Empresa { get; set; } = 0; // Default 0 según la tabla

        // Baja y FechaBaja se manejan por una acción separada, no en creación.
    }
}