コード例 #1
0
        public TeleportHomeViewModel(IDispatcherService dispatcherService, string functionTag, IDialogService dialogService,
                                     ScoreInfoService scoreInfoService, HomePositionService homePositionService, TeleRecordService teleRecordService)
            : base(dispatcherService, functionTag)
        {
            _dialogService       = dialogService;
            _scoreInfoService    = scoreInfoService;
            _homePositionService = homePositionService;
            _teleRecordService   = teleRecordService;

            DataGridItemChanged = new RelayCommand <DataGridItemChangedEventArgs>(OnDataGridItemChanged);

            RefreshList = new RelayCommand(PrivateRefreshList);

            RemoveItem = new RelayCommand(() =>
            {
                if (_dialogService.ShowOKCancel("确定删除选中数据吗?"))
                {
                    _ = _homePositionService.RemoveAsync(SelectedItem);
                    HomePositions.Remove(SelectedItem);
                }
            }, () => { return(SelectedItem != null); });

            RemoveAll = new RelayCommand(() =>
            {
                if (_dialogService.ShowOKCancel("确定删除所有数据吗?"))
                {
                    _             = _homePositionService.RemoveAllAsync();
                    HomePositions = null;
                }
            }, () => { return(HomePositions != null); });

            AddAvailableVariables();

            PrivateRefreshList();
        }
コード例 #2
0
        public GameStoreViewModel(IDispatcherService dispatcherService, string functionTag,
                                  IDialogService dialogService, ScoreInfoService scoreInfoService, GoodsService goodsService) : base(dispatcherService, functionTag)
        {
            _dialogService    = dialogService;
            _scoreInfoService = scoreInfoService;
            _goodsService     = goodsService;

            DataGridItemChanged = new RelayCommand <DataGridItemChangedEventArgs>(OnDataGridItemChanged);

            RefreshList = new RelayCommand(PrivateRefreshList);

            RemoveItem = new RelayCommand(() =>
            {
                if (_dialogService.ShowOKCancel("确定删除选中数据吗?"))
                {
                    _ = _goodsService.RemoveAsync(SelectedItem);
                    GoodsItems.Remove(SelectedItem);
                }
            }, () => { return(SelectedItem != null); });

            RemoveAll = new RelayCommand(() =>
            {
                if (_dialogService.ShowOKCancel("确定删除所有数据吗?"))
                {
                    _          = _goodsService.RemoveAllAsync();
                    GoodsItems = null;
                }
            }, () => { return(GoodsItems != null); });

            AddData = new RelayCommand(() =>
            {
                if (string.IsNullOrEmpty(BuyCmd))
                {
                    _dialogService.ShowInformation("购买命令不能为空");
                    return;
                }
                if (GoodsItems.FirstOrDefault(p => p.BuyCmd == BuyCmd) != null)
                {
                    _dialogService.ShowInformation("购买命令重复");
                    return;
                }

                var dto = new GoodsDto()
                {
                    GoodsName = GoodsName,
                    BuyCmd    = BuyCmd,
                    Content   = Content,
                    Amount    = Amount,
                    Quality   = Quality,
                    Price     = Price,
                    GoodsType = GoodsType
                };
                _ = _goodsService.AddAsync(dto);
                GoodsItems.Add(dto);
            });

            AddAvailableVariables();

            PrivateRefreshList();
        }
コード例 #3
0
        public TeleportCityViewModel(IDispatcherService dispatcherService, string functionTag, IDialogService dialogService,
                                     ScoreInfoService scoreInfoService, CityPositionService cityPositionService, TeleRecordService teleRecordService)
            : base(dispatcherService, functionTag)
        {
            _dialogService       = dialogService;
            _scoreInfoService    = scoreInfoService;
            _cityPositionService = cityPositionService;
            _teleRecordService   = teleRecordService;

            DataGridItemChanged = new RelayCommand <DataGridItemChangedEventArgs>(OnDataGridItemChanged);

            RefreshList = new RelayCommand(PrivateRefreshList);

            RemoveItem = new RelayCommand(() =>
            {
                if (_dialogService.ShowOKCancel("确定删除选中数据吗?"))
                {
                    _ = _cityPositionService.RemoveAsync(SelectedItem);
                    CityPositions.Remove(SelectedItem);
                }
            }, () => { return(SelectedItem != null); });

            RemoveAll = new RelayCommand(() =>
            {
                if (_dialogService.ShowOKCancel("确定删除所有数据吗?"))
                {
                    _             = _cityPositionService.RemoveAllAsync();
                    CityPositions = null;
                }
            }, () => { return(CityPositions != null); });

            AddData = new RelayCommand(() =>
            {
                if (string.IsNullOrEmpty(TeleCmd))
                {
                    _dialogService.ShowInformation("传送命令不能为空");
                    return;
                }
                if (CityPositions.FirstOrDefault(p => p.TeleCmd == TeleCmd) != null)
                {
                    _dialogService.ShowInformation("传送命令重复");
                    return;
                }

                var cityPosition = new CityPositionDto()
                {
                    CityName      = CityName,
                    TeleCmd       = TeleCmd,
                    TeleNeedScore = TeleNeedScore,
                    Pos           = Pos
                };
                _ = _cityPositionService.AddAsync(cityPosition);
                CityPositions.Add(cityPosition);
            });

            AddAvailableVariables();

            PrivateRefreshList();
        }
コード例 #4
0
        public ScoreSystemViewModel(IDispatcherService dispatcherService, string functionTag, IDialogService dialogService, ScoreInfoService scoreInfoService)
            : base(dispatcherService, functionTag)
        {
            _dialogService = dialogService;

            _scoreInfoService = scoreInfoService;

            DataGridItemChanged = new RelayCommand <DataGridItemChangedEventArgs>(OnDataGridItemChanged);

            RefreshList = new RelayCommand(PrivateRefreshList);

            SearchPlayer = new RelayCommand(() =>
            {
                if (ComboBoxSelectedIndex == 0)
                {
                    SelectedItem = ScoreInfos.FirstOrDefault(p => p.PlayerName == SearchText);
                }
                else if (ComboBoxSelectedIndex == 1)
                {
                    SelectedItem = ScoreInfos.FirstOrDefault(p => p.SteamID == SearchText);
                }

                if (SelectedItem == null)
                {
                    _dialogService.ShowInformation("没有找到此玩家");
                }
            }, CanExecuteCmd_ListNotNull);

            RemoveItem = new RelayCommand(() =>
            {
                if (_dialogService.ShowOKCancel("确定删除选中数据吗?"))
                {
                    _ = _scoreInfoService.RemoveAsync(SelectedItem);
                    ScoreInfos.Remove(SelectedItem);
                }
            }, () => { return(SelectedItem != null); });

            ResetLastSignDate = new RelayCommand(async() =>
            {
                if (_dialogService.ShowOKCancel("确定重置所有签到天数吗?"))
                {
                    await _scoreInfoService.ResetLastSignDateAsync();
                    PrivateRefreshList();
                }
            }, CanExecuteCmd_ListNotNull);

            RemoveAllScoreInfo = new RelayCommand(() =>
            {
                if (_dialogService.ShowOKCancel("确定删除所有数据吗?"))
                {
                    _          = _scoreInfoService.RemoveAllAsync();
                    ScoreInfos = null;
                }
            }, CanExecuteCmd_ListNotNull);

            PrivateRefreshList();

            AddAvailableVariables();
        }
コード例 #5
0
        public LotterySystemViewModel(IDispatcherService dispatcherService, string functionTag,
                                      IDialogService dialogService, ScoreInfoService scoreInfoService, LotteryService lotteryService) : base(dispatcherService, functionTag)
        {
            _dialogService    = dialogService;
            _scoreInfoService = scoreInfoService;
            _lotteryService   = lotteryService;

            Timer1 = new Timer()
            {
                AutoReset = true, Interval = LotteryInterval * 1000
            };
            Timer1.Elapsed += OnStartLottery;

            _currentViewModelObserver = new PropertyObserver <LotterySystemViewModel>(this);
            _currentViewModelObserver.RegisterHandler(currentViewModel => currentViewModel.LotteryInterval,
                                                      (vm) =>
            {
                if (LotteryInterval > 0)
                {
                    Timer1.Interval = LotteryInterval * 1000;
                    Timer1.Enabled  = true;
                }
            });

            DataGridItemChanged = new RelayCommand <DataGridItemChangedEventArgs>(OnDataGridItemChanged);

            RefreshList = new RelayCommand(PrivateRefreshList);

            RemoveItem = new RelayCommand(() =>
            {
                if (_dialogService.ShowOKCancel("确定删除选中数据吗?"))
                {
                    _ = _lotteryService.RemoveAsync(SelectedItem);
                    LotteryItems.Remove(SelectedItem);
                }
            }, () => { return(SelectedItem != null); });

            RemoveAll = new RelayCommand(() =>
            {
                if (_dialogService.ShowOKCancel("确定删除所有数据吗?"))
                {
                    _            = _lotteryService.RemoveAllAsync();
                    LotteryItems = null;
                }
            }, () => { return(LotteryItems != null); });

            AddData = new RelayCommand(() =>
            {
                var dto = new LotteryDto()
                {
                    LotteryName = LotteryName,
                    Content     = Content,
                    Amount      = Amount,
                    Quality     = Quality,
                    LotteryType = LotteryType
                };
                _ = _lotteryService.AddAsync(dto);
                LotteryItems.Add(dto);
            });

            AddAvailableVariables();

            PrivateRefreshList();
        }