示例#1
0
 public bool PlaceOrder(int user, DateTime when, int table, Potrawa dish)
 {
     try
     {
         var potrawa    = db.Potrawy.FirstOrDefault(x => x.Id_potrawy == dish.Id_potrawy);
         var rezerwacje = new Rezerwacje()
         {
             Id_klienta    = user,
             Numer_stolika = table,
             Rezerwacja_od = when,
             Rezerwacja_do = when.AddHours(1),
         };
         db.Rezerwacje.Add(rezerwacje);
         db.Rezerwacje_Potrawy.Add(new Rezerwacje_Potrawy()
         {
             id_zamowienia = rezerwacje.Id_rezerwacji,
             id_potrawy    = potrawa.Id_potrawy
         });
         db.SaveChanges();
     }
     catch (Exception)
     {
         Console.WriteLine("Błąd przy próbie zapisu do bazy");
         return(false);
     }
     return(true);
 }
示例#2
0
        public List <RezerwacjaDto> GetRezerwacjaDtos()
        {
            var result = new List <RezerwacjaDto>();

            foreach (var rez in db.Rezerwacje_Potrawy)
            {
                var potrawa = new Potrawa()
                {
                    Cena       = rez.Potrawy.Cena,
                    Id_potrawy = rez.Potrawy.Id_potrawy,
                    Nazwa      = rez.Potrawy.Nazwa
                };
                result.Add(new RezerwacjaDto()
                {
                    Nazwisko      = rez.Rezerwacje.Klienci.Nazwisko,
                    Id_rezerwacji = rez.id_zamowienia,
                    NumerStolika  = rez.Rezerwacje.Numer_stolika,
                    Potrawa       = potrawa,
                    RezerwacjaOd  = rez.Rezerwacje.Rezerwacja_od
                });
            }
            return(result);
        }
示例#3
0
        public override void Execute()
        {
            Choice     choice;
            string     dateInfo;
            string     tableInfo;
            string     dishesInfo;
            Repository repo = new Repository();

            do
            {
                var date = DatePick();
                reservation = HourPick(date);

                Console.Clear();
                dateInfo = "Data rezerwacji: " + reservation.ToShortDateString() + " w godzinach: " + reservation.ToShortTimeString() + "-" + reservation.AddHours(1).ToShortTimeString();
                Console.WriteLine(dateInfo);
                Console.WriteLine("Zatwierdzić datę rezerwacji?");
                choice = isGood();
                if (choice == Choice.CANCEL)
                {
                    return;
                }
            } while (choice == Choice.NO);
            do
            {
                tableNr = TablePick();
                Console.Clear();
                tableInfo = "Stolik: " + tableNr;
                Console.WriteLine(tableInfo);
                Console.WriteLine("Zatwierdzić wybrany stolik?");
                choice = isGood();
                if (choice == Choice.CANCEL)
                {
                    return;
                }
            } while (choice == Choice.NO);
            do
            {
                dishes     = DishesPick();
                zamowienie = repo.GetPotrawy()[dishes - 1];
                dishesInfo = "Zamówiono " + zamowienie.Nazwa + " " + zamowienie.Cena + "zł";
                Console.WriteLine(dishesInfo + "\nZatwierdzić wybraną potrawę?");
                choice = isGood();
                if (choice == Choice.CANCEL)
                {
                    return;
                }
            } while (choice == Choice.NO);

            Console.Clear();
            Console.WriteLine("Zamówienie:");
            Console.WriteLine(dateInfo);
            Console.WriteLine(tableInfo);
            Console.WriteLine(dishesInfo);
            Console.WriteLine("Zamawiam! [T]-Tak/[A]-Anuluj");
            var key = Pick.ForceProperKey(new List <ConsoleKey> {
                ConsoleKey.T, ConsoleKey.A
            });

            if (key == ConsoleKey.T)
            {
                if (repo.PlaceOrder(userID, reservation, tableNr, zamowienie))
                {
                    Console.Clear();
                    Console.WriteLine("Sukces! Zamówienie złożone!");
                }
                else
                {
                    Console.Clear();
                    Console.WriteLine("Błąd przy składaniu zamówienia");
                }
                Thread.Sleep(2000);
                return;
            }
            else
            {
                return;
            }
        }