Example #1
0
        public int SelectBikeVariationId(int bikeId, BicycleColor bikeColor, BicycleSize bikeSize)
        {
            string bikeVariationIdQuery =
                "SELECT id " +
                "FROM BikeModel_variations " +
                "WHERE model = '" + bikeId + "' " +
                "AND color = '" + bikeColor.id + "' " +
                "AND size = '" + bikeSize.id + "'";

            int variationId = 1;

            if (this.OpenConnection() == true)
            {
                //Create Command
                MySqlCommand cmd = new MySqlCommand(bikeVariationIdQuery, connection);
                //Create a data reader and Execute the command
                MySqlDataReader dataReader = cmd.ExecuteReader();

                if (dataReader.HasRows)
                {
                    dataReader.Read();
                    variationId = (int)dataReader["id"];

                    dataReader.Close();
                    this.CloseConnection();
                }
            }

            return(variationId);
        }
Example #2
0
 private void buttonOrder_Click(object sender, EventArgs e)
 {
     if (comboBoxColor.SelectedItem != null && comboBoxSize.SelectedItem != null)
     {
         int          bikeId      = bicycle.id;
         BicycleColor color       = (BicycleColor)comboBoxColor.SelectedItem;
         BicycleSize  size        = (BicycleSize)comboBoxSize.SelectedItem;
         int          quantity    = (int)numericUpDownQuantity.Value;
         float        bikePrice   = bicycle.price;
         int          variationId = DBConnection.SelectBikeVariationId(bikeId, color, size);
         OrderItem    orderItem   = new OrderItem(variationId, quantity, bikePrice);
         client.AddOrderToCart(orderItem);
         Cart cartPage = new Cart(user, client);
         cartPage.Show();
         this.Close();
     }
 }
 public void AddAvailableSize(BicycleSize size)
 {
     this.availableSizes.Add(size);
 }
Example #4
0
        public List <AvailableBicycle> SelectAvailableBikes()
        {
            string bikeQuery          = "SELECT * FROM BikeModel";
            string colorQuery         = "SELECT * FROM Color";
            string sizeQuery          = "SELECT * FROM Size";
            string bikeVariationQuery = "SELECT * FROM BikeModel_variations";

            DataTable bikeDataTable;
            DataTable colorDataTable;
            DataTable sizeDataTable;
            DataTable bikeVariationDataTable;

            //Create a list to store the result
            List <AvailableBicycle> bikeList  = new List <AvailableBicycle>();
            List <BicycleColor>     colorList = new List <BicycleColor>();
            List <BicycleSize>      sizeList  = new List <BicycleSize>();

            //Open connection
            if (this.OpenConnection() == true)
            {
                bikeDataTable          = CreateDataTable(bikeQuery);
                colorDataTable         = CreateDataTable(colorQuery);
                sizeDataTable          = CreateDataTable(sizeQuery);
                bikeVariationDataTable = CreateDataTable(bikeVariationQuery);
                this.CloseConnection();
                for (int i = 0; i < colorDataTable.Rows.Count; i++)
                {
                    int          id        = (int)colorDataTable.Rows[i]["id"];
                    string       color     = (string)colorDataTable.Rows[i]["color"];
                    BicycleColor bikeColor = new BicycleColor(id, color);
                    colorList.Add(bikeColor);
                }
                for (int i = 0; i < sizeDataTable.Rows.Count; i++)
                {
                    int         id       = (int)sizeDataTable.Rows[i]["id"];
                    string      size     = (string)sizeDataTable.Rows[i]["size"];
                    BicycleSize bikeSize = new BicycleSize(id, size);
                    sizeList.Add(bikeSize);
                }
                for (int i = 0; i < bikeDataTable.Rows.Count; i++)
                {
                    int              id               = (int)bikeDataTable.Rows[i]["id"];
                    string           name             = (string)bikeDataTable.Rows[i]["bike_name"];
                    string           description      = (string)bikeDataTable.Rows[i]["description"];
                    float            price            = (float)bikeDataTable.Rows[i]["price"];
                    int              imageId          = (int)bikeDataTable.Rows[i]["image"];
                    AvailableBicycle availableBicycle = new AvailableBicycle(id, name, description, price, imageId);
                    for (int j = 0; j < bikeVariationDataTable.Rows.Count; j++)
                    {
                        if ((int)bikeVariationDataTable.Rows[j]["model"] == id)
                        {
                            for (int k = 0; k < colorList.Count; k++)
                            {
                                if (!availableBicycle.availableColors.Contains(colorList[k]) && colorList[k].id == (int)bikeVariationDataTable.Rows[j]["color"])
                                {
                                    availableBicycle.AddAvailableColor(colorList[k]);
                                    break;
                                }
                            }
                            for (int l = 0; l < sizeList.Count; l++)
                            {
                                if (!availableBicycle.availableSizes.Contains(sizeList[l]) && sizeList[l].id == (int)bikeVariationDataTable.Rows[j]["size"])
                                {
                                    availableBicycle.AddAvailableSize(sizeList[l]);
                                    break;
                                }
                            }
                        }
                    }
                    bikeList.Add(availableBicycle);
                }
                return(bikeList);
            }
            else
            {
                return(bikeList);
            }
        }