Gremlin/Gremlin_BlazorServer/Data/EntityClasses/Contact.cs

56 lines
2.2 KiB
C#

namespace Gremlin_BlazorServer.Data.EntityClasses
{
public class Contact : IMetadata
{
//primary key:
public uint ContactId { get; set; }
//foreign keys:
public uint AccountId { get; set; }
//navigation properties:
public Account Account { get; set; } = new();
public IList<Quote> Quotes { get; set; } = new List<Quote>();
//class properties:
public string AcademicTitle { get; set; } = string.Empty;
public string FirstName { get; set; } = string.Empty;
public string LastName { get; set; } = string.Empty;
public byte Gender { get; set; }
public bool OptInStatus { get; set; }
public string Department { get; set; } = string.Empty;
public string Function { get; set; } = string.Empty;
public string Room { get; set; } = string.Empty;
public bool IsReference { get; set; }
public string Notes { get; set; } = string.Empty;
public string PhoneNumber { get; set; } = string.Empty;
public string MobileNumber { get; set; } = string.Empty;
public string EMail { get; set; } = string.Empty;
public string PreferredContactMethod { get; set; } = string.Empty;
public bool NoPhoneCalls { get; set; }
public bool EmailBounced { get; set; }
public bool NoHardcopyMailing { get; set; }
public bool ValidatedContact { get; set; }
//Agilent-specific Properties:
public int SapContactNumber { get; set; }
public DateTime SapContactCreationDate { get; set; }
public DateTime SapContactModifiedDate { get; set; }
public string SapJobFunction { get; set; } = string.Empty;
public string SapProductInterest { get; set; } = string.Empty;
public string SapApplicationInterest { get; set; } = string.Empty;
public string SapJobLevel { get; set; } = string.Empty;
public string SapCompetitiveIBase { get; set; } = string.Empty;
//metadata:
public DateTime DataCreationDate { get; set; } = DateTime.Now;
public DateTime DataModificationDate { get; set; } = DateTime.Now;
public DateTime DataValidFrom { get; set; } = DateTime.Now;
public DateTime DataValidUntil { get; set; } = DateTime.MaxValue;
public string DataModificationByUser { get; set; } = string.Empty;
public uint DataVersionNumber { get; set; }
public string DataVersionComment { get; set; } = string.Empty;
public string DataStatus { get; set; } = "Active";
}
}