// FOR CREATING AND UPDATING SHOPPING CART ITEMS public void AddCartItem(string sessionID, Product product, int?quantity) { // need to update the expiry date of the session aswell? // maybe sliding does this by default MC_ShoppingCartEntities db = new MC_ShoppingCartEntities(); ProductVisit item = db.ProductVisits .Where(pv => pv.productID == product.productID && pv.sessionID == sessionID) .FirstOrDefault(); if (item == null) // if null make one { ProductVisit cartItem = new ProductVisit(); cartItem.sessionID = sessionID; // primary cartItem.productID = product.productID; // primary cartItem.qtyOrdered = quantity; cartItem.updated = DateTime.Now; db.ProductVisits.Add(cartItem); db.SaveChanges(); } else // otherwise update quantity and updated { item.qtyOrdered = quantity; item.updated = DateTime.Now; db.SaveChanges(); } }
// used to get all cart items in DB regardless of session public IEnumerable <ProductVisit> GetAll() { MC_ShoppingCartEntities db = new MC_ShoppingCartEntities(); IEnumerable <ProductVisit> pvs = db.ProductVisits.ToList(); return(pvs); }
// used to get a cart item from DB, not in use public ProductVisit GetProductVisit(string sessionID) { MC_ShoppingCartEntities db = new MC_ShoppingCartEntities(); ProductVisit sessionData = db.ProductVisits.Where(pv => pv.sessionID == sessionID).FirstOrDefault(); return(sessionData); }
public IEnumerable <Visit> GetAll() { MC_ShoppingCartEntities db = new MC_ShoppingCartEntities(); var visits = db.Visits.ToList(); return(visits); }
public IEnumerable <Product> GetAll() { MC_ShoppingCartEntities db = new MC_ShoppingCartEntities(); var products = db.Products.ToList(); return(products); }
public Visit GetVisit(string sessionID) { MC_ShoppingCartEntities db = new MC_ShoppingCartEntities(); Visit visit = db.Visits.Where(v => v.sessionID == sessionID).FirstOrDefault(); return(visit); }
public Product GetProduct(int?id) { MC_ShoppingCartEntities db = new MC_ShoppingCartEntities(); var product = db.Products.Where(p => p.productID == id).FirstOrDefault(); return(product); }
/// <summary> /// Returns a list of items product visits with a certain sessionID /// </summary> /// <param name="sessionID"></param> /// <returns></returns> public IEnumerable <ProductVisit> GetCartItems(string sessionID) { MC_ShoppingCartEntities db = new MC_ShoppingCartEntities(); // get all cart items from the database IEnumerable <ProductVisit> carItems = db.ProductVisits.Where(pv => pv.sessionID == sessionID).Select(pv => pv); // how to get price aswell? return(carItems); }
public ProductVisit GetCartItem(string sessionID, int productID) { MC_ShoppingCartEntities db = new MC_ShoppingCartEntities(); ProductVisit cartItem = db.ProductVisits .Where(pv => pv.sessionID == sessionID && pv.productID == productID) .FirstOrDefault(); return(cartItem); }
public void RemoveVisit(string sessionID) { MC_ShoppingCartEntities db = new MC_ShoppingCartEntities(); Visit visit = db.Visits.Where(v => v.sessionID == sessionID).FirstOrDefault(); if (visit != null) { db.Visits.Remove(visit); db.SaveChanges(); } }
public void CreateExpiredVisit(string sessionID) { MC_ShoppingCartEntities db = new MC_ShoppingCartEntities(); Visit visit = new Visit(); visit.sessionID = sessionID + "-expired"; visit.started = DateTime.Now.AddHours(-2); db.Visits.Add(visit); db.SaveChanges(); }
// used when click remove button // need to pass session and product ID // this is causing error when called from session start and there is not any data yet public void RemoveProductVisit(string sessionID, int productID) { MC_ShoppingCartEntities db = new MC_ShoppingCartEntities(); ProductVisit productVisit = db.ProductVisits.Where(pv => pv.sessionID == sessionID && pv.productID == productID).FirstOrDefault(); if (productVisit != null) { db.ProductVisits.Remove(productVisit); db.SaveChanges(); } }
public Visit CreateVisit(string sessionID) { MC_ShoppingCartEntities db = new MC_ShoppingCartEntities(); Visit visit = new Visit(); visit.sessionID = sessionID; visit.started = DateTime.Now; db.Visits.Add(visit); db.SaveChanges(); return(visit); }
// used for testing public void CreateExpiredProductVisit(string sessionID) { MC_ShoppingCartEntities db = new MC_ShoppingCartEntities(); ProductVisit pv = new ProductVisit(); pv.sessionID = sessionID + "-expired"; // primary pv.productID = 107; // primary pv.updated = DateTime.Now.AddHours(-2); db.ProductVisits.Add(pv); db.SaveChanges(); }
public void RemoveVisits() { MC_ShoppingCartEntities db = new MC_ShoppingCartEntities(); IEnumerable <Visit> vs = db.Visits.ToList(); foreach (Visit v in vs) { if (v.started.Value < DateTime.Now.AddHours(-1)) { db.Visits.Remove(v); } } db.SaveChanges(); }
// used for testing public ProductVisit CreateProductVisit(string sessionID) { MC_ShoppingCartEntities db = new MC_ShoppingCartEntities(); ProductVisit pv = new ProductVisit(); pv.sessionID = sessionID; // primary pv.productID = 107; // primary pv.updated = DateTime.Now; db.ProductVisits.Add(pv); db.SaveChanges(); return(pv); }
// this is causing error when called from session start and there is not any data yet // used by cacnel order button only called when there is product visits public void RemoveProductVisits(string sessionID) { MC_ShoppingCartEntities db = new MC_ShoppingCartEntities(); IEnumerable <ProductVisit> pvs = db.ProductVisits.Where(pv => pv.sessionID == sessionID).ToList(); if (pvs != null) // if any entries in product visit { foreach (ProductVisit pv in pvs) { db.ProductVisits.Remove(pv); // remove ones with current sessioID } db.SaveChanges(); } }
public ProductVM GetProductVM(int?id) { MC_ShoppingCartEntities db = new MC_ShoppingCartEntities(); ProductVM product = db.Products.Where(p => p.productID == id) .Select(p => new ProductVM { productID = p.productID, productName = p.productName, price = p.price, quantity = null }).FirstOrDefault(); return(product); }
// used in session start public void RemoveExpiredProductVisits() { MC_ShoppingCartEntities db = new MC_ShoppingCartEntities(); IEnumerable <ProductVisit> pvs = db.ProductVisits.ToList(); if (pvs != null) // if there are old product visits { foreach (ProductVisit pv in pvs) { if (pv.updated.Value < DateTime.Now.AddHours(-1)) // remove the old ones { db.ProductVisits.Remove(pv); } } db.SaveChanges(); } }
public IEnumerable <ProductVM> GetAll(string sortOrder, string searchString) { MC_ShoppingCartEntities db = new MC_ShoppingCartEntities(); IEnumerable <ProductVM> products = db.Products.Select(p => new ProductVM { productID = p.productID, productName = p.productName, price = p.price, quantity = null, image = p.Image.imageTitle }); products = SortProducts(products, sortOrder); products = FilterProducts(products, searchString); return(products); }