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