Beispiel #1
0
        private async void Initialize()
        {
            _progressService.ShowProgress(ProgressKeys.InitializingApplication);
            _isInitializing = true;
            _refreshCommand.RaiseCanExecuteChanged();

            ExpenseCollections = await _expenseRepository.GetCollections();

            ActiveCollection = ExpenseCollections.FirstOrDefault();
            RaisePropertyChanged(() => TotalExpenseAmount);

            _isInitializing = false;
            _refreshCommand.RaiseCanExecuteChanged();
            _progressService.HideProgress(ProgressKeys.InitializingApplication);
        }
Beispiel #2
0
        private async void RemoveExpenseCollection(ExpenseCollectionModel model)
        {
            if (model == ActiveCollection)
            {
                var index = ExpenseCollections.IndexOf(ActiveCollection);
                if (index == 0)
                {
                    ActiveCollection = ExpenseCollections[1];
                }
                else
                {
                    ActiveCollection = ExpenseCollections[--index];
                }
            }
            await _expenseRepository.Delete(model);

            RaisePropertyChanged(() => TotalExpenseAmount);
            Messenger.Default.Send(Messages.ExpenseChanged);
        }
Beispiel #3
0
        public ObservableCollection <Expense> GetExpenses(int month, int year)
        {
            var            dbType = Factory.GetFactory("expense" + dbOrFile.Type);
            List <Expense> exp    = new List <Expense>();
            List <object>  list   = new List <object>(dbType.GetByFilter(month, year));

            foreach (var o in list)
            {
                exp.Add((Expense)o);
            }
            List <Expense>     expenses           = new List <Expense>();
            ExpenseCollections expenseCollections = new ExpenseCollections();
            Percent            percent            = new Percent();

            foreach (var expense in exp)
            {
                expense.Percent = Math.Round(percent.CalcPercent(expense.Amount, exp), 3);
                expenses.Add(expense);
            }

            expenseCollections.Add(expenses);

            return(expenseCollections.GetExpenses());
        }