public ActionResult SalesOrderCreate(SOCreateVM soCreateVM , string complete, string cancel, string clearall) { // get rid of SalesOrder in VM if (ModelState.IsValid) { if (!string.IsNullOrEmpty(complete)) { SalesOrder so = new SalesOrder(); so.OrderDetails = new List<SalesOrderDetail>(); so.OrderNo = soCreateVM.OrderNo; so.DateOrdered = DateTime.Now; foreach (OrderedProduct prod in soCreateVM.OrderedProducts) { // if returned product exist, then create new SalesOrderDetail and insert to table //if (prod.ProductID != 0 && !String.IsNullOrEmpty(prod.ProductID.ToString())) if(!String.IsNullOrEmpty(prod.Quantity.ToString())) { // TODO : Add GUID to SalesOrderDetail + SOVM + View SalesOrderDetail soDetail = new SalesOrderDetail(); // soDetail.OrderID = soCreateVM.Order.OrderID ?? null; soDetail.ProductID = prod.ProductID ?? null ; soDetail.SKU = prod.SKU ?? ""; soDetail.ProductName = prod.Name ?? ""; soDetail.Quantity = prod.Quantity; soDetail.Total = prod.SubTotal; //if (!String.IsNullOrEmpty(prod.Price)) //{ soDetail.Price = Decimal.Parse(prod.Price.TrimStart('$')); } soDetail.Price = prod.Price ?? null; so.OrderDetails.Add(soDetail); } } soRepo.SaveSalesOrder(so); // return RedirectToAction("NewSalesOrder"); // return Redirect("/Main/SalesOrder"); return View("OrderCompleted"); } } if (!string.IsNullOrEmpty(cancel)) { return RedirectToAction("SalesOrderCreate"); //return Redirect("/Main/SalesOrder"); } //else //{ // return RedirectToAction("NewSalesOrder"); // // return Redirect("/Main/SalesOrder"); //} return View(soCreateVM); }
public ViewResult SalesOrderCreate() { // create new SOCreateVieModel => fill with data => send to View SOCreateVM soVM = new SOCreateVM(); int orderNo = Int32.Parse(soRepo.SalesOrders .OrderByDescending(o => o.OrderID) .First() .OrderNo); soVM.OrderNo = (orderNo + 1).ToString(); soVM.Buttons = btnRepo.Buttons //.Include("Variant") .Include(b => b.Variant) .OrderBy(b => b.ButtonID) .Take(9) .ToList(); soVM.OrderedProducts = CreateEmptyProducts(); return View(soVM); }