public void PlaceOrder(Order order) { foreach (var bookOrdered in order.BooksOrderedList) { var book = _bookRepository.GetById(bookOrdered.BookId); if (book.ProductsAvailable < bookOrdered.NumberOrdered) { //TO DO: Dodać informację, jakiej książki i w jakiej ilości np. napisać własny wyjątek throw new ApplicationException("Brakuje książek w magazynie"); } } foreach (var bookOrdered in order.BooksOrderedList) { var book = _bookRepository.GetById(bookOrdered.BookId); _bookRepository.DecreaseProductsAvailable(bookOrdered.BookId, bookOrdered.NumberOrdered); } _orderRepository.Insert(order); }