public IActionResult Index() { OrderViewModel rs = new OrderViewModel() { Products = new List <Product>() }; SaveOrderViewModel cart = HttpContext.Session.Get <SaveOrderViewModel>(OrderSessionName); if (cart != null && cart.AllProduct != null) { for (int i = 0; i < cart.AllProduct.Count; i++) { var item = cart.AllProduct[i]; var pro = db.Products.Where(x => x.Id == item.ProductId).Include(x => x.Product_Media).Include("Product_Media.Media").FirstOrDefault(); if (pro != null) { pro.Qty = item.Qty; rs.Products.Add(pro); } } } var total = rs.Total; return(View(rs)); }
// GET: CustomerOrders/Create public ActionResult Create() { /* * //var customers = GetAllCustomers(); * //var divisions = GetAllDivisions(); * //var mlsdivisions = GetAllMlsDivisions(); * //var statuss = GetAllStatuss(); * * //var model = new Order(); * * //model.Customers = GetSelectListItems(customers); * //model.CustomerDivisions = GetSelectListItems(divisions); * //model.MlsDivisions = GetSelectListItems(mlsdivisions); * //model.Statuss = GetSelectListItems(statuss); */ //drop down list feed coded here var customers = db.Customers.ToList(); var customerdivisions = db.CustomerDivisions.ToList(); var mlsdivisions = db.MlsDivisions.ToList(); var orderstatuses = db.OrderStatuses.ToList(); var viewModel = new SaveOrderViewModel() { Customers = customers, CustomerDivisions = customerdivisions, MlsDivisions = mlsdivisions, OrderStatuses = orderstatuses }; return(View("Create", viewModel)); }
// GET: CustomerOrders/Edit/5 public ActionResult Edit(int?id) { var customerorders = db.CustomerOrders.SingleOrDefault(c => c.CustomerOrderId == id); var customers = db.Customers.ToList(); var customerdivisions = db.CustomerDivisions.ToList(); var mlsdivisions = db.MlsDivisions.ToList(); var orderstatuses = db.OrderStatuses.ToList(); var viewModel = new SaveOrderViewModel() { CustomerOrder = customerorders, Customers = customers, CustomerDivisions = customerdivisions, MlsDivisions = mlsdivisions, OrderStatuses = orderstatuses }; if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } CustomerOrder customerOrder = db.CustomerOrders.Find(id); if (customerOrder == null) { return(HttpNotFound()); } return(View("Edit", viewModel)); //return View(customerOrder); }
public async Task <JsonResult> SaveOrder(SaveOrderViewModel save) { try { if (!save.IsNull()) { return(Json(new { succeeded = await _orderService.SaveOrder(save) })); } } catch (Exception e) { _logger.LogError(e.Message); _logger.LogTrace(e.StackTrace); } return(Json(new { succeeded = false })); }
public IActionResult SaveOrder(SaveOrderViewModel products) { //HttpContext try { HttpContext.Session.Set(OrderSessionName, products); return(Json(new ResultData <object>())); } catch (Exception e) { return(Json(new ResultData <object>() { Success = false, ErrorMessage = e.Message })); } }
public IActionResult CreateOrder(Order orderData) { //HttpContext try { SaveOrderViewModel allProduct = HttpContext.Session.Get <SaveOrderViewModel>(OrderSessionName); orderData.Address.CreateDate = DateTime.Now; var tempAddress = new Address() { CityId = orderData.Address.CityId, DistrictId = orderData.Address.DistrictId, Status = 1, Street = orderData.Address.Street, WardId = orderData.Address.WardId, CreateDate = DateTime.Now }; db.Address.Add(tempAddress); db.SaveChanges(); orderData.OrderStatusId = 1; orderData.Email = string.IsNullOrEmpty(orderData.Email) ? "" : orderData.Email; orderData.CustomerName = string.IsNullOrEmpty(orderData.CustomerName) ? "" : orderData.CustomerName; orderData.AddressId = orderData.Address.Id; orderData.TotalPrice = Helpers.Common.TotalPrice(allProduct.AllProduct.Select(x => { var productDetail = db.Products.Where(y => y.Id == x.ProductId).FirstOrDefault(); if (productDetail == null) { return(new OrderItem()); } var price = productDetail.PriceDiscount.HasValue && productDetail.DiscountDateTo.HasValue && (DateTime.Now > productDetail.DiscountDateTo.Value) ? productDetail.PriceDiscount.Value : productDetail.Price; var orderItem = new OrderItem() { Quantity = x.Qty, CurrentPrice = price, }; return(orderItem); }).ToList()); orderData.TotalItemInOrder = Helpers.Common.GetTotalItemInOrder(allProduct.AllProduct.Select(x => { var productDetail = db.Products.Where(y => y.Id == x.ProductId).FirstOrDefault(); if (productDetail == null) { return(new OrderItem()); } var price = productDetail.PriceDiscount.HasValue && productDetail.DiscountDateTo.HasValue && (DateTime.Now > productDetail.DiscountDateTo.Value) ? productDetail.PriceDiscount.Value : productDetail.Price; var orderItem = new OrderItem() { Quantity = x.Qty, CurrentPrice = price, }; return(orderItem); }).ToList()); db.Orders.Add(orderData); //db.SaveChanges(); //var orderDataSave = new Order() { // Code = "", // Note = orderData.Note, // Phone = orderData.Phone, // ReceiverInfo = orderData.ReceiverInfo, // Status = 1, // OrderStatusId = orderData.OrderStatusId, // Email = orderData.Email, // CustomerName = orderData.CustomerName, // AddressId = orderData.AddressId, // CreateDate = DateTime.Now, //}; //db.Orders.Add(orderDataSave); db.SaveChanges(); orderData.OrderItems = new List <OrderItem>(); for (int i = 0; i < allProduct.AllProduct.Count; i++) { var pro = allProduct.AllProduct[i]; var productDetail = db.Products.Where(x => x.Id == pro.ProductId).FirstOrDefault(); if (productDetail == null) { continue; } var price = productDetail.PriceDiscount.HasValue && productDetail.DiscountDateTo.HasValue && (DateTime.Now > productDetail.DiscountDateTo.Value) ? productDetail.PriceDiscount.Value : productDetail.Price; var orderItem = new OrderItem() { ProductId = pro.ProductId, Quantity = pro.Qty, CurrentPrice = price, Status = 1, OrderId = orderData.Id, CreateDate = DateTime.Now }; db.OrderItems.Add(orderItem); db.SaveChanges(); //orderData.OrderItems.Add(orderItem); } return(Json(new ResultData <object>() { Success = true, Message = "Lên đơn hàng thành công" })); } catch (Exception e) { return(Json(new ResultData <object>() { Success = false, ErrorMessage = e.Message })); } }