public void CreateExpense(User user, string comment, decimal amount, Category category, DateTime date)
 {
     if (CanCreateExpense(user, amount))
     {
         Expense expense = new Expense(user, comment, amount, category, date);
         Factory.GetFactory().GetExpensesRepository().RegisterExpense(expense);
     }
 }
Пример #2
0
 public Expense(User user, string comment, decimal amount, Category category, DateTime date)
 {
     Comment = comment;
     Amount = amount;
     User = user;
     Category = category;
     Date = date;
     User.WithdrawCash(amount);
 }
        public List<Expense> GetMonthExpenses(int month, Category category)
        {
            List<Expense> expenses = GetCategoryExpenses(category);

            List<Expense> monthExpenses = new List<Expense>();

            foreach (Expense expense in expenses)
            {
                if (expense.Date.Month == month)
                    monthExpenses.Add(expense);
            }

            return monthExpenses;
        }
        public List<Expense> GetCategoryExpenses(Category category)
        {
            List<Expense> expenses = Factory.GetFactory().GetExpensesRepository().GetAllExpenses();
            List<Expense> filtered = new List<Expense>();

            if (expenses.Count > 0)
            {
                foreach (Expense expense in expenses)
                {
                    if (expense.Category.Name.Equals(category.Name))
                        filtered.Add(expense);
                }
            }

            return filtered;
        }