public ClientHallViewModel(User user, Reservation reservation = null, FastObservableCollection <OrderedDish> orderedDishes = null)
        {
            _user          = user;
            _orderedDishes = orderedDishes;
            _reservation   = new Reservation();
            _rootViewModel = ViewModelManager.GetFirstOrDefaultInstance <MainWindowViewModel>();

            _availabilityChecker = new TablesAvailabilityChecker(Tables);

            BackCommand             = new Command(OnBackCommandExecute);
            NextCommand             = new Command(OnNextCommandExecute, OnNextCommandCanExecute);
            TimeValuChangedCommand  = new Command(OnTimeValuChangedCommandExecute);
            DateValueChangedCommand = new Command(OnDateValueChangedCommandExecute);
            TableSelectionChanged   = new Command(OnTableSelectionChangedExecute);

            DateMinMaxHelper helper = new DateMinMaxHelper();

            MinimumDate = helper.Minimum;
            MaximumDate = helper.Maximum;

            RefreshTablesCollection();
            ReservationsListRefresh();

            if (reservation != null)
            {
                SetViewModelProperties(reservation);
            }
        }
Beispiel #2
0
        private void OnTableSelectionChangedCommandExecute()
        {
            TableReservations.Clear();
            if (SelectedItemTable != null)
            {
                var tableChecker = new TablesAvailabilityChecker(Tables);
                var reservations = tableChecker.GetTodayReservationsForTable(SelectedItemTable.Number);

                foreach (var reserv in reservations)
                {
                    TableReservations.Add(reserv);
                }
            }
        }