Ejemplo n.º 1
0
        private void ExecuteSearchShooterCommand(string obj)
        {
            int shooterNumber;

            if (int.TryParse(obj, out shooterNumber))
            {
                Shooter shooter = _shooterDatastore.FindByShooterNumber(shooterNumber);
                if (shooter != null)
                {
                    if (shooter.PersonId != null)
                    {
                        UiShooter uiShooter = UiBusinessObjectMapper.ToUiShooter(shooter).FetchPerson(_personDatastore.FindById((int)shooter.PersonId));
                        CurrentShooterLabel = string.Format("{0} {1} ({2})", uiShooter.LastName, uiShooter.FirstName, uiShooter.ShooterNumber);
                    }
                    int shooterId            = shooter.ShooterId;
                    List <UiSession> session = _sessionDatastore.FindByShooterId(shooterId).Select(UiBusinessObjectMapper.ToUiSession).ToList();
                    session.ForEach(_ =>
                    {
                        if (_.ProgramItemId != null)
                        {
                            _.ProgramDescription = string.Format("{0}",
                                                                 _programItemDatastore.FindById((int)_.ProgramItemId).ProgramName);
                        }
                    });

                    UiSessions        = new ObservableCollection <UiSession>(session);
                    SelectedUiSession = UiSessions.FirstOrDefault();
                }
            }
        }
Ejemplo n.º 2
0
        private void RegisterDeleteShooterDialog(IShooterDataStore shooterDataStore)
        {
            _messenger.Register <DeleteShooterDialogMessage>(this,
                                                             x =>
            {
                YesNoMessageBoxViewModel vm = new YesNoMessageBoxViewModel
                {
                    DefaultYes = false,
                    Caption    = "Schütze löschen?",
                    Message    =
                        string.Format("Möchtest du den Schützen '{0}' wirklich löschen?",
                                      x.ShooterNumber)
                };

                IWindow w   = _vs.ExecuteFunction <YesNoMessageBoxViewModel, IWindow>((IWindow)Current.MainWindow, vm);
                bool?result = w.ShowDialog();
                if (!result.HasValue || !result.Value)
                {
                    return;
                }

                Shooter shooter = shooterDataStore.FindByShooterNumber(x.ShooterNumber);
                shooterDataStore.Delete(shooter);
                _messenger.Send(new RefreshDataFromRepositoriesMessage());
            });
        }
Ejemplo n.º 3
0
        private void ShootingRangeOnPrch(object sender, PrchEventArgs e)
        {
            Shooter shooter = _shooterDataStore.FindByShooterNumber(e.ShooterNumber);

            if (shooter == null)
            {
                LogMessage(string.Format("ShooterNumber {0} not available. Creating shooter...", e.ShooterNumber));
                shooter = CreateUnknownShooter(e.ShooterNumber);
            }

            if (_sessionsOngoing.ContainsKey(e.LaneNumber))
            {
                _sessionsOngoing.Remove(e.LaneNumber);
            }

            _sessionsAwaitingProgramNumber.Add(e.LaneNumber,
                                               new Session
            {
                LaneNumber = e.LaneNumber,
                ShooterId  = shooter.ShooterId,
            });
        }
Ejemplo n.º 4
0
        private void RegisterDeleteShooterDialog(IShooterDataStore shooterDataStore)
        {
            _messenger.Register<DeleteShooterDialogMessage>(this,
                x =>
                {
                    YesNoMessageBoxViewModel vm = new YesNoMessageBoxViewModel
                    {
                        DefaultYes = false,
                        Caption = "Schütze löschen?",
                        Message =
                            string.Format("Möchtest du den Schützen '{0}' wirklich löschen?",
                                x.ShooterNumber)
                    };

                    IWindow w = _vs.ExecuteFunction<YesNoMessageBoxViewModel, IWindow>((IWindow) Current.MainWindow, vm);
                    bool? result = w.ShowDialog();
                    if (!result.HasValue || !result.Value) return;

                    Shooter shooter = shooterDataStore.FindByShooterNumber(x.ShooterNumber);
                    shooterDataStore.Delete(shooter);
                    _messenger.Send(new RefreshDataFromRepositoriesMessage());
                });
        }