示例#1
0
        public CreateOrderDetailsViewModel BuildCreateOrderDetailsViewModel()
        {
            var model = new CreateOrderDetailsViewModel()
            {
                Orders      = new List <SelectListItem>(),
                Medicaments = new List <SelectListItem>()
            };

            foreach (var order in _orderManager.GetAll())
            {
                model.Orders.Add(new SelectListItem()
                {
                    Value = order.Id.ToString(),
                    Text  = order.Id.ToString()
                });
            }

            foreach (var medicament in _medicamentManager.GetAll())
            {
                model.Medicaments.Add(new SelectListItem()
                {
                    Value = medicament.Id.ToString(),
                    Text  = medicament.Name
                });
            }

            return(model);
        }
示例#2
0
        public IActionResult AddProductToOrder(CreateOrderDetailsViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(RedirectToRoute("defaultGetProduct", new { productId = model.ProductId }));
            }

            _basketManager.AddOrderDetails(model.ProductId, model.Quantity);

            return(RedirectToRoute("defaultGetBasket"));
        }
        public ActionResult Create(CreateOrderDetailsViewModel createOrderDetailsViewModel)
        {
            if (!ModelState.IsValid)
            {
                var tempCreateOrderDetailsViewModel = _builder.BuildCreateOrderDetailsViewModel();
                createOrderDetailsViewModel.Orders      = tempCreateOrderDetailsViewModel.Orders;
                createOrderDetailsViewModel.Medicaments = tempCreateOrderDetailsViewModel.Medicaments;

                return(View(createOrderDetailsViewModel));
            }

            var orderDetails = Mapper.Map <CreateOrderDetailsViewModel, OrderDetails>(createOrderDetailsViewModel);

            _manager.Add(orderDetails);

            return(RedirectToAction("Index"));
        }