Beispiel #1
0
 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();
     }
 }
Beispiel #2
0
        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();
        }