| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107 | using UnivateProperties_API.Model.Users;
namespace UnivateProperties_API.Containers.Timeshare.Detailed
{
    public class DetailedOwner
    {
        public DetailedOwner()
        {
            BankingDetails = new DetailedBankDetails();
            Address = new DetailedAddress();
        }
        public DetailedOwner(Individual individual)
        {
            Id = individual.Id;
            Name = individual.Name;
            Surname = individual.Surname;
            IdNumber = individual.IdNumber;
            CompanyRegNumber = individual.CompanyRegNumber;
            MaritalStatus = individual.HowMarried.ToString();
            EmailAddress = individual.Email;
            CellNumber = individual.CellNumber;
            LandlineNumber = individual.Telephone;
            SpouseCellnumber = individual.SpouseCellnumber;
            SpouseEmail = individual.SpouseEmail;
            SpouseName = individual.SpouseName;
            SpouseSurname = individual.SpouseSurname;
            SpouseTelephone = individual.SpouseTelephone;
            switch (individual.HowMarried)
            {
                case MarriedType.NotApplicable:
                    HowMarried = "N/A";
                    break;
                case MarriedType.ICOP:
                    HowMarried = "In Community Of Property";
                    break;
                case MarriedType.OCOP:
                    HowMarried = "Out of Community Of Property";
                    break;
                case MarriedType.Other:
                    HowMarried = "Other";
                    break;
                case MarriedType.Traditional:
                    HowMarried = "Traditional Wedding";
                    break;
                case MarriedType.Single:
                    HowMarried = "Single";
                    break;
                case MarriedType.Divorced:
                    HowMarried = "Divorced";
                    break;
                case MarriedType.Widow:
                    HowMarried = "Widow";
                    break;
                case MarriedType.CommittedRelationship:
                    HowMarried = "Committed Relationship";
                    break;
                case MarriedType.Partner:
                    HowMarried = "Partner";
                    break;
            }
            User = individual.User;
            if (individual.Address != null)
            {
                Address = individual.Address != null ? new DetailedAddress(individual.Address) : new DetailedAddress();
            }
            else Address = new DetailedAddress();
            if (individual.BankAccount != null)
            {
                BankingDetails = individual.BankAccount != null ? new DetailedBankDetails(individual.BankAccount) : new DetailedBankDetails();
            }
            else BankingDetails = new DetailedBankDetails();
        }
        public DetailedOwner(Agent agent)
        {
            Id = agent.Id;
            Name = agent.Name;
            Surname = agent.Surname;
            EmailAddress = agent.Email;
            CellNumber = agent.CellNumber;
            LandlineNumber = agent.Telephone;
            Address = new DetailedAddress();
            BankingDetails = new DetailedBankDetails();
        }
        public int Id { get; set; }
        public string Name { get; set; }
        public string Surname { get; set; }
        public string IdNumber { get; set; }
        public string CompanyRegNumber { get; set; }
        public string MaritalStatus { get; set; }
        public string EmailAddress { get; set; }
        public string CellNumber { get; set; }
        public string LandlineNumber { get; set; }  
        public string HowMarried { get; set; }
        public string SpouseName { get; set; }
        public string SpouseSurname { get; set; }        
        public string SpouseEmail { get; set; }        
        public string SpouseTelephone { get; set; }        
        public string SpouseCellnumber { get; set; }
        public DetailedAddress Address { get; set; }
        public DetailedBankDetails BankingDetails { get; set; }
        public User User { get; set; }
    }
}
 |