public ActionResult MoneyBack()
 {
     wallet.Rollback(account);
     account.Clear();
     data = new VmData(drinks, account, money, wallet, userDrinks);
     return(View("Index", data));
 }
Beispiel #2
0
        private void DeleteToCollection(DeleteModeArgs obj)
        {
            ViewState.ViewMode.Push(FormMode.DELETEMODE);
            if (obj.ViewName == m_modelName)
            {
                //On delete we need to save collection

                SaveToCollection(new SaveModeArgs {
                    ViewName = obj.ViewName, FormState = FormMode.DELETEMODE
                });

                VmData.Remove(SelectedItem);

                bool isEmpty = !_vmData.Any();



                ViewState.CurrentVmOperation = FormMode.DELETEMODE;
                ViewState.HasPendingCommits  = repository.HasPendingCommits();
                ViewState.HasNoRecords       = true;

                var msg             = new VmOnDelete();
                var eventAggregator = ServiceLocator.Current.GetInstance <IEventAggregator>();
                eventAggregator.GetEvent <VmOnDeleteEvent>().Publish(msg);
            }
        }
 private void RecordMoveFirstEventHandler(RecordMoveFirst obj)
 {
     if (VmData != null)
     {
         VmData.MoveFirst();
         SelectedItem = VmData.CurrentItem();
     }
 }
Beispiel #4
0
        protected virtual void OnSaveEventHandler(VmOnSave obj)
        {
            var data = obj.GetRow <T>();

            VmData.Add(data);
            SaveToRepository(obj);
            ViewState.HasPendingCommits = true;
        }
 private void RecordMovePreviousEventHandler(RecordMovePrevious obj)
 {
     if (VmData != null)
     {
         VmData.MovePrevious();
         SelectedItem = VmData.CurrentItem();
     }
 }
        protected virtual void SaveCollection(SaveModeArgs obj)
        {
            obj.SetRow(_selectedItem);
            if (ViewService.ViewMode.Peek() == FormMode.SAVED)
            {
                var mode = ViewService.ViewMode.Pop();
                if (mode == FormMode.ADDMODE)
                {
                    AddToCollection(null);
                }
                //if we save then add

                return;
            }
            ValidationResult validation = ValidateVm();

            if (validation.IsValid)
            {
                if (!DataStoreContainsDuplicates(obj))
                {
                    if (ViewService.ViewMode.Peek() == FormMode.VALIDATION)
                    {
                        ViewService.ViewMode.Pop();
                    }
                    IsReadOnly = true;
                    VmData.Add(_selectedItem);
                    DoSave(obj);
                    //drop wip and then add saved

                    if (ViewService.ViewMode.Peek() == FormMode.SAVED)
                    {
                        ViewService.ViewMode.Pop();
                        ViewService.IsDirty = true;
                    }

                    if (ViewService.ViewMode.Peek() == FormMode.WIP)
                    {
                        ViewService.ViewMode.Pop();
                    }
                }

                else
                {
                    if (ViewService.ViewMode.Peek() != FormMode.WIP)
                    {
                        SendMessageBox("Duplicate Error Warning", "Duplicates not allowed");
                    }
                    IsReadOnly = false;
                }
            }
            else
            {
                var msg = new ValidationArgs();
                msg.Validation = validation.ErrorList;
                eventAggregator.GetEvent <ValidationArgsEvent>().Publish(msg);
            }
        }
 public ActionResult Index()
 {
     wallet     = new UserWallet();
     account    = new VmAccount();
     drinks     = new VmDrinks();
     money      = new VmMoney();
     userDrinks = new UserDrinks();
     data       = new VmData(drinks, account, money, wallet, userDrinks);
     return(View(data));
 }
 public ActionResult PutCoin(int id)
 {
     // if id = -1 then refresh page without changing 'data'
     // if id >= 0 then it's handler for button clicking
     if (id >= 0)
     {
         if (wallet.quantity[id] > 0)
         {
             wallet.quantity[id]--;
             account.quantity[id]++;
             data = new VmData(drinks, account, money, wallet, userDrinks);
         }
     }
     return(View("Index", data));
 }
 public ActionResult BuyDrink(int id)
 {
     if (drinks.quantity[id] > 0 &&
         drinks.price[id] <= account.Balance())
     {
         int delta = account.Balance() - drinks.price[id];
         money.TakeFromAccount(account);
         account.Clear();
         account.AddBalance(delta, money);
         drinks.quantity[id]--;
         userDrinks.quantity[id]++;
         data            = new VmData(drinks, account, money, wallet, userDrinks);
         ViewBag.Message = "Спасибо!";
         return(View("Index", data));
     }
     return(View());
 }
Beispiel #10
0
 protected override void DeleteItemFromCollection()
 {
     var itemToRemove = VmData.Single(x => x.FullName == SelectedItem.FullName && x.Login == SelectedItem.Login);
     VmData.Remove(itemToRemove);
 }
Beispiel #11
0
 protected override bool VmDataContainsDuplicates()
 {
     return(VmData == null ? false : VmData.Where(c => c.ShippingMethodName == SelectedItem.ShippingMethodName).Any());
 }
Beispiel #12
0
        protected override void DeleteItemFromCollection()
        {
            var itemToRemove = VmData.Single(x => x.ShippingMethodName == SelectedItem.ShippingMethodName && x.Priority == SelectedItem.Priority);

            VmData.Remove(itemToRemove);
        }
Beispiel #13
0
 //public bool KeepAlive
 //{
 //    get { return false; }
 //}
 protected override bool DataStoreContainsDuplicates(SaveModeArgs obj)
 {
     return(VmData.Contains(obj.GetRow <ShippingMethod>()));
 }
Beispiel #14
0
 private void OnDeleteEventHandler(VmOnDelete obj)
 {
     VmData.Remove(obj.GetRow <T>());
     repository.DeleteUncomittedItems(obj.GetRow <T>(), ViewState.ViewMode.Peek());
     ViewState.HasPendingCommits = repository.HasPendingCommits();
 }
 //public bool KeepAlive
 //{
 //    get { return false; }
 //}
 protected override bool DataStoreContainsDuplicates(SaveModeArgs obj)
 {
     return(VmData.Contains(obj.GetRow <UserGroup>()));
 }
        protected override void DeleteItemFromCollection()
        {
            var itemToRemove = VmData.Single(x => x.Name == SelectedItem.Name && x.Description == SelectedItem.Description);

            VmData.Remove(itemToRemove);
        }
Beispiel #17
0
        //protected override void ValidateCollection(NotifyCollectionChangedEventArgs e)
        //{
        //    throw new NotImplementedException();
        //}

        protected override bool DataStoreContainsDuplicates(SaveModeArgs obj)
        {
            return VmData.Any(x => x.Login == obj.GetRow<UserBasicInfo>().Login);
            //return repository.DataStore == null ? false : repository.DataStore.Where(c => c.FullName == SelectedItem.FullName).Any();
        }