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; } } }