public IHttpActionResult GetProducts() { if (ShoppingData.ProductList().Any()) { return(Ok(ShoppingData.ProductList())); } else { return(NotFound()); } }
public IHttpActionResult RemoveProductFromCart(int OrderID, int ProductID) { if (OrderDataValidation.ValidateOpenOrder(OrderID)) { if (ShoppingData.ProductList().Any(p => p.P_ID == ProductID)) { using (ShoppingEntities entities = new ShoppingEntities()) { if (entities.Cart.Any(c => c.C_OrderID == OrderID && c.C_ProductID == ProductID)) { int NoOfItems = entities.Cart.Where(c => c.C_OrderID == OrderID && c.C_ProductID == ProductID).First().C_Count; if (NoOfItems > 0) { NoOfItems = NoOfItems - 1; entities.Cart.First(c => c.C_OrderID == OrderID && c.C_ProductID == ProductID).C_Count = NoOfItems; entities.SaveChanges(); return(Ok("1 Item removed from Cart")); } else { return(BadRequest("0 items in Cart")); } } else { return(BadRequest("Items not present in Cart")); } } } else { return(BadRequest("Invalid Product ID")); } } else { return(BadRequest("Invalid OrderID")); } }
public IHttpActionResult AddProductToCart(int OrderID, int ProductID) { if (OrderDataValidation.ValidateOpenOrder(OrderID)) { if (ShoppingData.ProductList().Any(p => p.P_ID == ProductID)) { using (ShoppingEntities entities = new ShoppingEntities()) { if (entities.Cart.Any(c => c.C_OrderID == OrderID && c.C_ProductID == ProductID)) { int NoOfItems = entities.Cart.Where(c => c.C_OrderID == OrderID && c.C_ProductID == ProductID).First().C_Count; NoOfItems = NoOfItems + 1; entities.Cart.First(c => c.C_OrderID == OrderID && c.C_ProductID == ProductID).C_Count = NoOfItems; entities.SaveChanges(); } else { entities.Cart.Add(new Cart { C_OrderID = OrderID, C_ProductID = ProductID, C_Count = 1 }); entities.SaveChanges(); } return(Ok("Item added in Cart")); } } else { return(BadRequest("Invalid Product ID")); } } else { return(BadRequest("Invalid OrderID")); } }
public decimal TotalAfterDiscount(int orderid) { List <Cart> myOrderCart; List <Products> allProducts; List <Discount> allDiscounts; decimal totalAmount = 0; decimal itemCost = 0; myOrderCart = ShoppingData.OrderCart(orderid).ToList(); allDiscounts = ShoppingData.Discounts().ToList(); allProducts = ShoppingData.ProductList().ToList(); foreach (var item in myOrderCart) { itemCost = 0; if (CartDataValidation.ValidateEmptyCartProduct(item)) { itemCost = 0; } else { itemCost = itemCost + ItemCost(item, allProducts.First(p => p.P_ID == item.C_ProductID)); if (allDiscounts.Any(d => d.D_ProductID == item.C_ProductID)) { foreach (var discount in allDiscounts.Where(d => d.D_ProductID == item.C_ProductID)) { switch (discount.D_DiscountCode.ToUpper()) { case "3FOR2": itemCost = itemCost - ThreeForTwoDiscount(item, allProducts.First(p => p.P_ID == item.C_ProductID), discount); continue; default: itemCost = itemCost - ProductDiscount(item, allProducts.First(p => p.P_ID == item.C_ProductID), discount); continue; } } } } totalAmount = totalAmount + itemCost; } if (allDiscounts.Any(d => d.D_ProductID == 0)) { foreach (var discount in allDiscounts.Where(d => d.D_ProductID == 0)) { switch (discount.D_DiscountCode.ToUpper()) { case "ALL10": totalAmount = totalAmount - CommonDiscount(totalAmount, discount); continue; default: totalAmount = totalAmount - CommonDiscount(totalAmount, discount); continue; } } } return(totalAmount); }