public async Task <ActionResult> AddToCart(int productId, int?times) { if (!times.HasValue) { times = 1; } bool added = false; CartVM cart = null; if (Session["Cart"] != null) { cart = (CartVM)Session["Cart"]; foreach (var p in cart.Products) { if (p.ProductId == productId) { added = true; p.Quantity += times.Value; } } } else { cart = new CartVM(); cart.Products = new List <SaleDetailVM>(); Session.Add("Cart", cart); } if (!added) { var product = await _ps.Get(productId); SaleDetailVM detail = new SaleDetailVM() { Price = (Session["IsBP"] == null || !(bool)Session["IsBP"]) ? product.Price : product.Price * 0.77M, ProductId = productId, Discount = 0, ProductName = product.Name, Quantity = times.Value, Weight = product.Weight }; cart.Products.Add(detail); } return(Json("ok", JsonRequestBehavior.AllowGet)); }
public ActionResult RemoveProduct(int productId) { CartVM cart = (CartVM)Session["Cart"]; SaleDetailVM p = null; foreach (var d in cart.Products) { if (d.ProductId == productId) { p = d; break; } } if (p != null) { cart.Products.Remove(p); } return(Json("ok", JsonRequestBehavior.AllowGet)); }
public async Task <MyTeamReportVM> GetMyTeamReport(int siteUserId) { MyTeamReportVM rec = new MyTeamReportVM(); var myp = await db.vMyTeamReports.FirstOrDefaultAsync(p => p.SiteUserId == siteUserId); if (myp != null) { rec.MyResult = new PyramidResultVM() { NB = myp.FromOthers, PBV = myp.PBV, Sales = myp.total.HasValue ? myp.total.Value : 0 } } ; else { rec.MyResult = new PyramidResultVM(); rec.Team = new List <TeamReportVM>(); rec.Sales = new List <SaleVM>(); return(rec); } List <TeamReportVM> lMem = new List <TeamReportVM>(); foreach (vMyTeamReport pir in db.vMyTeamReports.Where(p => p.PyramidParentId == myp.PyramidId)) { TeamReportVM member = new TeamReportVM() { BPName = pir.BPName, eMail = pir.EMail }; member.Result = new PyramidResultVM() { NB = pir.FromOthers, PBV = pir.PBV, Sales = pir.total.HasValue ? pir.total.Value : 0 }; lMem.Add(member); } rec.Team = lMem; List <SaleVM> lSales = new List <SaleVM>(); foreach (vSalesTotal sal in db.vSalesTotals.Where(p => p.SiteUserId == siteUserId)) { SaleVM oneSale = new SaleVM() { CustomerName = sal.CustomerName, OnDate = sal.OnDate, SaleId = sal.SaleId, Total = sal.Total.HasValue ? sal.Total.Value : 0, SaleDetails = new List <SaleDetailVM>() }; foreach (SaleDetail sd in db.SaleDetails.Where(s => s.SaleId == sal.SaleId)) { SaleDetailVM sdvm = new SaleDetailVM() { ProductName = sd.Product.Name, Price = sd.Price, Quantity = sd.Quantity, SaleDetailId = sd.SaleDetailId }; oneSale.SaleDetails.Add(sdvm); } lSales.Add(oneSale); } rec.Sales = lSales; return(rec); }