public SelectSpecifikSQL(I4DAB_HandIn2Context db_) { db = db_; selectAllSQL = new SelectAllSQL(); }
static void Main(string[] args) { I4DAB_HandIn2Context db = new I4DAB_HandIn2Context(); var create = new InsertSQL(db); var selectAll = new SelectAllSQL(); var select = new SelectSQL(); var selectspecific = new SelectSpecifikSQL(db); string menu = "mainMenu"; string resturantMenu = "mainMenu"; string adminMenu = "mainMenu"; string userAddresse; Restaurant nyrest = new Restaurant(); bool runner = true; while (runner) { switch (menu) { case "mainMenu": // Main menu Console.Clear(); Console.WriteLine("Velkommen til Restaurant adminstration."); Console.WriteLine("---------------------------------"); Console.WriteLine("(a): Tilføj restaurant"); Console.WriteLine("(e): Vælg eksisterende restaurant"); Console.WriteLine("(r): Vis alle restauranter"); Console.WriteLine("(t): Vis alle restauranter af type"); Console.WriteLine("(x): Exit program"); Console.WriteLine("---------------------------------"); string us = Console.ReadLine(); Console.Clear(); String addresse = ""; switch (us) { case "a": do { Console.Clear(); Console.Write("Skriv navn: "); string name = Console.ReadLine(); Console.Write("Skriv addresse: "); addresse = Console.ReadLine(); Console.Write("Skriv type restaurant: "); string type = Console.ReadLine(); var rest = new Restaurant() { Name = name, Address = addresse, Type = type }; try { create.addRestaurant(ref rest); } catch (Exception) { Console.WriteLine("Fejled save resturant"); Console.WriteLine("Tryk enter for at forsætte"); Console.ReadLine(); } Console.WriteLine("Tilføjet. Tryk (i) for at tilføje en ny Restaurant"); } while (Console.ReadLine().Equals("i")); break; case "e": Console.WriteLine("Skriv addresse for at vælge restaurant"); userAddresse = Console.ReadLine(); Console.WriteLine("Indlæser... \n"); try { nyrest = selectspecific.getRestaurant(userAddresse); menu = "Resturant"; } catch (Exception) { Console.WriteLine("Fejlede Indlæser resturant"); Console.WriteLine("Tryk enter for at forsætte"); Console.ReadLine(); } break; case "r": Console.WriteLine("Indlæser... \n"); try { selectAll.SelectAllResturant(); } catch (Exception) { Console.WriteLine("Fejlede Indlæser restaurant"); Console.WriteLine("Tryk enter for at forsætte"); Console.ReadLine(); } Console.WriteLine("Tryk enter for at forsætte"); Console.ReadLine(); break; case "x": runner = false; break; case "t": Console.WriteLine("Indlæser... \n"); try { Console.Clear(); selectAll.selectAllTypes(); Console.Write("Skriv en type: "); string type = Console.ReadLine(); select.getAllWithType(type); } catch (Exception) { Console.WriteLine("Fejlede Indlæser restaurant"); Console.WriteLine("Tryk enter for at forsætte"); Console.ReadLine(); } Console.WriteLine("Tryk enter for at forsætte"); Console.ReadLine(); break; default: Console.WriteLine("Forkert indtastning"); Console.WriteLine("Tryk enter for at forsætte"); Console.ReadLine(); break; } break; case "Resturant": switch (resturantMenu) { case "mainMenu": Console.Clear(); Console.WriteLine("Velkommen til: " + nyrest.Name.ToString()); Console.WriteLine("På addressen: " + nyrest.Address.ToString()); Console.WriteLine("---------------------------------"); Console.WriteLine ( "0: Tilbage til main menu" + "\n" + "1: Vis restaurantens menu" + "\n" + "2: Tilføj en dish" + "\n" + "3: Tilføj et review til en dish" + "\n" + "4: Få vist et review for en dish" + "\n" + "5: Adminstraterer restauranten" ); Console.WriteLine("---------------------------------"); string menuInput = Console.ReadLine(); switch (menuInput) { case "0": menu = "mainMenu"; break; case "1": resturantMenu = "menuShowMenu"; break; case "2": resturantMenu = "menuNewDish"; break; case "3": resturantMenu = "menuNewReview"; break; case "4": resturantMenu = "menuShowReviews"; break; case "5": resturantMenu = "menuAdmin"; break; default: Console.WriteLine("Forkert indtastning"); Console.WriteLine("Tryk enter for at forsætte"); Console.ReadLine(); break; } Console.Clear(); break; case "menuNewDish": string answerDish = "j"; while (answerDish.Equals("j")) { Console.Write("Skriv navn: "); string name = Console.ReadLine(); Console.Write("Skriv pris i hele kroner: "); int pris = int.Parse(Console.ReadLine()); Console.Write("Skriv type dish: "); string type = Console.ReadLine(); var dish = new Dish() { Price = pris, Type = type, Name = name }; try { create.addDish(ref dish, ref nyrest); } catch (Exception) { Console.WriteLine("Fejlede save dish"); Console.WriteLine("Tryk enter for at forsætte"); Console.ReadLine(); } Console.WriteLine("Skriv (j) for at tilføje endnu en dish. Ellers (n)"); answerDish = Console.ReadLine(); } resturantMenu = "mainMenu"; break; case "menuShowMenu": Console.WriteLine("Indlæser... \n"); try { select.SelectRestaurantMenu2(nyrest.Address); } catch (Exception) { Console.WriteLine("Fejlede Indlæser menu"); Console.WriteLine("Tryk enter for at forsætte"); Console.ReadLine(); } Console.WriteLine("Tryk enter for at forsætte"); Console.ReadLine(); resturantMenu = "mainMenu"; break; case "menuNewReview": string answerReview = "j"; while (answerReview.Equals("j")) { select.SelectRestaurantMenu2(nyrest.Address); Console.WriteLine("Skriv navn på dish"); string name = Console.ReadLine(); var dish = db.Dish.Where(d => d.Name.Equals(name)).FirstOrDefault(); Console.WriteLine("Udført"); Console.Write("Skriv tekst "); string tekst = Console.ReadLine(); Console.Write("Skriv antal stjerner "); int stars = int.Parse(Console.ReadLine()); var review = new Review() { Text = tekst, Stars = stars }; try { create.addReview(ref review, ref nyrest, ref dish); } catch (Exception) { Console.WriteLine("Fejlede save review"); Console.WriteLine("Tryk enter for at forsætte"); Console.ReadLine(); } Console.WriteLine("Fuldført"); Console.WriteLine("Vil du skrive nyt review? (j) for ja, og (n) for nej"); answerReview = Console.ReadLine(); } resturantMenu = "mainMenu"; break; case "menuShowReviews": Console.WriteLine("Indlæser... \n"); try { select.SelectRestaurantMenu2(nyrest.Address); } catch (Exception) { Console.WriteLine("Fejlede Indlæser review"); Console.WriteLine("Tryk enter for at forsætte"); Console.ReadLine(); } Console.WriteLine("Tryk enter for at forsætte"); Console.ReadLine(); resturantMenu = "mainMenu"; break; case "menuAdmin": switch (adminMenu) { case "mainMenu": Console.Clear(); Console.WriteLine("Velkommen til: " + nyrest.Name.ToString()); Console.WriteLine("På addressen: " + nyrest.Address.ToString()); Console.WriteLine("---------------------------------"); Console.WriteLine("Admin menu:"); Console.WriteLine("---------------------------------"); Console.WriteLine ( "0: Tilbage til resturant menu" + "\n" + "1: Tilføj en person" + "\n" + "2: Vis personer" + "\n" + "3: Tilføj en waiter" + "\n" + "4: Vis en waiter" + "\n" + "5: Tilføj bord" + "\n" + "6: Vis borde" + "\n" + "7: Tilføj en guest" + "\n" + "8: Vis en guest" + "\n" + "9: Vis alle guests, borde og reviews på restauranten" ); Console.WriteLine("---------------------------------"); string menuAdminInput = Console.ReadLine(); switch (menuAdminInput) { case "0": resturantMenu = "mainMenu"; break; case "1": adminMenu = "addPerson"; break; case "2": adminMenu = "showPerson"; break; case "3": adminMenu = "addWaiter"; break; case "4": adminMenu = "showWaiter"; break; case "5": adminMenu = "addTable"; break; case "6": adminMenu = "showTable"; break; case "7": adminMenu = "addGuest"; break; case "8": adminMenu = "showGuest"; break; case "9": adminMenu = "ShowAllGuestsAtRestaurant"; break; default: Console.WriteLine("Forkert indtastning"); Console.WriteLine("Tryk enter for at forsætte"); Console.ReadLine(); break; } Console.Clear(); break; case "addPerson": Console.WriteLine("Skriv navnet for personen:"); string namePerson = Console.ReadLine(); Person personBuf = new Person() { Name = namePerson }; try { create.addPerson(ref personBuf); } catch (Exception) { Console.WriteLine("Fejlede save person"); Console.WriteLine("Tryk enter for at forsætte"); Console.ReadLine(); } Console.WriteLine("Tryk enter for at forsætte"); Console.ReadLine(); adminMenu = "mainMenu"; break; case "showPerson": try { selectAll.SelectAllPerson(); } catch (Exception) { Console.WriteLine("Fejlede Indlæser person"); Console.WriteLine("Tryk enter for at forsætte"); Console.ReadLine(); } Console.WriteLine("Tryk enter for at forsætte"); Console.ReadLine(); adminMenu = "mainMenu"; break; case "addWaiter": Console.WriteLine("Skriv tjenerens salary:"); int salaryWaiter = int.Parse(Console.ReadLine()); Waiter waiterBuf = new Waiter() { Salary = salaryWaiter }; selectAll.SelectAllPerson(); Console.WriteLine("Skriv personens id, som tjerneren hører til :"); int personWaiter = int.Parse(Console.ReadLine()); try { Person personBuf2 = selectspecific.selectPerson(personWaiter); create.addWaiter(ref waiterBuf, ref personBuf2); } catch (Exception) { Console.WriteLine("Fejlede save waiter"); Console.WriteLine("Tryk enter for at forsætte"); Console.ReadLine(); } Console.WriteLine("Tryk enter for at forsætte"); Console.ReadLine(); adminMenu = "mainMenu"; break; case "showWaiter": selectAll.SelectAllPerson(); Console.WriteLine("Skriv tjernerens person id:"); int waiterPersonNr = int.Parse(Console.ReadLine()); try { Person personBuf3 = selectspecific.selectPerson(waiterPersonNr); selectspecific.selectWaiter(personBuf3); } catch (Exception) { Console.WriteLine("Fejlede Indlæser watier"); Console.WriteLine("Tryk enter for at forsætte"); Console.ReadLine(); } Console.WriteLine("Tryk enter for at forsætte"); Console.ReadLine(); adminMenu = "mainMenu"; break; case "addTable": selectspecific.selectTableIns(nyrest); Console.WriteLine("Skriv nummeret bordet skal have:"); int tableNr = int.Parse(Console.ReadLine()); TableIns tableBuf = new TableIns() { Number = tableNr }; selectAll.SelectAllPerson(); Console.WriteLine("Skriv tjernerens person id:"); int waiterPersonNr1 = int.Parse(Console.ReadLine()); try { Person personBuf4 = selectspecific.selectPerson(waiterPersonNr1); Waiter waiterBuf2 = selectspecific.selectWaiter(personBuf4); create.addTable(ref tableBuf, ref nyrest, ref waiterBuf2); } catch (Exception) { Console.WriteLine("Fejlet gemt bord. Var personen tjener?"); Console.WriteLine("Tryk enter for at forsætte"); Console.ReadLine(); } Console.WriteLine("Tryk enter for at forsætte"); Console.ReadLine(); adminMenu = "mainMenu"; break; case "showTable": try { selectspecific.selectTableIns(nyrest); } catch (Exception) { Console.WriteLine("Fejlede Indlæser table"); Console.WriteLine("Tryk enter for at forsætte"); Console.ReadLine(); } Console.WriteLine("Tryk enter for at forsætte"); Console.ReadLine(); adminMenu = "mainMenu"; break; case "addGuest": selectAll.SelectAllPerson(); Console.WriteLine("Skriv personens navn"); var pname = Console.ReadLine(); var gperson = db.Person.Where(p => p.Name.Equals(pname)).FirstOrDefault(); selectspecific.selectTableIns(nyrest); Console.WriteLine("Vælg bord id:"); int tableid = int.Parse(Console.ReadLine()); var table = db.TableIns.Where(t => t.TableId == tableid).FirstOrDefault(); select.SelectRestaurantMenu2(nyrest.Address); var guest = new Guest() { Reservation = DateTime.Now }; var dishes = new List <Dish>(); do { Console.WriteLine("Skriv navn på valgte ret"); var dishName = Console.ReadLine(); dishes.Add(selectspecific.selectADishAtRestaurant(ref nyrest, dishName)); Console.WriteLine("Vil du tilføje endnu en ret? Skriv (j) for ja; (n) for nej."); } while (Console.ReadLine().Equals("j")); Console.WriteLine("Skrive review tekst"); var text = Console.ReadLine(); Console.WriteLine("Skriv tal for antal stjerner (1-6)"); int stars = int.Parse(Console.ReadLine()); var review = new Review() { Text = text, Stars = stars }; create.addReview(ref review, ref nyrest); create.addGuest(ref guest, ref gperson, ref table, ref review); foreach (var dish in dishes) { var dish_ = dish; create.addDishToGuest(ref dish_, ref guest); } Console.WriteLine("Tryk enter for at forsætte"); Console.ReadLine(); adminMenu = "mainMenu"; break; case "showGuest": try { selectAll.SelectAllGuestFromRestaurant(nyrest.Address); Console.WriteLine("Skriv id for gæst"); int guestID = int.Parse(Console.ReadLine()); selectspecific.selectAGuest(guestID); } catch (Exception) { Console.WriteLine("Fejlede Indlæser guest"); Console.WriteLine("Tryk enter for at forsætte"); Console.ReadLine(); } Console.WriteLine("Tryk enter for at forsætte"); Console.ReadLine(); adminMenu = "mainMenu"; break; case "ShowAllGuestsAtRestaurant": try { select.getReviewsBasedOnTable(nyrest.Address); } catch (Exception) { Console.WriteLine("Fejlede Indlæser guest"); Console.WriteLine("Tryk enter for at forsætte"); Console.ReadLine(); } Console.WriteLine("Tryk enter for at forsætte"); Console.ReadLine(); adminMenu = "mainMenu"; break; } break; default: Console.WriteLine("Forkert indtastning"); Console.WriteLine("Tryk enter for at forsætte"); Console.ReadLine(); break; } break; default: Console.WriteLine("Forkert indtastning"); menu = "mainMenu"; Console.WriteLine("Tryk enter for at forsætte"); Console.ReadLine(); break; } } }