public async Task <IActionResult> List(int?id) { var vm = new BudgetListViewModel(); var user = await _userManager.GetUserAsync(HttpContext.User); var userID = _userManager.GetUserId(User); IEnumerable <Budget> budgets = _budgetRepo.GetAll(userID); if (id != null) { vm.Budgets = budgets; vm.Budget = _budgetRepo.Get((int)id); vm.Expenses = _budgetRepo.GetExpenses((int)id); return(View(vm)); } var budget = _budgetRepo.GetAll(userID).FirstOrDefault(); if (budget != null) { vm.Budget = budget; vm.Expenses = _budgetRepo.GetExpenses(budget.Id); vm.Budgets = budgets; return(View(vm)); } return(View(vm)); }
public ActionResult ListAll(string errorMessage, bool showAll = false) { var model = new BudgetListViewModel(userManager.GetRoles(User.Identity.GetUserId())); IEnumerable <Budget> budgets = null; if (showAll) { model.Error = errorMessage; budgets = budgetRepository.Where(b => b.Client.IsActive).OrderBy(b => b.IsHandled).ThenBy(b => b.Month).ToList(); } else { var currentUserId = User.Identity.GetUserId(); model.Error = errorMessage; budgets = budgetRepository.Where(b => b.Client.IsActive && (b.Client.AccountManagerId == currentUserId || b.Client.ConsultantId == currentUserId)).OrderBy(b => b.IsHandled).ThenBy(b => b.Month).ToList(); } foreach (var budget in budgets) { var budgetViewModel = new BudgetViewModel(budget); model.Budgets.Add(budgetViewModel); } if (User.IsInRole("consultant")) { model.CanMarkBudgetAsDone = true; } else { model.CanMarkBudgetAsDone = false; } return(View(model)); }
public virtual ActionResult Index() { var budgets = ProjectionManager.GetBudgetsList().GetBudgetsUserCanView(GetCurrentUserId()); var model = new BudgetListViewModel(budgets); return(View(model)); }