/// <summary> /// Aaron Usher /// Updated: /// 2017/04/27 /// /// Creates a user cart line in the database. /// </summary> /// /// <remarks> /// Aaron Usher /// Updated: /// 2017/04/27 /// /// Standardized method. /// </remarks> /// /// <param name="userCartLine">The userCartLine to add.</param> /// <returns>Rows affected.</returns> public static int CreateUserCartLine(UserCartLine userCartLine) { var results = 0; var conn = DBConnection.GetConnection(); var cmdText = @"sp_add_to_cart"; var cmd = new SqlCommand(cmdText, conn); cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.AddWithValue("@PRODUCT_ID", userCartLine.ProductID); cmd.Parameters.AddWithValue("@GRADE_ID", userCartLine.GradeID); cmd.Parameters.AddWithValue("@QUANTITY", userCartLine.Quantity); cmd.Parameters.AddWithValue("@USER_ID", userCartLine.UserID); try { conn.Open(); results = cmd.ExecuteNonQuery(); } catch (Exception) { throw; } finally { conn.Close(); } return(results); }
public int AddToCart(UserCartLine toAdd) { try { return(UserCartAccessor.CreateUserCartLine(toAdd)); } catch (System.Data.SqlClient.SqlException ex) { throw new ApplicationException("An error occured: ", ex); } }
public RedirectToRouteResult AddToCart(Cart cart, int?productId, string returnUrl) { try { var productViewModel = _productManager.RetrieveProductsToBrowseProducts().FirstOrDefault(p => p.ProductId == productId); var product = new Product { ProductId = productViewModel.ProductId, GradeId = productViewModel.GradeID, Price = productViewModel.Price, Name = productViewModel.Name }; if (product.ProductId != 0) { var currentUser = _userManager.RetrieveUserByUserName(User.Identity.Name); var gradeId = Request.Params["Grade"]; var quantity = Int32.Parse(Request.Params["Quantity"]); cart.AddItem(product, quantity); var cartLine = new UserCartLine { UserID = currentUser.UserId, ProductID = (int)productId, GradeID = gradeId, Quantity = quantity }; var results = _userCartManager.AddToCart(cartLine); if (results >= 0) { return(RedirectToAction("Index", "Products")); } else { return(RedirectToAction("Details", "Products", new { id = productId, supplierId = Request.Params["supplierId"], errored = "runout" })); } } } catch (Exception) { //var test = "breaker"; } return(RedirectToAction("Details", "Products", new { id = productId, supplierId = Request.Params["supplierId"] })); }