public ActionResult Edit(FormCollection col) { int orderid = int.Parse(col["ID"]); try { Inpinke_Order model = DBOrderBLL.GetOrderByID(orderid); ViewBag.Order = model; IList <Inpinke_Order_Product> prodList = DBOrderBLL.GetOrderProduct(model.ID); ViewBag.ProductList = prodList; decimal totalPrice = 0; foreach (Inpinke_Order_Product p in prodList) { int bookid = p.BookID; if (string.IsNullOrEmpty(col["num_" + bookid])) { totalPrice += p.Price; continue; } p.Num = int.Parse(col["num_" + bookid]); if (p.Num <= 0) { ViewBag.Msg = "印品购买数量不能少于1件"; return(RedirectToAction("edit", new { id = orderid, msg = ViewBag.Msg + DateTime.Now.ToString("yyyy-MM-dd mm:ss") })); } p.CouponID = int.Parse(col["coupon_select_" + bookid]); p.Envelope = int.Parse(col["envelope_" + bookid]); p.Price = DBBookBLL.GetBookPrice(bookid, p.CouponID, p.Num); p.UpdateTime = DateTime.Now; p.SaveWhenSubmit(InpinkeDataContext.Instance); totalPrice += p.Price; } model.OrgPrice = totalPrice; model.TotalPrice = totalPrice; int orgOrderStatus = model.OrderStatus; model.OrderStatus = int.Parse(col["OrderStatus"]); model.UserRemark = col["Remark"]; //收货人信息 model.RecUserName = col["UserName"]; model.RecMobile = col["Mobile"]; model.RecAddress = col["Address"]; model.RecAreaID = int.Parse(col["AreaID"]); model.RecProvID = int.Parse(col["ProvID"]); model.RecCityID = int.Parse(col["CityID"]); model.RecProvName = DBProvinceBLL.GetProvName(model.RecProvID.Value); model.RecCityName = DBProvinceBLL.GetCityName(model.RecCityID.Value); model.RecAreaName = DBProvinceBLL.GetAreaName(model.RecAreaID.Value); model.UpdateTime = DateTime.Now; model.SaveWhenSubmit(InpinkeDataContext.Instance); InpinkeDataContext.Instance.Submit(); //锁定印品防止编辑 if (model.OrderStatus == (int)OrderStatus.WaitSend && orgOrderStatus != (int)OrderStatus.WaitSend) { SetOrderMaking(model, "", true); } if (model.OrderStatus != (int)OrderStatus.WaitSend && orgOrderStatus == (int)OrderStatus.WaitSend) { SetOrderMaking(model, "", false); } return(RedirectToAction("edit", new { id = orderid, msg = "编辑成功" + DateTime.Now.ToString("yyyy-MM-dd mm:ss") })); } catch (Exception ex) { ViewBag.Msg = "修改订单信息失败,请稍后再试"; Logger.Error(string.Format("修改订单信息-Edit Error:{0}", ex.ToString())); return(RedirectToAction("edit", new { id = orderid, msg = ViewBag.Msg + DateTime.Now.ToString("yyyy-MM-dd mm:ss") })); } }
public ActionResult Modify(FormCollection col) { try { int orderid = int.Parse(col["ID"]); Inpinke_Order model = DBOrderBLL.GetOrderByID(orderid); ViewBag.Order = model; IList <Inpinke_Order_Product> prodList = DBOrderBLL.GetOrderProduct(model.ID); ViewBag.ProductList = prodList; IList <Inpinke_User_Address> address = DBAddressBLL.GetUserAddress(UserSession.CurrentUser.ID); if (address != null && address.Count() > 0) { ViewBag.UserAddress = address; } model.AddressID = int.Parse(col["AddressID"]); Inpinke_User_Address selAddress = DBAddressBLL.GetAddressByID(model.AddressID); model.RecUserName = selAddress.UserName; model.RecMobile = selAddress.Mobile; model.RecAddress = selAddress.Address; model.RecAreaID = selAddress.AreaID; model.RecProvID = selAddress.ProvID; model.RecCityID = selAddress.CityID; model.RecProvName = selAddress.ProvName; model.RecCityName = selAddress.CityName; model.RecAreaName = selAddress.AreaName; decimal totalPrice = 0; foreach (Inpinke_Order_Product p in prodList) { int bookid = p.BookID; if (string.IsNullOrEmpty(col["num_" + bookid])) { totalPrice += p.Price; continue; } p.Num = int.Parse(col["num_" + bookid]); if (p.Num <= 0) { ViewBag.Msg = "印品购买数量不能少于1件"; return(View()); } p.CouponID = int.Parse(col["coupon_select_" + bookid]); p.Envelope = int.Parse(col["envelope_" + bookid]); p.Price = DBBookBLL.GetBookPrice(bookid, p.CouponID, p.Num); p.UpdateTime = DateTime.Now; p.SaveWhenSubmit(InpinkeDataContext.Instance); totalPrice += p.Price; } model.OrgPrice = totalPrice; model.TotalPrice = totalPrice; model.UserRemark = col["Remark"]; model.UpdateTime = DateTime.Now; model.SaveWhenSubmit(InpinkeDataContext.Instance); InpinkeDataContext.Instance.Submit(); return(RedirectToAction("pay", new { orderid = orderid })); } catch (Exception ex) { ViewBag.Msg = "修改订单信息失败,请稍后再试"; Logger.Error(string.Format("修改订单信息-Modify Error:{0}", ex.ToString())); return(View("error")); } }