diff --git a/Distribution/Models/Invoice.cs b/Distribution/Models/Invoice.cs new file mode 100644 index 0000000..d0de571 --- /dev/null +++ b/Distribution/Models/Invoice.cs @@ -0,0 +1,30 @@ +using System.ComponentModel.DataAnnotations.Schema; + +namespace Distribution.Models +{ + public class Invoice : Template + { + public Guid FK_OrderId { get; set; } + [ForeignKey("FK_OrderId")] + public Order Order { get; set; } + + public InvoiceStatus Status { get; set; } = InvoiceStatus.Draft; + + public Guid CreatedByUserId { get; set; } + [ForeignKey("CreatedByUserId")] + public User CreatedByUser { get; set; } + + public DateTime? PrintedAt { get; set; } + public Guid? PrintedByUserId { get; set; } + [ForeignKey("PrintedByUserId")] + public User? PrintedByUser { get; set; } + + public DateTime? FinalizedAt { get; set; } + public Guid? FinalizedByUserId { get; set; } + [ForeignKey("FinalizedByUserId")] + public User? FinalizedByUser { get; set; } + + /// Reflects current PO line items through Draft/Printed; locked at Finalized. + public decimal TotalAmount { get; set; } + } +}