Esempio n. 1
0
        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();
        }
Esempio n. 2
0
        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");
            }
        }