Esempio n. 1
0
        public EventHistoryItem Visit(LineItemAdded evt)
        {
            var lineItem = new LineItem();

            evt.Apply(lineItem);

            _Invoice.LineItems.Add(lineItem);

            var historyItem = CreateEventHistoryItem(evt);

            historyItem.Message = $"Line item {evt.Id} added to invoice {evt.InvoiceId}";

            return(historyItem);
        }
Esempio n. 2
0
        public void Handle(LineItemAdded notification)
        {
            var lineItem = new LineItem();

            notification.Apply(lineItem);

            const string query = @"
                INSERT INTO Accounting.LineItem (Id, InvoiceId, Description, Amount, IsPaid, CreatedOn, CreatedById)
                VALUES (@Id, @InvoiceId, @Description, @Amount, @IsPaid, @CreatedOn, @CreatedById)";

            _UnitOfWork.Execute(query, new
            {
                lineItem.Id,
                lineItem.InvoiceId,
                lineItem.Description,
                lineItem.Amount,
                lineItem.IsPaid,
                CreatedOn   = notification.EventDate,
                CreatedById = lineItem.CreatedBy.Id
            });
        }