コード例 #1
0
        public BanenPageViewModel(IBaanRepository baanRepository, IVerenigingRepository verenigingRepository, IReserveringRepository reserveringRepository, INavigationService navigationService,
                                  /* IReserveringUserControlViewModel reserveringUserControlViewModel, */
                                  IResourceLoader resourceLoader, IAlertMessageService alertMessageService, IEventAggregator eventAggregator)
        {
            _baanRepository        = baanRepository;
            _verenigingRepository  = verenigingRepository;
            _reserveringRepository = reserveringRepository;
            _navigationService     = navigationService;
            //_reserveringUserControlViewModel = reserveringUserControlViewModel;
            _resourceLoader      = resourceLoader;
            _alertMessageService = alertMessageService;
            _eventAggregator     = eventAggregator;

            GoBackCommand = new DelegateCommand(_navigationService.GoBack);
            GoNextCommand = new DelegateCommand(GoNext);

            if (_eventAggregator != null)
            {
                //_eventAggregator.GetEvent<ReserveringUpdatedEvent>().Subscribe(UpdateBanenAsync);
                //_eventAggregator.GetEvent<SpelerUpdatedEvent>().Subscribe(UpdateBanenAsync);
                _eventAggregator.GetEvent <BaanUpdatedEvent>().Subscribe(UpdateBanenAsync);
            }

            //WijzigBaanCommand = DelegateCommand.FromAsyncHandler(BaanWijzigen);

            UpdateBanenAsync(null);
        }
コード例 #2
0
        public ReserveringUserControlViewModel(IReserveringRepository reserveringRepository, IBaanRepository baanRepository, ISpelerRepository spelerRepository, IVerenigingRepository verenigingRepository, INavigationService navigationService,
                                               IResourceLoader resourceLoader, IAlertMessageService alertMessageService,
                                               IEventAggregator eventAggregator)
        {
            _reserveringRepository = reserveringRepository;
            _baanRepository        = baanRepository;
            _spelerRepository      = spelerRepository;
            _verenigingRepository  = verenigingRepository;
            _navigationService     = navigationService;
            _resourceLoader        = resourceLoader;
            _alertMessageService   = alertMessageService;
            _eventAggregator       = eventAggregator;

            BevestigenCommand  = new DelegateCommand(ReserveringBevestigen);
            AnnulerenCommand   = new DelegateCommand(ReserveringAnnuleren);
            VerwijderenCommand = new DelegateCommand(ReserveringVerwijderen);

            WijzigSpelersCommand = DelegateCommand.FromAsyncHandler(SpelersWijzigen);
            WijzigBaanCommand    = DelegateCommand.FromAsyncHandler(BaanWijzigen);

            if (_eventAggregator != null)
            {
                _eventAggregator.GetEvent <ReserveringUpdatedEvent>().Subscribe(UpdateReserveringAsync);
                _eventAggregator.GetEvent <SpelerUpdatedEvent>().Subscribe(UpdateReserveringAsync);
                _eventAggregator.GetEvent <BaanUpdatedEvent>().Subscribe(UpdateReserveringAsync);
            }

            UpdateReserveringAsync(null);
        }
コード例 #3
0
        public ReserveringViewModel(Reservering reservering, IBaanRepository baanRepository, ISpelerRepository spelerRepository, IReserveringRepository reserveringRepository, IVerenigingRepository verenigingRepository, INavigationService navigationService,
                                    IResourceLoader resourceLoader, IAlertMessageService alertMessageService,
                                    IEventAggregator eventAggregator)
        {
            _baanRepository        = baanRepository;
            _spelerRepository      = spelerRepository;
            _reserveringRepository = reserveringRepository;
            _verenigingRepository  = verenigingRepository;
            _navigationService     = navigationService;
            _resourceLoader        = resourceLoader;
            _alertMessageService   = alertMessageService;
            _eventAggregator       = eventAggregator;


            if (reservering == null)
            {
                throw new ArgumentNullException("Reservering", "reservering cannot be null");
            }

            _reservering = reservering;

            Spelers = new ObservableCollection <Speler>();

            Speler emptySpeler = new Speler {
                Id = Guid.Empty
            };

            for (int i = 0; i < 4; i++)
            {
                Speler speler = emptySpeler;
                try
                {
                    if (_reservering.Spelers.Count >= i + 1)
                    {
                        speler = _reservering.Spelers[i];
                    }
                }
                catch
                {
                    speler = emptySpeler;
                }

                //var spelerViewModel = new SpelerUserControlViewModel(i,speler, _spelerRepository, _reserveringRepository, _verenigingRepository, _navigationService, _resourceLoader, _alertMessageService, _eventAggregator);
                //SpelerViewModels.Insert(i, spelerViewModel);
                //SpelerViewModels[i] = spelerViewModel;
                //OnPropertyChanged("Spelers");
                Spelers.Insert(i, speler);
            }

            /*
             * SpelerViewModels = new ObservableCollection<SpelerViewModel>();
             *
             * foreach (Speler speler in reservering.Spelers)
             * {
             *  SpelerViewModels.Add(new SpelerViewModel(speler, _spelerRepository, _reserveringRepository, _navigationService, _resourceLoader, _alertMessageService, _eventAggregator));
             * }
             */
            BaanViewModel = new BaanUserControlViewModel(reservering.Baan, _baanRepository, _reserveringRepository, _verenigingRepository, _navigationService, _resourceLoader, _alertMessageService, _eventAggregator);
        }
コード例 #4
0
        public ReserveringRepository(IReserveringService reserveringService, IVerenigingRepository verenigingRepository, ISpelerRepository spelerRepository, IBaanRepository baanRepository, IEventAggregator eventAggregator, ISessionStateService sessionStateService)
        {
            _reserveringService   = reserveringService;
            _eventAggregator      = eventAggregator;
            _sessionStateService  = sessionStateService;
            _verenigingRepository = verenigingRepository;
            _spelerRepository     = spelerRepository;
            _baanRepository       = baanRepository;

            if (_sessionStateService != null && _sessionStateService.SessionState.ContainsKey(ReserveringIdKey))
            {
                _reserveringId = Guid.Parse(_sessionStateService.SessionState[ReserveringIdKey].ToString());
            }
            else
            {
                _reserveringId = Guid.Empty;
                _sessionStateService.SessionState[ReserveringIdKey] = _reserveringId;
            }
        }
コード例 #5
0
        public ReserveringPageViewModel(IReserveringRepository reserveringRepository, IBaanRepository baanRepository, ISpelerRepository spelerRepository, IVerenigingRepository verenigingRepository, INavigationService navigationService,
                                        IResourceLoader resourceLoader, IAlertMessageService alertMessageService,
                                        IEventAggregator eventAggregator)
        {
            _reserveringRepository = reserveringRepository;
            _baanRepository        = baanRepository;
            _spelerRepository      = spelerRepository;
            _verenigingRepository  = verenigingRepository;
            _navigationService     = navigationService;
            _resourceLoader        = resourceLoader;
            _alertMessageService   = alertMessageService;
            _eventAggregator       = eventAggregator;

            BevestigenCommand  = new DelegateCommand <Nullable <Guid> >(ReserveringBevestigen);
            AnnulerenCommand   = new DelegateCommand(ReserveringAnnuleren);
            VerwijderenCommand = new DelegateCommand <Nullable <Guid> >(ReserveringVerwijderen);

            if (eventAggregator != null)
            {
                eventAggregator.GetEvent <ReserveringUpdatedEvent>().Subscribe(UpdateReserveringAsync);
            }

            UpdateReserveringAsync(null);
        }
コード例 #6
0
        public BaanUserControlViewModel(Baan baan, IBaanRepository baanRepository, IReserveringRepository reserveringRepository, IVerenigingRepository verenigingRepository, INavigationService navigationService,
                                        IResourceLoader resourceLoader, IAlertMessageService alertMessageService, IEventAggregator eventAggregator)
        {
            if (baan == null)
            {
                throw new ArgumentNullException("Baan", "baan cannot be null");
            }

            _baan                  = baan;
            _baanRepository        = baanRepository;
            _reserveringRepository = reserveringRepository;
            _verenigingRepository  = verenigingRepository;
            _navigationService     = navigationService;
            _resourceLoader        = resourceLoader;
            _alertMessageService   = alertMessageService;
            _eventAggregator       = eventAggregator;


            BaanNavigationCommand  = new DelegateCommand(NavigateToBanen);
            SelecterenBaanCommand  = new DelegateCommand(SelecteerBaan);
            VerwijderenBaanCommand = new DelegateCommand(VerwijderBaan);

            UpdateBaanAsync(baan);
        }