コード例 #1
0
        public void ChargeCustomer(CustomerId customerId,
                                   IList <Product> products)
        {
            var customer
                = customerRepository.GetCustomer(customerId);
            var invoice
                = purchaseRepository.CreateInvoice(customer, products);

            mailService.SendInvoice(customer, invoice);
        }
コード例 #2
0
        public Invoice MakePurchase(Customer customer,
                                    Product product, Discount discount)
        {
            var purchase
                = purchaseRepository.CreatePurchase(customer);

            purchaseRepository.AddProduct(purchase, product);
            var invoice
                = purchaseRepository.CreateInvoice(purchase);

            if (discount != null)
            {
                invoice.ApplyDiscount(discount);
            }
            return(invoice);
        }