public static List <Product> getdetails() { CTXEntities _ctx = new CTXEntities(); List <Product> products = _ctx.Products.OrderBy(p => p.Category).ToList <Product>(); foreach (Product p in products) { int?sum = 0; int?average = 0; if (p.CustomerComments.Count > 0) { foreach (CustomerComment r in p.CustomerComments) { sum += r.Rating; } if (sum > 0) { average = sum / p.CustomerComments.Count; } } p.Average = average; } products = products.OrderByDescending(x => x.Average).ToList <Product>(); return(products); }
public JsonResult UpdateTotal() { CTXEntities context = new CTXEntities(); decimal total; try { total = context.ShoppingCartDatas.Select(p => p.UnitPrice * p.Quantity).Sum(); } catch (Exception) { total = 0; } return(Json(new { d = String.Format("{0:c}", total) }, JsonRequestBehavior.AllowGet)); }
public JsonResult QuanityChange(int type, int pId) { CTXEntities context = new CTXEntities(); ShoppingCartData product = context.ShoppingCartDatas.FirstOrDefault(p => p.PID == pId); if (product == null) { return(Json(new { d = "0" })); } Product actualProduct = context.Products.FirstOrDefault(p => p.PID == pId); int quantity; // if type 0, decrease quantity // if type 1, increase quanity switch (type) { case 0: product.Quantity--; actualProduct.UnitsInStock++; break; case 1: product.Quantity++; actualProduct.UnitsInStock--; break; case -1: actualProduct.UnitsInStock += product.Quantity; product.Quantity = 0; break; default: return(Json(new { d = "0" })); } if (product.Quantity == 0) { context.ShoppingCartDatas.Remove(product); quantity = 0; } else { quantity = product.Quantity; } context.SaveChanges(); return(Json(new { d = quantity })); }