public IActionResult TeamProfile(string teamUrl) { var teamProfileUrl = _db.TeamProfileUrls.FirstOrDefault(tpu => tpu.Url == teamUrl); var team = _db.Teams.FirstOrDefault(t => t.Id == teamProfileUrl.TeamId); if (team == null) { return(View()); } var userTeams = _db.UserTeams.Where(ut => ut.TeamId == team.Id); var teamMembers = new List <QueueItUserWithRole>(); var queues = _db.Queues.Where(q => q.TeamId == team.Id).ToList(); foreach (var userTeam in userTeams) { var teamMember = new QueueItUserWithRole { IsAdmin = userTeam.IsAdmin, User = _userDb.Users.FirstOrDefault(u => u.Id == userTeam.UserId) }; teamMembers.Add(teamMember); } var teamProfileViewModel = new TeamProfileViewModel { TeamName = team.Name, TeamDescription = team.Description, TeamCreatorId = team.CreatorId, TeamMembers = teamMembers, Queues = queues, }; return(View(teamProfileViewModel)); }
public ActionResult ViewTeamProfile(string id) { var team = _teamService.GetById(id); var employeesDTOs = _employeeService.GetEmployeesByTeamId(team.TeamID); var teamLead = _employeeService.GetUserById(team.TeamLeadID); var employees = Mapper.MapCollection <EmployeeDTO, EmployeeViewModel>(employeesDTOs.ToArray()); var result = new TeamProfileViewModel { TeamID = team.TeamID, TeamName = team.TeamName, TeamLeadName = teamLead.Name + " " + teamLead.Surname, TeamLeadID = team.TeamLeadID, Status = teamLead.Status, AmountOfEmployees = team.AmountOfEmployees, Employees = employees }; return(View(result)); }