protected void btnAddToCart_Click(object sender, EventArgs e) { // try catch for notifying the user when they // try to enter an item to their shopping cart // that is already in their shopping cart try { // call method to get values from the labels and textboxes // on the formview GetItems(); // check to see if user is logged on if (System.Web.HttpContext.Current.User.Identity.IsAuthenticated) { // get the customerID of the user who is logged on // get the id of the user that I just created Customer customer = new Customer(); customer.Username = User.Identity.Name; CustomerDA customerIDDA = new CustomerDA(); Collection<Customer> getCustomersID = customerIDDA.Get(customer); customerID = getCustomersID[0].Id; // clear customer = null; customerIDDA = null; // count how many orders that have not been verified exist in the orders table Order order = new Order(); order.CustomerId = int.Parse(customerID.ToString()); order.TxnId = ""; OrderDA orderDA = new OrderDA(); Collection<Order> getOrders = orderDA.Get(order); // returns one item countOrders = getOrders.Count; //clear order = null; orderDA = null; getOrders = null; // if there are no orders with a txnID = "" then add a new order // then get the OrderID of the Order to add items to the shopping // cart using that OrderID // if there are orders with a txnID = "" then select the OrderID // and add orders to the shopping cart using that OrderID if (int.Parse(countOrders.ToString()) == 0) { // add a new order to the order table // instantiate class DAL.DataAccess da6 = new DAL.DataAccess(ConfigurationManager.ConnectionStrings["MyPetStoreDB"].ConnectionString, "System.Data.SqlClient"); // make command statement string comm6 = "INSERT INTO Orders VALUES (@customerID, @grossTotal, @tax, @netTotal, @txnID, @paymentStatus)"; // make arrays for paramaters and input string[] s6 = { "@customerID", "@grossTotal", "@tax", "@netTotal", "@txnID", "@paymentStatus" }; string[] v6 = { customerID.ToString(), "0", "0", "0", "", "" }; da6.ExecuteNonQuery(comm6, s6, v6); //clear s6 = null; v6 = null; // get the orderID of the order that was just created // insert sale price Order orderIID = new Order(); orderIID.CustomerId = int.Parse(customerID.ToString()); orderIID.TxnId = ""; OrderDA orderIDDA = new OrderDA(); Collection<Order> getOrder = orderIDDA.Get(orderIID); orderID = getOrder[0].Id; //clear orderIID = null; getOrder = null; // see if item is on sale if (isItemOnSale() == true) { // insert item into the database using the OrderID that was created // instantiate class // insert sale price OrderItem orderItem = new OrderItem(); orderItem.OrderId = int.Parse(orderID.ToString()); orderItem.ItemId = itemID.Text; orderItem.VendorId = int.Parse(vendorID.Text); orderItem.Price = decimal.Parse(salePriceAnswerDouble.ToString("n2")); orderItem.TotalPrice = decimal.Parse(salePriceAnswerDouble.ToString("n2")); orderItem.Quantity = int.Parse(quantity.Text); OrderItemDA orderItemDA = new OrderItemDA(); //Save the Objects to the Database orderItemDA.Save(orderItem); // clear orderItem = null; orderItemDA = null; //// tell user the item was added to their cart successfully successful.Text = "Added to shopping cart successfully!"; successful.Visible = true; Response.Redirect(Request.RawUrl); } else { // insert regular price OrderItem orderItem = new OrderItem(); orderItem.OrderId = int.Parse(orderID.ToString()); orderItem.ItemId = itemID.Text; orderItem.VendorId = int.Parse(vendorID.Text); orderItem.Price = decimal.Parse(price.ToString("n2")); orderItem.TotalPrice = decimal.Parse(price.ToString("n2")); orderItem.Quantity = int.Parse(quantity.Text); OrderItemDA orderItemDA = new OrderItemDA(); //Save the Objects to the Database orderItemDA.Save(orderItem); // clear orderItem = null; orderItemDA = null; // tell user the item was added to their cart successfully successful.Text = "Added to shopping cart successfully!"; successful.Visible = true; // refresh page Response.AppendHeader("Refresh", "0;URL=ItemDetails.aspx?ItemID=" + Request.QueryString["ItemID"]); // Response.Redirect(Request.RawUrl); } } else { // get the orderID of the user that has a txnID = "" // instantiate class Order orderIID = new Order(); orderIID.CustomerId = int.Parse(customerID.ToString()); orderIID.TxnId = ""; OrderDA orderIDDA = new OrderDA(); Collection<Order> getOrder = orderIDDA.Get(orderIID); orderID = getOrder[0].Id; //clear orderIID = null; getOrder = null; // check to see if the customer has the item in their cart already. // if they do, do not insert item into database OrderItem orderItemExistence = new OrderItem(); orderItemExistence.OrderId = int.Parse(orderID.ToString()); orderItemExistence.ItemId = itemID.Text; OrderItemDA orderItemExistenceDA = new OrderItemDA(); Collection<OrderItem> getOrderItemExistence = orderItemExistenceDA.Get(orderItemExistence); countItems = getOrderItemExistence.Count; if (countItems > 0) { error.Text = "This item is in your shopping cart."; error.Visible = true; } else { // see if item is on sale if (isItemOnSale() == true) { // insert sale price OrderItem orderItem = new OrderItem(); orderItem.OrderId = int.Parse(orderID.ToString()); orderItem.ItemId = itemID.Text; orderItem.VendorId = int.Parse(vendorID.Text); orderItem.Price = decimal.Parse(salePriceAnswerDouble.ToString("n2")); orderItem.TotalPrice = decimal.Parse(salePriceAnswerDouble.ToString("n2")); orderItem.Quantity = int.Parse(quantity.Text); OrderItemDA orderItemDA = new OrderItemDA(); //Save the Objects to the Database orderItemDA.Save(orderItem); // tell user the item was added to their cart successfully successful.Text = "Added to shopping cart successfully!"; successful.Visible = true; // refresh page Response.AppendHeader("Refresh", "0;URL=ItemDetails.aspx?ItemID=" + Request.QueryString["ItemID"]); } else { // insert regular price OrderItem orderItem = new OrderItem(); orderItem.OrderId = int.Parse(orderID.ToString()); orderItem.ItemId = itemID.Text; orderItem.VendorId = int.Parse(vendorID.Text); orderItem.Price = decimal.Parse(price.ToString("n2")); orderItem.TotalPrice = decimal.Parse(price.ToString("n2")); orderItem.Quantity = int.Parse(quantity.Text); OrderItemDA orderItemDA = new OrderItemDA(); //Save the Objects to the Database orderItemDA.Save(orderItem); // tell user the item was added to their cart successfully successful.Text = "Added to shopping cart successfully!"; successful.Visible = true; // refresh page Response.AppendHeader("Refresh", "0;URL=ItemDetails.aspx?ItemID=" + Request.QueryString["ItemID"]); } } } } // if user is not logged on make up and account else { // if the anonymous session anonymouscustomerID is empty // create a new username and customerID if (Session["AnonymousUserName"] == null) { // get all rows to get maximum customerID CustomerDA customerDA = new CustomerDA(); //We will be returned a collection so lets Declare that and fill it using Get() Collection<Customer> getCustomers = customerDA.Get(null); // gets max customerID in table // adds one and combines websites domain name // with the anonymousID max = (int)getCustomers[getCustomers.Count - 1].Id; usernameID = int.Parse(max.ToString()) + 1; anonymousUserName = "******" + usernameID; //clear customerDA = null; getCustomers = null; // insert the anonymousCustomerID into the customer table with the username of // and the usernameID/customerID // mypetsfw.com + customerID Customer customer = new Customer(usernameID, true, anonymousUserName, "Fill In", "Fill In", "Fill In", "Fill In", "Fill In", "", "Fill In", ""); CustomerDA customerDA1 = new CustomerDA(); customerDA1.Save(customer); // clear customer = null; customerDA = null; // put the anonymoususername in a session Session["AnonymousUserName"] = anonymousUserName.ToString(); // create a new order of the anonymous user // add a new order to the order table // instantiate class Order oID1 = new Order(); oID1.Id = GetOrderIDPlusOne(); oID1.CustomerId = usernameID; oID1.GrossTotal = 0; oID1.Tax = 0; oID1.NetTotal = 0; // for payment status oID1.TxnId = ""; OrderDA orderIDDA1 = new OrderDA(); // save orderIDDA1.Save(oID1); //DAL.DataAccess da11 = // new DAL.DataAccess(ConfigurationManager.ConnectionStrings["MyPetStoreDB"].ConnectionString, // "System.Data.SqlClient"); //// make command statement //string comm11 = "INSERT INTO Orders VALUES (@customerID, @grossTotal, @tax, @netTotal, @txnID, @paymentStatus)"; //// make arrays for paramaters and input //string[] s11 = { "@customerID", "@grossTotal", "@tax", "@netTotal", "@txnID", "@paymentStatus" }; //string[] v11 = { usernameID.ToString(), "0", "0", "0", "", "" }; //da11.ExecuteNonQuery(comm11, s11, v11); //clear oID1 = null; orderIDDA1 = null; // get the orderID of the anonymoususer // get the id of the user that I just created Order oID = new Order(); oID.CustomerId = usernameID; oID.TxnId = ""; OrderDA orderIDDA = new OrderDA(); Collection<Order> getOrderID = orderIDDA.Get(oID); orderID = getOrderID[0].Id; //clear oID = null; getOrderID = null; // see if item is on sale if (isItemOnSale() == true) { // insert item into the database using the OrderID that was created // instantiate class OrderItem orderItem = new OrderItem(); orderItem.OrderId = int.Parse(orderID.ToString()); orderItem.ItemId = itemID.Text; orderItem.VendorId = int.Parse(vendorID.Text); orderItem.Price = decimal.Parse(salePriceAnswerDouble.ToString()); orderItem.TotalPrice = decimal.Parse(salePriceAnswerDouble.ToString()); orderItem.Quantity = int.Parse(quantity.Text); OrderItemDA orderItemDA = new OrderItemDA(); //Save the Objects to the Database orderItemDA.Save(orderItem); // clear orderItem = null; orderItemDA = null; // tell anonymous the item was added to their cart successfully successful.Text = "Added to shopping cart successfully!"; successful.Visible = true; // refresh page Response.AppendHeader("Refresh", "0;URL=ItemDetails.aspx?ItemID=" + Request.QueryString["ItemID"]); } else { // insert item into the database using the OrderID that was created // instantiate class OrderItem orderItem = new OrderItem(); orderItem.OrderId = int.Parse(orderID.ToString()); orderItem.ItemId = itemID.Text; orderItem.VendorId = int.Parse(vendorID.Text); orderItem.Price = decimal.Parse(price.ToString()); orderItem.TotalPrice = decimal.Parse(price.ToString()); orderItem.Quantity = int.Parse(quantity.Text); OrderItemDA orderItemDA = new OrderItemDA(); //Save the Objects to the Database orderItemDA.Save(orderItem); // clear orderItem = null; orderItemDA = null; // tell anonymous the item was added to their cart successfully successful.Text = "Added to shopping cart successfully!"; successful.Visible = true; // refresh page Response.AppendHeader("Refresh", "0;URL=ItemDetails.aspx?ItemID=" + Request.QueryString["ItemID"]); } } // if the session doesn't != null else { // get the customerID of the user that I just created Customer customer2 = new Customer(); customer2.Username = Session["AnonymousUserName"].ToString(); CustomerDA customerDA2 = new CustomerDA(); Collection<Customer> getCustomers2 = customerDA2.Get(customer2); customerID = getCustomers2[0].Id; // clear customer2 = null; customerDA2 = null; getCustomers2 = null; // see if an order doesn't already exist for the anonymousUser // count how many orderIDs that have not been verified exist in the orders table Order orders = new Order(); orders.CustomerId = int.Parse(customerID.ToString()); orders.TxnId = ""; OrderDA orderDA = new OrderDA(); Collection<Order> getOrder = orderDA.Get(orders); // returns one item countOrders = getOrder.Count; //clear orders = null; orderDA = null; getOrder = null; // if there are no orders with a txnID = "" then add a new order // then get the OrderID of the Order to add items to the shopping // cart using that OrderID // if there are orders with a txnID = "" then select the OrderID // and add orders to the shopping cart using that OrderID if (int.Parse(countOrders.ToString()) == 0) { // get the customerID of the user that I just created Customer customerIDID = new Customer(); customerIDID.Username = Session["AnonymousUserName"].ToString(); CustomerDA customerIDDA = new CustomerDA(); Collection<Customer> getCustomers3 = customerIDDA.Get(customerIDID); customerID = getCustomers3[0].Id; // clear customerIDID = null; customerIDDA = null; getCustomers3 = null; // create a new order of the anonymous user // add a new order to the order table // instantiate class Order oID1 = new Order(); oID1.Id = GetOrderIDPlusOne(); oID1.CustomerId = usernameID; oID1.GrossTotal = 0; oID1.Tax = 0; oID1.NetTotal = 0; // for payment status oID1.TxnId = ""; OrderDA orderIDDA1 = new OrderDA(); // save orderIDDA1.Save(oID1); //DAL.DataAccess da11 = // new DAL.DataAccess(ConfigurationManager.ConnectionStrings["MyPetStoreDB"].ConnectionString, // "System.Data.SqlClient"); //// make command statement //string comm11 = "INSERT INTO Orders VALUES (@customerID, @grossTotal, @tax, @netTotal, @txnID, @paymentStatus)"; //// make arrays for paramaters and input //string[] s11 = { "@customerID", "@grossTotal", "@tax", "@netTotal", "@txnID", "@paymentStatus" }; //string[] v11 = { customerID.ToString(), "0", "0", "0", "", "" }; //da11.ExecuteNonQuery(comm11, s11, v11); //clear oID1 = null; orderIDDA1 = null; // get the orderid for the anonymous users new order Order oID = new Order(); oID.CustomerId = int.Parse(customerID.ToString()); oID.TxnId = ""; OrderDA orderIDDA = new OrderDA(); Collection<Order> getOrderID = orderIDDA.Get(oID); orderID = int.Parse(getOrderID[0].Id.ToString()); //clear oID = null; orderIDDA = null; getOrderID = null; // see if item is on sale if (isItemOnSale() == true) { // insert item into the database using the OrderID that was created // instantiate class OrderItem orderItem = new OrderItem(); orderItem.OrderId = int.Parse(orderID.ToString()); orderItem.ItemId = itemID.Text; orderItem.VendorId = int.Parse(vendorID.Text); orderItem.Price = decimal.Parse(salePriceAnswerDouble.ToString()); orderItem.TotalPrice = decimal.Parse(salePriceAnswerDouble.ToString()); orderItem.Quantity = int.Parse(quantity.Text); OrderItemDA orderItemDA = new OrderItemDA(); //Save the Objects to the Database orderItemDA.Save(orderItem); // clear orderItem = null; orderItemDA = null; // tell user the item was added to their cart successfully successful.Text = "Added to shopping cart successfully!"; successful.Visible = true; // refresh page Response.AppendHeader("Refresh", "0;URL=ItemDetails.aspx?ItemID=" + Request.QueryString["ItemID"]); } else { // insert item into the database using the OrderID that was created // instantiate class OrderItem orderItem = new OrderItem(); orderItem.OrderId = int.Parse(orderID.ToString()); orderItem.ItemId = itemID.Text; orderItem.VendorId = int.Parse(vendorID.Text); orderItem.Price = decimal.Parse(price.ToString()); orderItem.TotalPrice = decimal.Parse(price.ToString()); orderItem.Quantity = int.Parse(quantity.Text); OrderItemDA orderItemDA = new OrderItemDA(); //Save the Objects to the Database orderItemDA.Save(orderItem); // clear orderItem = null; orderItemDA = null; // tell user the item was added to their cart successfully successful.Text = "Added to shopping cart successfully!"; successful.Visible = true; // refresh page Response.AppendHeader("Refresh", "0;URL=ItemDetails.aspx?ItemID=" + Request.QueryString["ItemID"]); } } // if an order is open and exists for the anonymous user else { // get the customerID of the user that I just created Customer customerIDID = new Customer(); customerIDID.Username = Session["AnonymousUserName"].ToString(); CustomerDA customerIDDA = new CustomerDA(); Collection<Customer> getCustomers3 = customerIDDA.Get(customerIDID); customerID = getCustomers3[0].Id; // clear customerIDID = null; customerIDDA = null; getCustomers3 = null; // get the orderID of the anonymoususer that has a txnID = "" // instantiate class Order oID = new Order(); oID.CustomerId = int.Parse(customerID.ToString()); oID.TxnId = ""; OrderDA orderIDDA = new OrderDA(); Collection<Order> getOrderID = orderIDDA.Get(oID); orderID = getOrderID[0].Id; //clear oID = null; orderIDDA = null; getOrderID = null; // check to see if the anonymous user has the item in their cart already. // if they do, do not insert item into database OrderItem orderItemExistence = new OrderItem(); orderItemExistence.OrderId = int.Parse(orderID.ToString()); orderItemExistence.ItemId = itemID.Text; OrderItemDA orderItemExistenceDA = new OrderItemDA(); Collection<OrderItem> getOrderItemExistence = orderItemExistenceDA.Get(orderItemExistence); countItems = getOrderItemExistence.Count; if (countItems > 0) { error.Text = "This item is in your shopping cart."; error.Visible = true; } else { // see if item is on sale if (isItemOnSale() == true) { // insert item into the database using the existing OrdersID // instantiate class OrderItem orderItem = new OrderItem(); orderItem.OrderId = int.Parse(orderID.ToString()); orderItem.ItemId = itemID.Text; orderItem.VendorId = int.Parse(vendorID.Text); orderItem.Price = decimal.Parse(salePriceAnswerDouble.ToString()); orderItem.TotalPrice = decimal.Parse(salePriceAnswerDouble.ToString()); orderItem.Quantity = int.Parse(quantity.Text); OrderItemDA orderItemDA = new OrderItemDA(); //Save the Objects to the Database orderItemDA.Save(orderItem); // clear orderItem = null; orderItemDA = null; // tell user the item was added to their cart successfully successful.Text = "Added to shopping cart successfully!"; successful.Visible = true; // refresh page Response.AppendHeader("Refresh", "0;URL=ItemDetails.aspx?ItemID=" + Request.QueryString["ItemID"]); } else { // insert item into the database using the existing OrdersID // instantiate class OrderItem orderItem = new OrderItem(); orderItem.OrderId = int.Parse(orderID.ToString()); orderItem.ItemId = itemID.Text; orderItem.VendorId = int.Parse(vendorID.Text); orderItem.Price = decimal.Parse(price.ToString()); orderItem.TotalPrice = decimal.Parse(price.ToString()); orderItem.Quantity = int.Parse(quantity.Text); OrderItemDA orderItemDA = new OrderItemDA(); //Save the Objects to the Database orderItemDA.Save(orderItem); // tell user the item was added to their cart successfully successful.Text = "Added to shopping cart successfully!"; successful.Visible = true; // refresh page Response.AppendHeader("Refresh", "0;URL=ItemDetails.aspx?ItemID=" + Request.QueryString["ItemID"]); } } } } } } catch (SqlException) { // error.Text = "The item is in your shopping cart already."; // error.Visible = true; } catch (Exception) { } }
protected void Page_Load(object sender, EventArgs e) { lblItemsInCart.Text = "0"; if (System.Web.HttpContext.Current.User.Identity.IsAuthenticated) { // get the customerID of the user who is logged on // update customer information Customer customerIDID = new Customer(); customerIDID.Username = Membership.GetUser().UserName; //Instantiate our Category specific DataAccess Class CustomerDA customerDA = new CustomerDA(); Collection<Customer> getCustomerID = customerDA.Get(customerIDID); // returns one item // customerID = ds5.Tables[0].Rows[0].ItemArray[0]; // if statement added by Ethan, will set customerID = 0 if no rows returned. if (getCustomerID.Count > 0) { customerID = getCustomerID[0].Id; ; } else { customerID = 0; } //clear customerIDID = null; customerDA = null; getCustomerID = null; // count how many orders exists from the user that is logged on Order oID = new Order(); oID.CustomerId = int.Parse(customerID.ToString()); oID.TxnId = ""; OrderDA orderIDDA = new OrderDA(); Collection<Order> getOrderID = orderIDDA.Get(oID); orderCount = getOrderID.Count; // clear oID = null; orderIDDA = null; getOrderID = null; if (int.Parse(orderCount.ToString()) == 0) { // display answer on label lblItemsInCart.Text = "0"; } else { // get the orderID of the order that has a txnid = "" of the customer Order orderIDID = new Order(); orderIDID.CustomerId = int.Parse(customerID.ToString()); orderIDID.TxnId = ""; OrderDA orderDA = new OrderDA(); Collection<Order> getOrderIDID = orderDA.Get(orderIDID); orderID = getOrderIDID[0].Id; // clear oID = null; orderIDDA = null; getOrderID = null; //count how many items are in the shopping cart for the user //and display them //instantiate class OrderItem orderItemCount = new OrderItem(); orderItemCount.OrderId = int.Parse(orderID.ToString()); OrderItemDA orderItemCountDA = new OrderItemDA(); Collection<OrderItem> getOrderItemCount = orderItemCountDA.Get(orderItemCount); items = getOrderItemCount.Count; // clear orderItemCount = null; orderItemCountDA = null; getOrderItemCount = null; // display answer on label lblItemsInCart.Text = items.ToString(); } } else { // if the customer is not logged on but has an item in there cart if (Session["AnonymousUserName"] != null) { // get the customerID Customer customerIDID = new Customer(); customerIDID.Username = Session["AnonymousUserName"].ToString(); //Instantiate our Category specific DataAccess Class CustomerDA customerDA = new CustomerDA(); Collection<Customer> getCustomerID = customerDA.Get(customerIDID); customerID = getCustomerID[0].Id.ToString(); //clear customerIDID = null; customerDA = null; getCustomerID = null; // get the current orderID if any if not make shopping cart items 0 // count how many orders exists from the user that is logged on Order oID = new Order(); oID.CustomerId = int.Parse(customerID.ToString()); oID.TxnId = ""; OrderDA orderIDDA = new OrderDA(); Collection<Order> getOrderID = orderIDDA.Get(oID); orderCount = getOrderID.Count; // clear oID = null; orderIDDA = null; getOrderID = null; if (int.Parse(orderCount.ToString()) == 0) { // display answer on label lblItemsInCart.Text = "0"; } else { // get the customerID // get the customerID Customer customerIDID2 = new Customer(); customerIDID2.Username = Session["AnonymousUserName"].ToString(); //Instantiate our Category specific DataAccess Class CustomerDA customerDA2 = new CustomerDA(); Collection<Customer> getCustomerID2 = customerDA2.Get(customerIDID2); customerID = getCustomerID2[0].Id; //clear customerIDID2 = null; customerDA2 = null; getCustomerID2 = null; // get the orderID of the order with the txnid = "" for the anonyomous user Order oID2 = new Order(); oID2.CustomerId = int.Parse(customerID.ToString()); oID2.TxnId = ""; OrderDA orderIDDA2 = new OrderDA(); Collection<Order> getOrderID2 = orderIDDA2.Get(oID2); orderID = getOrderID2[0].Id; // clear oID2 = null; orderIDDA2 = null; getOrderID2 = null; //count how many items are in the shopping cart for the anonymous user //and display them //instantiate class OrderItem orderItemCount = new OrderItem(); orderItemCount.OrderId = int.Parse(orderID.ToString()); OrderItemDA orderItemCountDA = new OrderItemDA(); Collection<OrderItem> getOrderItemCount = orderItemCountDA.Get(orderItemCount); items = getOrderItemCount.Count; // clear orderItemCount = null; orderItemCountDA = null; getOrderItemCount = null; // display answer on label lblItemsInCart.Text = items.ToString(); } } } }
private void UpdateQuantity() { // catch format exception and sql exception try { foreach (GridViewRow row in GridView1.Rows) { // Regex tagMatch = new Regex("<[^>]+>"); // gets the text of the control from the gridview quantity = (TextBox)row.FindControl("txtQuantity"); itemID = (Label)row.FindControl("lblItemIDHidden"); orderID = (Label)row.FindControl("lblOrderIDHidden"); minQuantity = (Label)row.FindControl("lblMinQuantityAnswer"); quantityAvailable = (Label)row.FindControl("lblQuantityAvailableAnswer"); price = (Label)row.FindControl("lblPrice"); totalIndividualItem = (Label)row.FindControl("lblTotaIndividualPrice"); vendorID = (Label)row.FindControl("lblVendorIDHidden"); // make text from labels double types addPrice = double.Parse(price.Text, System.Globalization.NumberStyles.Currency); // quantityAvailable.Text = tagMatch.Replace(quantityAvailable.Text, ""); // strText = tagMatch.Replace(strText, ""); minQuantityInt = int.Parse(minQuantity.Text, System.Globalization.NumberStyles.Integer); quantityAvailableInt = int.Parse(quantityAvailable.Text, System.Globalization.NumberStyles.Integer); quantityInt = int.Parse(quantity.Text, System.Globalization.NumberStyles.Integer); double TotalPrice = addPrice * quantityInt; // call method to validate quantity amount ValidateQuantity(minQuantityInt, quantityAvailableInt, quantityInt); if (quantityInt < minQuantityInt || quantityInt > quantityAvailableInt || quantityInt < 1) { quantity.BackColor = Color.Red; } else { // set quantity color back to original color quantity.BackColor = Color.White; } if (totalCount < 1) { // calculate total price for each individual item OrderItem orderItem = new OrderItem(); orderItem.OrderId = int.Parse(orderID.Text); orderItem.ItemId = itemID.Text; orderItem.VendorId = int.Parse(vendorID.Text); orderItem.TotalPrice = decimal.Parse(TotalPrice.ToString("n2")); orderItem.Quantity = int.Parse(quantity.Text); OrderItemDA orderItemDA = new OrderItemDA(); //Save the Objects to the Database orderItemDA.Save(orderItem); //DAL.DataAccess da = //new DAL.DataAccess(ConfigurationManager.ConnectionStrings["MyPetStoreDB"].ConnectionString, // "System.Data.SqlClient"); //string comm = // "UPDATE OrderItem SET TotalPrice = @totalPrice, Quantity = @quantity WHERE ItemID = @itemID AND OrderID = @orderID AND VendorID = @vendorID"; //// array with quantity, itemID, orderiD, vendorID, and totalPrice //string[] p = { "@quantity", "@itemID", "@orderID", "@vendorID", "@totalPrice" }; //string[] v = { // quantity.Text, itemID.Text, orderID.Text, vendorID.Text, TotalPrice.ToString("n2") // }; //da.ExecuteNonQuery(comm, p, v); // clear orderItem = null; orderItemDA = null; // add to total to calculate total total += addPrice * Convert.ToDouble(quantity.Text); // access the checkbox CheckBox cb = (CheckBox)row.FindControl("ItemSelector"); if (cb != null && cb.Checked) { // delete item with specific itemID, orderId, and vendorId //OrderItem myOrderItemDelete = new OrderItem(); //myOrderItemDelete.ItemId = itemID.Text; //myOrderItemDelete.OrderId = Convert.ToInt32(orderID.Text); //myOrderItemDelete.VendorId = Convert.ToInt32(vendorID.Text); //OrderItemDA orderItemDADelete = new OrderItemDA(); //orderItemDADelete.Delete(myOrderItemDelete); DAL.DataAccess da3 = new DAL.DataAccess(ConfigurationManager.ConnectionStrings["MyPetStoreDB"].ConnectionString, "System.Data.SqlClient"); string comm3 = "Delete FROM OrderItem WHERE ItemID = @itemID AND OrderID = @orderID AND VendorID = @vendorID"; // array with itemID, orderID, and vendorID string[] p3 = { "@itemID", "@orderID", "@vendorID" }; string[] v3 = { itemID.Text, orderID.Text, vendorID.Text }; da3.ExecuteNonQuery(comm3, p3, v3); // clear p3 = null; v3 = null; } // bind repeater and gridview BindGridRepeater(); } if (totalCount < 1) { // update total of orders table for the customer DAL.DataAccess da2 = new DAL.DataAccess(ConfigurationManager.ConnectionStrings["MyPetStoreDB"].ConnectionString, "System.Data.SqlClient"); string comm2 = "UPDATE Orders SET GrossTotal = @grossTotal, Tax = @tax, NetTotal = @netTotal WHERE OrderID = @orderID AND CustomerID = @customerID"; string calculateTax = CalculateTax(total, tax).ToString("n2"); string calculateTotal = CalculateTotal(total, double.Parse(calculateTax)); // empty array string[] p2 = { "@grossTotal", "@orderID", "@customerID", "@txnID", "@tax", "@netTotal" }; string[] v2 = { calculateTotal, orderID.Text, GetCustomerID(), "", calculateTax, total.ToString("n2") }; da2.ExecuteNonQuery(comm2, p2, v2); // clear p2 = null; v2 = null; // bind gridview and repeater to show changes BindGridRepeater(); // redirect using if page ispost back so when user deletes // items from shopping cart grosstotal, tax, and nettotal get updated. //if (Page.IsPostBack) //{ // Response.Redirect("CheckOut.aspx?OrderReview=true"); // // UpdateQuantity(); // //Response.AppendHeader("Refresh", "0;URL=CheckOut.aspx?OrderReview=true"); //} } } } catch (FormatException ex) { lblError.Text = "Shopping Cart could not be updated: quantity must not have alphabetical characters, special characters, and periods, or be left blank."; } catch (SqlException ex) { lblError.Text = "Please contact your network administrator."; } }