public void CreateOrderWithProducts(OrderCreationViewModel orderCreationViewModel) { var order = new Order { Id = orderCreationViewModel.Id, CreationDate = orderCreationViewModel.CreationDate, EstimatedDate = orderCreationViewModel.EstimatedDate, StatusId = orderCreationViewModel.StatusId, CustomerId = orderCreationViewModel.CustomerId }; OrderRepository.AddOrder(order); try { OrderRepository.SaveChanges(); } catch (DataException dx) { Console.WriteLine("cant save changes"); } var orderedProducts = orderCreationViewModel.Products.Where(p => p.IsOrdered).Select(s => s.Id); foreach (var op in orderedProducts) { var opderedProduct = new OrderProduct() { OrderId = order.Id, ProductId = op }; OrderRepository.AddOrderProduct(opderedProduct); } try { OrderRepository.SaveChanges(); } catch (DataException dx) { Console.WriteLine("cant save changes"); } }
public OrderCreationViewModel ListOfProducts() { OrderCreationViewModel orderCreationViewModel = new OrderCreationViewModel(); IEnumerable <Product> products = OrderRepository.GetAllProducts(); foreach (var p in products) { orderCreationViewModel.Products.Add(new OrderedProduct() { Id = p.Id, Name = p.Name, Price = p.Price, Description = p.Description, CreationDate = p.CreationDate, ExpiredDate = p.ExpiredDate, IsOrdered = false }); } return(orderCreationViewModel); }
public ActionResult Create(OrderCreationViewModel orderCreationViewModel) { OrderService.CreateOrderWithProducts(orderCreationViewModel); return(RedirectToAction("Index")); }