namespace Gremlin_BlazorServer.Data.EntityClasses { public class Quote : IMetadata { //primary key: public uint QuoteId { get; set; } //foreign keys: public uint ContactId { get; set; } //navigation properties: public Contact? Recipient { get; set; } public IList? LineItems { get; set; } //class properties: public Contact? SalesRep { get; set; } public string? QuotationNumber { get; set; } public DateTime QuotationDate { get; set; } = DateTime.Now; public DateTime ValidUntil { get; set; } = DateTime.Now.AddDays(60); public byte ValidFor { get; set; } = 60; public decimal TotalListprice { get; set; } public decimal TotalDiscount { get; set; } public decimal TotalNet { get; set; } public float Vat { get; set; } = 19f; public decimal TotalGross { get; set; } public bool QuoteContains3Pp { get; set; } public bool QuoteContainsRb { get; set; } public string? QuoteTemplate { get; set; } public int Warranty { get; set; } = 12; public decimal TotalFreightOnly { get; set; } public decimal TotalFreight { get; set; } public decimal TotalVat { get; set; } public decimal Freight { get; set; } = 3; public bool IsPriceInformation { get; set; } public bool ShowSinglePrices { get; set; } = true; public bool ShowDiscounts { get; set; } = true; public bool ShowBrutto { get; set; } = true; public string? QuoteDescription { get; set; } public string? Tex { get; set; } public string? Description { get; set; } public string Path { get; set; } = Directory.GetCurrentDirectory(); //new properties //metadata: public DateTime DataCreationDate { get; set; } = DateTime.Now; public string DataModificationByUser { get; set; } = "Gremlin_BlazorServer"; public DateTime DataModificationDate { get; set; } = DateTime.Now; public string DataStatus { get; set; } = "Active"; public DateTime DataValidFrom { get; set; } = DateTime.Now; public DateTime DataValidUntil { get; set; } = DateTime.MaxValue; public string? DataVersionComment { get; set; } public uint DataVersionNumber { get; set; } } }