using System.ComponentModel.DataAnnotations.Schema;

namespace EnotaryoPH.Data.Entities
{
    [Table("Users")]
    public class User
    {
        [Column("BirthDate")]
        public DateTime BirthDate { get; set; }

        [Column("CreatedOn")]
        public DateTime? CreatedOn { get; set; }

        [Column("Email")]
        public string Email { get; set; }

        public List<EventLog> EventLogs { get; set; }

        [Column("Firstname")]
        public string? Firstname { get; set; }

        [NotMapped]
        public string Fullname => $"{Firstname} {Lastname}".Trim();

        public List<IdentificationDocument> IdentificationDocuments { get; set; }

        [Column("Lastname")]
        public string? Lastname { get; set; }

        public List<LawyerVideoConferenceParticipant> LawyerVideoConferenceParticipants { get; set; }

        [Column("Middlename")]
        public string? Middlename { get; set; }

        [Column("PasswordHash")]
        public string PasswordHash { get; set; }

        [Column("PhoneNumber")]
        public string? PhoneNumber { get; set; }

        [Column("Prefix")]
        public string? Prefix { get; set; }

        [Column("Role")]
        public string? Role { get; set; }

        public List<TransactionSignatory> Signatories { get; set; }

        [Column("Suffix")]
        public string? Suffix { get; set; }

        [Column("User_UID")]
        public Guid? User_UID { get; set; }

        [Column("UserID")]
        public int UserID { get; set; }
    }
}