private void getOrderDetails() { //retrieve individual order details to populate the listview orderDetailsList.Items.Clear(); int orderNumber = int.Parse(orderHistoryListView.SelectedItems[0].Text); Gelato2UEntitiesA db = new Gelato2UEntitiesA(); List <OrderItem> orderItems = db.OrderItems.Where(x => x.OrderNumber == orderNumber).ToList(); foreach (OrderItem orderItem in orderItems) { Product product = db.Products.FirstOrDefault(x => x.ProductNumber == orderItem.ProductNumber); ListViewItem item = new ListViewItem(new[] { orderItem.OrderNumber.ToString(), orderItem.ProductNumber.ToString(), product.ProductName, orderItem.Quantity.ToString(), product.Price.ToString("C"), (orderItem.Quantity * product.Price).ToString("C") }); orderDetailsList.Items.Add(item); } }
private void getOrders() { //retrieve orders to populate the listview string statusText = ""; Gelato2UEntitiesA db = new Gelato2UEntitiesA(); List <Order> orders = db.Orders.Where(x => x.CustomerNumber == CurrentCustomer.CustomerNumber).ToList(); foreach (Order order in orders) { if (order.OrderStatus == 1) { statusText = "Taken"; } else { statusText = "Dispatched"; } ListViewItem item = new ListViewItem(new[] { order.OrderNumber.ToString(), order.OrderDate.ToLongDateString(), statusText, order.CustomerDiscount.ToString(), order.OrderTotalBeforeDiscount.ToString("C2"), order.OrderTotalBeforeDiscount.ToString("C2") }); orderHistoryListView.Items.Add(item); orderHistoryListView.FullRowSelect = true; } }
private void CustomerForm_Load(object sender, EventArgs e) { Gelato2UEntitiesA db = new Gelato2UEntitiesA(); List <Customer> cl = db.Customers.ToList(); custListBox.DataSource = cl; custListBox.DisplayMember = "CustomerName"; takeNewOrderButton.Enabled = false; orderHistButton.Enabled = false; }
private void CheckOutButton_Click(object sender, EventArgs e) { if (ob.NumberOfItems == 0) { MessageBox.Show("The basket is currently empty!", "Basket Empty", MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1); return; } Gelato2UEntitiesA db = new Gelato2UEntitiesA(); List <OrderItem> itemsToAdd = new List <OrderItem>(); //create list populate with orderbasket foreach (BasketItem item in ob.BasketItems) { itemsToAdd.Add(new OrderItem { ProductNumber = item.ProductNumber, Quantity = item.Quantity }); } //create an order object - needs to match the format of database table Order order = new Order { OrderDate = DateTime.Now, CustomerNumber = cust.CustomerNumber, CustomerDiscount = cust.Discount, OrderStatus = 1, OrderTotalBeforeDiscount = ob.BasketTotal, OrderItems = itemsToAdd }; //save changes to db db.Orders.Add(order); db.SaveChanges(); MessageBox.Show("The order has been successfully confirmed"); OrderHistoryForm ohf = new OrderHistoryForm(cust); ohf.Show(); this.Hide(); }
public OrderBasketForm(Customer customer) { //set initial state of the form and reset counters InitializeComponent(); cust = customer; ob = new OrderBasket(); Gelato2UEntitiesA db = new Gelato2UEntitiesA(); List <Product> pl = db.Products.ToList(); label2.Text = cust.CustomerName; discValue.Text = cust.Discount.ToString() + "%"; productNameBox.DataSource = pl; productNameBox.DisplayMember = "ProductName"; checkOutButton.Enabled = false; clearButton.Enabled = false; removeButton.Enabled = false; numOfProducts.Text = "0"; numOfItems.Text = "0"; totalBox.Text = "£0.00"; discTotal.Text = "£0.00"; }
private void SubmitButton_Click(object sender, EventArgs e) { //Validate the fields have entries upon submission TextBox[] newTextBox = { nameBox, secQuestBox, secAnswerBox, postcodeBox, emailBox }; for (int i = 0; i < newTextBox.Length; i++) { if (newTextBox[i].Text == string.Empty) { MessageBox.Show("Please complete all fields, blank fields are not accepted"); newTextBox[i].Focus(); return; } } if (phoneNumberBox.Text == string.Empty) { MessageBox.Show("Please enter a Customer Phone Number"); return; } // validate that the content is numeric for phone numbers else if (Regex.IsMatch(phoneNumberBox.Text, "[^0-9]")) { MessageBox.Show("Please Add a valid phone number, this field only accepts numbers"); return; } //TextBox[] newIntBox = { phoneNumberBox }; //for (int i = 0; i < newIntBox.Length; i++) //{ // if (newIntBox[i].Text == string.Empty) // { // MessageBox.Show("Please add the customers phone number"); // newIntBox[i].Focus(); // return; // } //} //bool eCheck = IsValidEmail(emailBox.Text); //if (!eCheck) //{ // MessageBox.Show("Please Enter a valid email address in the format e.g [email protected]"); //} //bool pCheck = IsValidPostcode(postcodeBox.Text); //if (!pCheck) //{ // MessageBox.Show("Please Enter a valid Postcode e.g AB123XY"); //} //WORKING VALUDATION BELOW - not great way to do it //if (nameBox.Text == string.Empty) //{ // MessageBox.Show("Please enter a Customer Name!"); // return; //} //else if (secQuestBox.Text == string.Empty) //{ // MessageBox.Show("Please Add a Security Question!"); // return; //} //else if (secAnswerBox.Text == string.Empty) //{ // MessageBox.Show("Please Add a Security Answer"); // return; //} Gelato2UEntitiesA db = new Gelato2UEntitiesA(); Customer customer = new Customer { CustomerName = nameBox.Text, AddressLine1 = addressBox.Text, Postcode = postcodeBox.Text, Phone = phoneNumberBox.Text, Email = emailBox.Text, SecurityQuestion = secQuestBox.Text, SecurityQuestionAnswer = secAnswerBox.Text }; if (validateCheck()) { db.Customers.Add(customer); try { db.SaveChanges(); MessageBox.Show("New Customer Details Saved"); this.Hide(); CustomerForm cf = new CustomerForm(); cf.Show(); } catch (Exception) { MessageBox.Show("Failed to Save new Cutomer"); } }//end of validationcheck else { MessageBox.Show("Failed Validation"); } }