Esempio n. 1
0
        public static void removeById(LiteDatabaseContext _context, string id)
        {
            Reservation reservation = _context.Reservations.SingleOrDefault(e => e.ReservationId == id);

            _context.Reservations.Remove(reservation);
            _context.SaveChanges();
        }
Esempio n. 2
0
        public IActionResult ConfirmReservation(ReservationViewModel reservation)
        {
            if (!ModelState.IsValid)
            {
                return(RedirectToAction("Error"));
            }
            TimeSlot slot = new TimeSlot();

            slot.FullDate = reservation.ReservationDate;
            //Ensure reservation is still available
            if (ReservationLogic.isAvailable(_context, reservation.GuestAmount, ReservationLogic.getTableCount(_context), slot))
            {
                //Convert out viewmodel to entity model
                Reservation EntityReservation = new Reservation();
                EntityReservation.ReservationId   = Guid.NewGuid().ToString();
                EntityReservation.BookingUser     = reservation.User;
                EntityReservation.GuestAmount     = reservation.GuestAmount;
                EntityReservation.ReservationTime = reservation.ReservationDate;
                EntityReservation.Menu            = reservation.Menu;
                EntityReservation.Drink           = reservation.Drink;

                List <Table> desiredTables = ReservationLogic.reserveTables(_context, reservation.GuestAmount, slot);
                foreach (Table table in desiredTables)
                {
                    TableReservation tableReservation = new TableReservation();
                    tableReservation.Reservation   = EntityReservation;
                    tableReservation.ReservationId = EntityReservation.ReservationId;
                    tableReservation.Table         = table;
                    tableReservation.TableId       = table.TableId;
                    EntityReservation.TableReservations.Add(tableReservation);
                }

                //Save entity to db
                _context.Add(EntityReservation);
                _context.SaveChanges();
                return(View());
            }
            else
            {
                return(RedirectToAction("Error"));
            }
        }