public ActionResult Index() { List <DashboardViewModel> dashboardItems = new List <DashboardViewModel>(); List <DashboardViewModel> items = new List <DashboardViewModel>(); var viewModel = new DashboardViewModels(); SupportService supportService = new SupportService(); TimeSheetService timesheetService = new TimeSheetService(); ExpenseService expenseService = new ExpenseService(); LOAService loaService = new LOAService(); var roles = ((ClaimsIdentity)User.Identity).Claims .Where(c => c.Type == ClaimTypes.Role) .Select(c => c.Value); if (roles.Contains("TimeSheetAdmin")) { viewModel.AdminPendingExpensesCount = expenseService.GetPendingExpensesCount(); viewModel.AdminPendingLOAsCount = loaService.GetPendingLOAsCount(); viewModel.AdminPendingTimesheetsCount = timesheetService.GetPendingTimesheetsCount(); // viewModel.DasboardList.AddRange(ExpenseModuleAdmin()); } else if (roles.Contains("TimeSheetManager")) { viewModel.ManagerPendingTimesheetsCount = timesheetService.GetPendingTimesheetsCount(); viewModel.MangerPendingExpensesCount = expenseService.GetPendingExpensesCount(); viewModel.MangerPendingLOAsCount = loaService.GetPendingLOAsCount(); // viewModel.DasboardList.AddRange(TimeSheetModuleManager()); // viewModel.DasboardList.AddRange(LOAModuleManager()); // items.AddRange(ExpenseModuleManager()); } if (roles.Contains("TimeSheetReportingManager")) { viewModel.ReportingManagerPendingExpensesCount = expenseService.GetPendingExpensesCount(User.Identity.GetUserId()); viewModel.ReportingManagerPendingLOAsCount = loaService.GetPendingLOAsCount(User.Identity.GetUserId()); viewModel.ReportingManagerPendingTimesheetsCount = timesheetService.GetPendingTimesheetsCount(User.Identity.GetUserId()); // viewModel.DasboardList.AddRange(TimeSheetModuleReportingManager()); // viewModel.DasboardList.AddRange(LOAModuleReportingManager()); // viewModel.DasboardList.AddRange(ExpenseModuleReportingManager()); } if (roles.Contains("SupportUser")) { //viewModel.DasboardList.AddRange(SupportModuleUserPendingRequest()); //viewModel.DasboardList.AddRange(SupportModuleUserDoneRequest()); //viewModel.DasboardList.AddRange(SupportModuleUserClosedRequest()); viewModel.MyPendingRequestsCount = supportService.GetMyPendingRequestsCount(User.Identity.GetUserId()); viewModel.MyClosedRequestsCount = supportService.GetMyClosedRequestsCount(User.Identity.GetUserId()); viewModel.MyDoneRequestsCount = supportService.GetMyDoneRequestsCount(User.Identity.GetUserId()); } //viewModel.DasboardList.AddRange(items); //dashboardItems.AddRange(items); return(View(viewModel)); }