예제 #1
0
        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");
            }
        }
예제 #2
0
        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);
        }
예제 #3
0
 public ActionResult Create(OrderCreationViewModel orderCreationViewModel)
 {
     OrderService.CreateOrderWithProducts(orderCreationViewModel);
     return(RedirectToAction("Index"));
 }