예제 #1
0
        public ActionResult OrderCreate(int id)
        {
            if (ModelState.IsValid)
            {
                var client = clientRepo.Get(id);

                var ovm = new WebCarWash.Model.OrderViewModel()
                {
                    ClientId   = client.Id,
                    ClientName = client.Name,
                    OrderDate  = DateTime.Now,
                    //  State = OrderState.IsForm,
                    Price  = 0,
                    Amount = 0
                };

                ovm.Servises = serviceRepo.GetAll().Select(s => new SelectListItem
                {
                    Selected = false,
                    Text     = s.Title,
                    Value    = s.ServiceId.ToString()
                });

                return(View(ovm));
            }

            return(Content("Order Id not valid"));
        }
예제 #2
0
        public void OrderCreateVMViewResult()
        {
            var orderVM = new WebCarWash.Model.OrderViewModel()
            {
                OrderId = validId
            };


            ViewResult result = contr.OrderCreate(orderVM) as ViewResult;

            // Assert.IsNotNull(result);
            Assert.AreEqual("OrderDetails", result.ViewName);
        }
예제 #3
0
        public ActionResult OrderCreate(WebCarWash.Model.OrderViewModel ovm)
        {
            if (!ModelState.IsValid)
            {
                return(HttpNotFound());
            }

            var newServices = new List <Service>();

            // services have selected  in the View
            if (ovm.SelectedListServices != null)
            {
                var allServicse = serviceRepo.GetAll();

                foreach (var s in ovm.SelectedListServices)
                {
                    var servise = allServicse.Where(ss => ss.ServiceId.ToString() == s).FirstOrDefault();
                    newServices.Add(servise);
                }
            }
            else
            {
                return(HttpNotFound());
            }

            var client = clientRepo.Get(ovm.ClientId);

            var newOrder = new Order()
            {
                OrderId     = ovm.OrderId,
                Client      = client,
                ClientId    = client.Id,
                ServiceDate = DateTime.Now,
                State       = ovm.State,
                Services    = newServices,
                Price       = newServices.Sum(s => s.Cost),
                Amount      = newServices.Count
            };


            orderRepo.Create(newOrder);

            unitOfWork.Save();

            return(View("OrderDetails", newOrder));
        }