using System.ComponentModel.DataAnnotations;
namespace ROLAC.API.DTOs.Members;

public class CreateMemberRequest
{
    [Required, MaxLength(100)] public string FirstName_en { get; set; } = "";
    [Required, MaxLength(100)] public string LastName_en { get; set; } = "";
    [MaxLength(100)] public string? NickName { get; set; }
    [MaxLength(100)] public string? FirstName_zh { get; set; }
    [MaxLength(100)] public string? LastName_zh { get; set; }
    [MaxLength(200)] public string? Entity { get; set; }
    [MaxLength(10)] public string? Gender { get; set; }
    public DateOnly? DateOfBirth { get; set; }
    public DateOnly? BaptismDate { get; set; }
    [MaxLength(200)] public string? BaptismChurch { get; set; }
    [MaxLength(200), EmailAddress] public string? Email { get; set; }
    [MaxLength(30)] public string? PhoneCell { get; set; }
    [MaxLength(30)] public string? PhoneHome { get; set; }
    [MaxLength(500)] public string? Address { get; set; }
    [MaxLength(100)] public string? City { get; set; }
    [MaxLength(50)] public string? State { get; set; }
    [MaxLength(20)] public string? ZipCode { get; set; }
    [MaxLength(100)] public string Country { get; set; } = "USA";
    [MaxLength(20)] public string Status { get; set; } = "Member";
    [MaxLength(10)] public string LanguagePreference { get; set; } = "en";
    public DateOnly? JoinDate { get; set; }
    public string? Notes { get; set; }
    public int? FamilyUnitId { get; set; }
}
