public ActionResult Index(TeamEngagementPresenter presenter) { ModelState.Clear(); this.AddBreadcrumbItem(Resources.Assignments, Url.AssignmentsAction()); if (presenter == null) { return null; } presenter.AssignMasterProjects(this.lookupService.RetrieveProjects(null, null, false, false, SessionData.Instance.UserInfo.Developer.DeveloperID)); presenter.AssignSupervisors(this.developerService.RetrieveManagers(null, false, SessionData.Instance.UserInfo.Developer.DeveloperID)); AssignTeamEngagementFilterOptions(presenter); return this.View(presenter); }
/// <summary> /// Assigns the team engagement filter options. /// </summary> /// <param name="presenter">The presenter.</param> private static void AssignTeamEngagementFilterOptions(TeamEngagementPresenter presenter) { if (!string.IsNullOrEmpty(presenter.SelectedSupervisorIds)) { List<string> ids = presenter.SelectedSupervisorIds.Split(CommaSeparatorCharConst).ToList(); presenter.AssignSelectedSupervisors(presenter.Supervisors.Where(supervisor => ids.Contains(supervisor.DeveloperID.ToString(CultureInfo.CurrentCulture))).ToList()); } if (!string.IsNullOrEmpty(presenter.SelectedProjectIds)) { List<string> ids = presenter.SelectedProjectIds.Split(CommaSeparatorCharConst).ToList(); presenter.AssignSelectedProjects(presenter.MasterProjects.Where(project => ids.Contains(project.ProjectID.ToString(CultureInfo.CurrentCulture))).ToList()); } }
/// <summary> /// Function to retrieve index page. /// </summary> /// <param name="projectId">Project Id.</param> /// <param name="includeInactive">The include inactive.</param> /// <returns> /// Index page /// </returns> public ActionResult Index(string projectId, string includeInactive) { var developerList = this.developerService.RetrieveList(SessionData.Instance.UserInfo.Developer.DeveloperID, null, SessionData.Instance.UserInfo.Developer.DeveloperID); if (!SessionUserManager.IsUserHR() && developerList.Count == 0) { return this.Redirect(Url.TeamDashboardAction()); } this.AddBreadcrumbItem(Resources.Assignments, Url.AssignmentsAction()); TeamEngagementPresenter presenter = new TeamEngagementPresenter(); presenter.IsSupervisor = true; if (Convert.ToBoolean(includeInactive, CultureInfo.CurrentCulture)) { presenter.AssignMasterProjects(this.lookupService.RetrieveProjects(null, null, null, null, SessionData.Instance.UserInfo.Developer.DeveloperID)); } else { presenter.AssignMasterProjects(this.lookupService.RetrieveProjects(null, null, false, null, SessionData.Instance.UserInfo.Developer.DeveloperID)); } presenter.AssignSupervisors(this.developerService.RetrieveManagers(null, false, SessionData.Instance.UserInfo.Developer.DeveloperID)); var defaultSupervisor = !SessionUserManager.IsUserHR() ? presenter.Supervisors.FirstOrDefault(s => s.DeveloperID == SessionData.Instance.UserInfo.Developer.DeveloperID) : null; if (defaultSupervisor != null) { presenter.SelectedSupervisors.Add(defaultSupervisor); presenter.SelectedSupervisorIds = SessionData.Instance.UserInfo.Developer.DeveloperID.ToString(CultureInfo.CurrentCulture); } if (string.IsNullOrWhiteSpace(projectId)) { presenter.AssignSelectedProjects(presenter.MasterProjects); presenter.SelectedProjectIds = string.Join(",", presenter.SelectedProjects.Select(s => s.ProjectID).ToList()); } else { presenter.AssignSelectedProjects(presenter.MasterProjects.Where(p => p.ProjectID == Convert.ToInt32(projectId, CultureInfo.CurrentCulture)).ToList()); presenter.SelectedProjectIds = projectId; } presenter.FromDate = DateTimeHelper.RetrieveCurrentDate(); return this.View(presenter); }