// Workshop details: name, project, employee and list of attendees with // professional development hours. public ActionResult Details(int id = 0, int p = 1, int ps = 50) { var pageNumber = PagingHelpers.ValidatePageNumber(p); var pageSize = PagingHelpers.ValidatePageSize(ps); if (id == 0) { return(RedirectToAction(nameof(Index), new { p = pageNumber, ps = pageSize })); } // Store page number and size for return to list of workshops ViewData["PageNumber"] = pageNumber; ViewData["PageSize"] = pageSize; // Get the workshop and the employee/contact and project var workshopViewModel = _workshopService.Get(id); workshopViewModel.Employee = _employeeService.Get(workshopViewModel.EmployeeId); workshopViewModel.Project = _projectService.Get(workshopViewModel.ProjectId); workshopViewModel.ProviderCode = _providerCodeService.Get(workshopViewModel.ProviderCodeId); // Get sign-out sheet Id's workshopViewModel.SignOutSheets = _signOutSheetUploadService.GetIdsByWorkshop(id); // Get all attendees with professional development hours workshopViewModel.WorkshopAttendeeHours = _workshopService.GetWorkshopAttendeeHours(id); return(View(workshopViewModel)); }