public ActionResult OrderUpdateX(OrderMix model, string status) { using (var db = new Database1Entities1()) { var p = db.OrderMixes.Find(model.OrderMixId); var q = db.Items.Find(p.ItemId); if (p.Status != status) { if (status == "未出荷") { q.Stock = q.Stock + p.Quantity; db.SaveChanges(); p.Status = status; db.SaveChanges(); } else if (status == "出荷済") { if (q.Stock >= p.Quantity) { q.Stock = q.Stock - p.Quantity; db.SaveChanges(); p.Status = status; db.SaveChanges(); } else if (q.Stock < p.Quantity) { ViewBag.message = "在庫数量が不足しています。"; return(View("OrderUpdateInput", Session["Update"])); } } } return(View("OrderUpdate", p)); } }
public ActionResult OrderUpdateInput(OrderMix om) { using (var db = new Database1Entities1()) { var p = db.OrderMixes.Find(om.OrderMixId); Session["Update"] = p; return(View(Session["Update"])); } }
// GET: Order public ActionResult OrderAdd() { Session["customerid"] = 1; int subPrice = 0; int tax = 0; int totalPrice = 0; using (var db = new Database1Entities1()) { var carts = db.Carts.ToList(); foreach (var i in carts) { subPrice += i.Price; } tax = (int)Math.Truncate(subPrice * 0.08); totalPrice = subPrice + tax; var order = new Order { CustomerId = (int)Session["customerid"], SubPrice = subPrice, Tax = tax, TotalPrice = totalPrice, OrderDate = DateTime.Now }; db.Orders.Add(order); db.SaveChanges(); int lastOrderId = db.Orders.Max(model => model.OrderId); int num = 1; foreach (var i in carts) { var orderdetail = new OrderMix { OrderId = lastOrderId, OrderDetailId = num, ItemId = i.ItemId, ItemName = i.ItemName, UnitPrice = i.UnitPrice, Quantity = i.Quantity, Price = i.Price, DeliveryDate = DateTime.Parse(i.DeliveryDate), Status = "未出荷", CustomerId = (int)Session["customerid"], SubPrice = order.SubPrice, Tax = order.Tax, TotalPrice = order.TotalPrice, OrderDate = order.OrderDate }; db.OrderMixes.Add(orderdetail); var u = db.Carts.Find(i.CartId); db.Carts.Remove(u); db.SaveChanges(); num += 1; } var orderList = db.Orders.Find(lastOrderId); ViewBag.Order = orderList; var ItemList = db.OrderMixes.ToList(); var dlist = new List <OrderMixViewModel>(); foreach (var item in ItemList) { if (orderList.OrderId == item.OrderId) { var e = new OrderMixViewModel(item); dlist.Add(e); } } return(View(dlist)); } }