//ButtonSAVE_Click sparar ärendet i en dictionary.
        private void ButtonSAVE_Click(object sender, RoutedEventArgs e)
        {
            List <Orders> newOrder = new List <Orders>();

            //Kontrollerar att alla värden är ifyllda.
            if (valid.ValidOrder(orderDesc.Text, valueOfVehicle, valueOfMechanic,
                                 ModelName.Text, RegNum.Text, matare.Text, dateOfReg.Text, orders.Fuel, specificQ.Text, specificQ2.Text, orderID.Text))
            {
                //FindNumber metoden tar ut alla siffror som finns i strängen MechanicID, detta är nämnligen ID:t för mekanikern.
                string mechanicID = valid.FindNumber(valueOfMechanic);

                //skickar in allt i en ny instans av klassen Order.
                newOrder.Add(new Orders(orderDesc.Text, (bool)Bromsar.IsChecked, (bool)vindrutor.IsChecked, (bool)Motor.IsChecked, (bool)Kaross.IsChecked, (bool)Tire.IsChecked, valueOfVehicle, valueOfMechanic,
                                        ModelName.Text, RegNum.Text, matare.Text, dateOfReg.Text, orders.Fuel, specificQ.Text, specificQ2.Text, orderID.Text, mechanicID));

                //NewOrder är en metod som sparar orderID som Key och listan av ordern som en lista i en dictionary.
                adminService.NewOrder(orderID.Text, newOrder);
                //GiveMechanicOrder ger den valda mekaniker jobbet, och sparar då denna lista på den specifika mekanikers ID.
                adminService.GiveMechanicOrder(mechanicID, newOrder);
                MessageBox.Show("Ett nytt ärende är nu tillagt!", "", MessageBoxButton.OK);
                CaseOptions caseOptions = new CaseOptions();
                this.NavigationService.Navigate(caseOptions);
            }
            else
            {
                MessageBox.Show(StringTools._inputError, "Error", MessageBoxButton.OK, MessageBoxImage.Warning);
            }
        }
Beispiel #2
0
        //Button_Click_ChangeCase ändrar ett ärende.
        private void Button_Click_ChangeCase(object sender, RoutedEventArgs e)
        {
            List <Orders> newOrder = new List <Orders>();


            //Kontrollerar att alla värden är ifyllda.

            if (valid.ValidOrder(orderDesc.Text, valueOfVehicle, valueOfMechanic, ModelName.Text, RegNum.Text, matare.Text, dateOfReg.Text, order.Fuel))
            {
                //Kontrollerar att det är en aktiv order.
                if (valid.ActivOrder(OrderIdSearch.Text))
                {
                    //hämtar ID för mekanikern ur stringen.
                    string mechanicID = valid.FindNumber(valueOfMechanic);
                    //Skriver ut de specifika frågorna som är för just detta ärende.
                    foreach (var item in ActivClasses.orderDictionary[OrderIdSearch.Text])
                    {
                        QuestionOne = item.SpecificQuestionAboutVehicle1;
                        QuestionTwo = item.SpecificQuestionAboutVehicle2;
                    }

                    //Tar bort den "gamla" ordernn
                    adminService.DeleteOrder(OrderIdSearch.Text);

                    //Lägger till den nya uppdaterade ordern.
                    newOrder.Add(new Orders(orderDesc.Text, (bool)Bromsar.IsChecked, (bool)Vindrutor.IsChecked, (bool)Motor.IsChecked, (bool)Kaross.IsChecked, (bool)Däck.IsChecked, valueOfVehicle, valueOfMechanic,
                                            ModelName.Text, RegNum.Text, matare.Text, dateOfReg.Text, order.Fuel, QuestionOne, QuestionTwo, OrderIdSearch.Text, mechanicID));
                    //Lägg till den på nytt i dictionary
                    adminService.NewOrder(OrderIdSearch.Text, newOrder);
                    //Lägger till denn på nytt hos mekanikern.
                    adminService.GiveMechanicOrder(mechanicID, newOrder);
                    MessageBox.Show("Ärendet är ändrat!", "", MessageBoxButton.OK);
                    ChangeCase changeCase = new ChangeCase();
                    this.NavigationService.Navigate(changeCase);
                }
                else
                {
                    MessageBox.Show(StringTools._inputError, "Error", MessageBoxButton.OK, MessageBoxImage.Warning);
                }
            }
            else
            {
                MessageBox.Show(StringTools._inputError, "Error", MessageBoxButton.OK, MessageBoxImage.Warning);
            }
        }