private static async Task ChooseBackend()//Väljer backend mellan MSSQL och PostgreSQL { Console.Clear(); Console.WriteLine("************DATABASMENYVAL************"); Console.WriteLine("[1] MSSQL\n[2] PostgreSQL"); Console.Write("Välj Backend: "); if (int.TryParse(Console.ReadLine(), out int backend)) { if (backend == 1)//MSSQL { ChefRepository.Backend = backend; repo = new ChefRepository(); return; } else if (backend == 2)//PostgreSQL { ChefRepository.Backend = backend; repo = new ChefRepository(); return; } else { Console.WriteLine("Ange en korrekt siffra!"); Console.ReadKey(true); await ChooseBackend(); } } else { Console.WriteLine("Fel inmatat!"); Console.ReadKey(true); await ChooseBackend(); } }
public async Task DrawMultipleChoiceMenu() //Visar kockens display menu { var repo = new ChefRepository(); Console.Clear(); Console.WriteLine("************INKOMMANDE ORDER************"); Console.WriteLine("-------------\n"); await ShowOrders();//Skriver ut ordarna som är under tillagning Console.WriteLine("-------------"); Console.WriteLine("\n~ Välj ordernummer för att tillaga\n~ Tryck [0] för att logga ut"); Console.Write("\nDitt val: "); IEnumerable <Order> orderByStatusIEnumerable = await repo.ShowOrderByStatus(eStatus.Tillagning); List <Order> listOfOrders = orderByStatusIEnumerable.ToList(); if (int.TryParse(Console.ReadLine(), out int userInput))//Kollar om orderIDt finns { if (userInput == 0) { await Program.Start(); } else if (listOfOrders.Exists(x => x.ID == userInput)) { Order orderFood = await repo.ShowOrderByID(userInput); bool correctKey = true; do//Hanterar val för att tillaga en order, gå tillbaka eller att logga ut { Console.Clear(); Console.WriteLine($"Du har valt order # {orderFood.ID}"); Console.WriteLine($"\nDenna order innehåller följande artiklar:"); Console.WriteLine("------------------------\n"); await ShowFoodInOrder(orderFood.ID);//Skriver ut en orders innehåll Console.WriteLine("\n------------------------"); Console.WriteLine("1. Tillaga"); Console.WriteLine("2. Återgå"); Console.WriteLine("3. Logga ut"); int userInput2 = Console.ReadKey(true).KeyChar - '0'; if (userInput2 == 1) { await repo.UpdateOrderStatus(userInput); //Uppdaterar orderstatus till 3 == klar await DrawCookMenu(orderFood.ID); correctKey = false; } if (userInput2 == 2) { await DrawMultipleChoiceMenu(); //Visar orderlista correctKey = false; } if (userInput2 == 3) { await Program.Start(); //Går tillbaka till inloggningen } else { Console.Clear(); Console.WriteLine("Skriv 1, 2 eller 3"); } } while (correctKey == true); } else { Console.WriteLine("Finns ingen order med det IDt."); } } else { Console.WriteLine("Fel inmatning"); } Console.ReadKey(); await DrawMultipleChoiceMenu(); }