Пример #1
0
        private void btn_Submit_Click(object sender, RoutedEventArgs e)
        {
            Random rand = new Random();

            Business.Frame frame = new Business.Frame();
            if (rand.Next(0, 2) == 1)
            {
                frame.Type   = combo_frame_type.Text;
                frame.Colour = combo_frame_colour.Text;
                frame.Size   = combo_frame_size.Text;
            }
            else
            {
                MessageBox.Show("Frame OOS: Adding 2 days to Completion Time");
                frame.Type   = combo_frame_type.Text;
                frame.Colour = combo_frame_colour.Text;
                frame.Size   = combo_frame_size.Text;
                duration    += 2;
            }

            double frameTypeCost   = Double.Parse(((ComboBoxItem)combo_frame_type.SelectedItem).Tag.ToString());
            double frameColourCost = Double.Parse(((ComboBoxItem)combo_frame_colour.SelectedItem).Tag.ToString());
            double frameSizeCost   = Double.Parse(((ComboBoxItem)combo_frame_size.SelectedItem).Tag.ToString());

            frame.Cost = frameTypeCost + frameColourCost + frameSizeCost;

            Gears gears = new Gears();

            if (rand.Next(0, 2) == 1)
            {
                gears.Type = combo_gears.Text;
            }
            else
            {
                MessageBox.Show("Gears OOS: Adding 2 days to Completion Time");
                gears.Type = combo_gears.Text;
                duration  += 2;
            }

            gears.Cost = Double.Parse(((ComboBoxItem)combo_gears.SelectedItem).Tag.ToString());

            Breaks breaks = new Breaks();

            if (rand.Next(0, 2) == 1)
            {
                breaks.Type = combo_breaks.Text;
            }
            else
            {
                MessageBox.Show("Breaks OOS: Adding 2 days to Completion Time");
                breaks.Type = combo_breaks.Text;
                duration   += 2;
            }
            breaks.Cost = Double.Parse(((ComboBoxItem)combo_breaks.SelectedItem).Tag.ToString());

            GroupSet groupSet = new GroupSet();

            groupSet.Gears  = gears;
            groupSet.Breaks = breaks;
            groupSet.Cost   = groupSet.calculateGroupSet(gears, breaks);

            Wheels wheels = new Wheels();

            if (rand.Next(0, 2) == 1)
            {
                wheels.Type = combo_handlebars.Text;
            }
            else
            {
                MessageBox.Show("Wheels OOS: Adding 2 days to Completion Time");
                wheels.Type = combo_handlebars.Text;
                duration   += 2;
            }
            wheels.Cost = Double.Parse(((ComboBoxItem)combo_wheels.SelectedItem).Tag.ToString());

            Handlebars handleBars = new Handlebars();

            if (rand.Next(0, 2) == 1)
            {
                handleBars.Type = combo_handlebars.Text;
            }
            else
            {
                MessageBox.Show("Handlebars OOS: Adding 2 days to Completion Time");
                handleBars.Type = combo_handlebars.Text;
                duration       += 2;
            }
            handleBars.Cost = Double.Parse(((ComboBoxItem)combo_handlebars.SelectedItem).Tag.ToString());

            Saddle saddle = new Saddle();

            if (rand.Next(0, 2) == 1)
            {
                saddle.Type = combo_saddle.Text;
            }
            else
            {
                MessageBox.Show("Saddle OOS: Adding 2 days to Completion Time");
                saddle.Type = combo_saddle.Text;
                duration   += 2;
            }
            saddle.Cost = Double.Parse(((ComboBoxItem)combo_saddle.SelectedItem).Tag.ToString());

            FinishingSet finishingSet = new FinishingSet();

            finishingSet.HandleBars = handleBars;
            finishingSet.Saddle     = saddle;
            finishingSet.Cost       = finishingSet.calculateFinishingSet(handleBars, saddle);

            Bicycle bicycle = new Bicycle();

            bicycle.Frame        = frame;
            bicycle.GroupSet     = groupSet;
            bicycle.FinishingSet = finishingSet;
            bicycle.Cost         = bicycle.calculateFinalCost(frame, groupSet, finishingSet, wheels);
            if (check_warranty.IsChecked == true)
            {
                bicycle.Cost += 50.0;
            }
            bicycle.Duration = duration;
            duration         = 2;

            bikeList.Add(bicycle);
            string output    = "";
            int    bikeNum   = 1;
            double totalCost = 0.0;

            foreach (Bicycle bike in bikeList)
            {
                output += "Bike " + bikeNum + ":\n" + "Cost: " + bike.Cost + "\nCompletion Time: " + bike.Duration + " days.\n\n";
                bikeNum++;
                totalCost += bike.Cost;
            }
            MessageBox.Show(output + "\nTotal Cost: " + totalCost);
        }