//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); } }
//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); } }