/// <summary> /// Add Item to MyShopping Cart /// </summary> /// <param name="cartID"></param> /// <param name="productID"></param> /// <param name="quantity"></param> public void AddItem(string cartID, string productID, int quantity) { using (cmis_portal_uatEntities1 db = new cmis_portal_uatEntities1()) { try { var myItem = (from c in db.ShoppingCarts where c.CartID == cartID && c.ProductID == productID select c).FirstOrDefault(); if (myItem == null) { ShoppingCart cartadd = new ShoppingCart(); cartadd.CartID = cartID; cartadd.Quantity = quantity; cartadd.ProductID = productID; cartadd.DateCreated = DateTime.Now; db.ShoppingCarts.Add(cartadd); } else { myItem.Quantity += quantity; } db.SaveChanges(); } catch (Exception exp) { throw new Exception("ERROR: Unable to Add Item to Cart - " + exp.Message.ToString(), exp); } } }
/// <summary> /// Get Cart Added Total Item quantity /// </summary> /// <param name="cartId"></param> /// <returns></returns> internal decimal GetTotal(string cartId) { using (cmis_portal_uatEntities1 db = new cmis_portal_uatEntities1()) { decimal cartTotal = 0; try { var myCart = (from c in db.ViewCarts where c.CartID == cartId select c); if (myCart.Count() > 0) { cartTotal = myCart.Sum(od => (decimal)od.Quantity * ((decimal)od.UnitCost + (decimal)od.UDF_ENVIRONMENTAL + (decimal)od.UDF_FREIGHT + (decimal)od.UDF_FUEL + (decimal)od.UDF_OTHER + (decimal)od.UDF_PALLET)); } } catch (Exception exp) { throw new Exception("ERROR: Unable to Calculate Order Total - " + exp.Message.ToString(), exp); } return(cartTotal); } }
/// <summary> /// Update Item qunatity in shopping Cart /// </summary> /// <param name="cartId"></param> /// <param name="ItemCode"></param> /// <param name="Quantity"></param> public void UpdateItem(string cartId, string ItemCode, int Quantity) { using (cmis_portal_uatEntities1 db = new cmis_portal_uatEntities1()) { try { var myItem = (from c in db.ShoppingCarts where c.CartID == cartId && c.ProductID == ItemCode select c).FirstOrDefault(); if (myItem != null) { myItem.Quantity = Quantity; db.SaveChanges(); } } catch (Exception exp) { throw new Exception("ERROR: Unable to Update Cart Item - " + exp.Message.ToString(), exp); } } }
/// <summary> /// Remove Item in shopping Cart /// </summary> /// <param name="cartID"></param> /// <param name="productID"></param> public void RemoveItem(string cartID, string productID) { using (cmis_portal_uatEntities1 db = new cmis_portal_uatEntities1()) { try { var myItem = (from c in db.ShoppingCarts where c.CartID == cartID && c.ProductID == productID select c).FirstOrDefault(); if (myItem != null) { db.ShoppingCarts.Remove(myItem); db.SaveChanges(); } HttpContext.Current.Session["CartTotal"] = Convert.ToInt16(HttpContext.Current.Session["CartTotal"]) - 1; } catch (Exception exp) { throw new Exception("ERROR: Unable to Remove Cart Item - " + exp.Message.ToString(), exp); } } }