public override TransactionDocument CreateVoidDocument(IDocumentNumberGenerator numberGenerator) { return(new DebitNote() { Number = numberGenerator.NextForCreditNote() }); }
public TransactionService( IDocumentNumberGenerator numberSequenceService, IRepository <TransactionDocument> transactionRepository, IRepository <Customer> customerRepository, IRepository <Payment> paymentRepository) { _numberSequenceService = numberSequenceService; _transactionRepository = transactionRepository; _customerRepository = customerRepository; _paymentRepository = paymentRepository; }
public DeliveryService( IRepository <Delivery> deliveryRepository, IRepository <Invoice> invoiceReplository, IDocumentNumberGenerator numberSequenceService, IRepository <Employee> employeeRepository, IRepository <Payment> paymentRepository) { _deliveryRepository = deliveryRepository; _invoiceRepository = invoiceReplository; _numberSequenceService = numberSequenceService; _employeeRepository = employeeRepository; _paymentRepository = paymentRepository; }
public TransactionDocument Void(IDocumentNumberGenerator numberGenerator) { var document = CreateVoidDocument(numberGenerator); document.Total = -Total; document.Person = Person; document.PersonId = PersonId; document.CustomerName = CustomerName; document.ReferencedDocument = this; IsRefunded = true; return(document); }
public InvoiceService( IRepository <Invoice> invoiceRepository, IRepository <Product> productRepository, IRepository <Customer> customerRepository, IRepository <CustomerPrice> priceForCustomerRepository, IDocumentNumberGenerator documentNumberGenerator, IRepository <Payment> paymentRepository) { _invoiceRepository = invoiceRepository; _productRepository = productRepository; _customerRepository = customerRepository; _customerPriceRepository = priceForCustomerRepository; _documentNumberGenerator = documentNumberGenerator; _paymentRepository = paymentRepository; }
public abstract TransactionDocument CreateVoidDocument(IDocumentNumberGenerator numberGenerator);