public TeamProjectAC GetTeamProjectById(int?projectId) { var team = _teamDataRepository.Fetch(x => x.ProjectId == projectId, "Employee,TeamLeader").ToList(); if (team.Count == 0) { TeamProjectAC teamProjectNull = null; return(teamProjectNull); } TeamProjectAC teamProject = new TeamProjectAC(); teamProject.ListOfEmployee = new List <EmployeeViewModel>(); foreach (var employee in team) { teamProject.ProjectName = employee.Project.ProjectName; teamProject.IsProjectArchived = employee.Project.IsProjectArchived; teamProject.Id = employee.Id; teamProject.TeamLeader = new EmployeeViewModel { Id = employee.TeamLeader.Id, Name = employee.TeamLeader.Name, Email = employee.TeamLeader.Email, DateOfJoining = employee.TeamLeader.DateOfJoining }; teamProject.ProjectId = employee.ProjectId; teamProject.ListOfEmployee.Add(new EmployeeViewModel { Id = employee.Employee.Id, Name = employee.Employee.Name, Email = employee.Employee.Email, DateOfJoining = employee.Employee.DateOfJoining }); } return(teamProject); }
public IEnumerable <TeamProjectAC> GetAllTeamProjects() { List <Project> projectList = _projectDataRepository.List().ToList(); var teamList = _teamDataRepository.List().GroupBy(x => x.ProjectId).ToList(); List <TeamProjectAC> teamProjectList = new List <TeamProjectAC>(); foreach (var team in teamList) { TeamProjectAC teamProject = new TeamProjectAC(); teamProject.ListOfEmployee = new List <EmployeeViewModel>(); foreach (var check in team) { teamProject.ProjectName = check.Project.ProjectName; teamProject.IsProjectArchived = check.Project.IsProjectArchived; teamProject.Id = check.Id; teamProject.TeamLeader = new EmployeeViewModel { Id = check.TeamLeader.Id, Name = check.TeamLeader.Name, Email = check.TeamLeader.Email, DateOfJoining = check.TeamLeader.DateOfJoining }; teamProject.ProjectId = check.ProjectId; teamProject.ListOfEmployee.Add(new EmployeeViewModel { Id = check.Employee.Id, Name = check.Employee.Name, Email = check.Employee.Email, DateOfJoining = check.Employee.DateOfJoining }); } teamProjectList.Add(teamProject); } return(teamProjectList); }
public void PostProjectDetails() { var login = new EmployeeViewModel() { Email = "*****@*****.**", Password = "******" }; var loginJson = JsonConvert.SerializeObject(login); var response = client.PostAsync("Account/Login", new StringContent(loginJson, Encoding.UTF8, "application/json")).Result; var teamProject = new TeamProjectAC(); teamProject.ProjectName = "BCDEF"; teamProject.ListOfEmployee = new List <EmployeeViewModel>(); teamProject.ListOfEmployee.Add(new EmployeeViewModel { Id = "08bcaaa3-f780-4117-9c53-f2c1995b60ff" }); teamProject.ListOfEmployee.Add(new EmployeeViewModel { Id = "08bcaaa3-f780-4117-9c53-f2c1995b60ff" }); teamProject.TeamLeader.Id = "7bcdff58-1fa3-4b29-b1b4-a381440cd737"; var teamProjectJson = JsonConvert.SerializeObject(teamProject); response = client.PostAsync("api/Project", new StringContent(teamProjectJson, Encoding.UTF8, "application/json")).Result; var responseContent = response.Content.ReadAsStringAsync().Result; var team = JsonConvert.DeserializeObject <TeamProjectAC>(responseContent); Assert.AreEqual(2, team.ListOfEmployee.Count); }
public IHttpActionResult ArchiveTeamProject(TeamProjectAC teamProject) { try { _projectRepository.ArchiveTeamProject(teamProject.ProjectId); return(Ok()); } catch (Exception) { return(BadRequest()); } }
public IHttpActionResult UpdateTeamProject(TeamProjectAC teamProject) { try { if (ModelState.IsValid) { _projectRepository.UpdateTeamProject(teamProject); return(Ok()); } return(BadRequest()); } catch (Exception) { return(BadRequest()); } }
public void UpdateTeamProject(TeamProjectAC teamProject) { var team = _teamDataRepository.Fetch(x => x.ProjectId == teamProject.ProjectId); if (team.Count() > 0) { var teamList = team.ToList(); teamList.Reverse(); foreach (var teams in teamList) { _teamDataRepository.Delete(teams.Id); } _projectDataRepository.Delete(teamProject.ProjectId); InsertTeamProject(teamProject); } }
public IHttpActionResult GetTeamProjectDetailsById(int?id) { try { TeamProjectAC team = _projectRepository.GetTeamProjectById(id); if (team == null) { return(NotFound()); } return(Ok(team)); } catch (Exception) { return(BadRequest()); } }
public void InsertTeamProject(TeamProjectAC teamProject) { Team team = new Team(); Project project = new Project(); project.ProjectName = teamProject.ProjectName; project.IsProjectArchived = false; project.CreatedOn = DateTime.Now; _projectDataRepository.Insert(project); team.ProjectId = project.Id; team.TeamLeaderId = teamProject.TeamLeader.Id; team.CreatedOn = DateTime.Now; foreach (var teams in teamProject.ListOfEmployee) { team.EmployeeId = teams.Id; _teamDataRepository.Insert(team); } }