using System.ComponentModel.DataAnnotations.Schema;

namespace EnotaryoPH.Data.Entities
{
    [Table("Transactions")]
    public class Transaction
    {
        [Column("CreatedOn")]
        public DateTime? CreatedOn { get; set; }

        [Column("IsRecorded")]
        public bool? IsRecorded { get; set; }

        [ForeignKey("LawyerID")]
        public Lawyer Lawyer { get; set; }

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

        [ForeignKey("PreferredLawyerID")]
        public Lawyer PreferredLawyer { get; set; }

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

        [ForeignKey("PrincipalID")]
        public User Principal { get; set; }

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

        public LawyerVideoConferenceSchedule Schedule { get; set; }

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

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

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

        public TransactionDocument TransactionDocument { get; set; }

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

        public List<TransactionSelfie> TransactionSelfies { get; set; }

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