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); }
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); }
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()); }