public static IncomingInvoice Issue(string invoiceNumber, DateTime invoiceDate, decimal amount, decimal taxes, decimal totalPrice, string description, string paymentTerms, string purchaseOrderNumber, Guid supplierId, string supplierName) { var @event = new IncomingInvoiceRegisteredEvent( Guid.NewGuid(), invoiceNumber, invoiceDate, amount, taxes, totalPrice, description, paymentTerms, purchaseOrderNumber, supplierId, supplierName, string.Empty, string.Empty, string.Empty, string.Empty, string.Empty, string.Empty ); var invoice = new IncomingInvoice(); invoice.RaiseEvent(@event); return invoice; }
public void Apply(IncomingInvoiceRegisteredEvent evt) { Id = evt.InvoiceId; Number = evt.InvoiceNumber; Date = evt.InvoiceDate; Amount = evt.Amount; Taxes = evt.Taxes; TotalPrice = evt.TotalPrice; Description = evt.Description; PaymentTerms = evt.PaymentTerms; PurchaseOrderNumber = evt.PurchaseOrderNumber; Supplier = new PartyInfo(evt.Supplier.Id, evt.Supplier.Name, evt.Supplier.StreetName, evt.Supplier.City, evt.Supplier.PostalCode, evt.Supplier.Country, evt.Supplier.VatIndex, evt.Supplier.NationalIdentificationNumber); }