public static ProjectOverviewDTO ConvertToProjectOverview(Project project) { //get logged in user var loggedUser = (User)HttpContext.Current.Session["User"]; //converts model project to DTO project List<TaskDTO> taskDtos = new List<TaskDTO>(); ProjectOverviewDTO projectDto = new ProjectOverviewDTO(); projectDto.Id = project.Id; projectDto.Title = project.Title; projectDto.Description = project.Description; projectDto.DueDate = project.DueDate; projectDto.isAdmin = project.ProjectUsers.Where(x => x.UserId == loggedUser.Id && x.ProjectId == project.Id).FirstOrDefault().isAdmin; foreach (var task in project.Tasks) { //convert model task to DTO task var converted = ConvertToTaskDTO(task); taskDtos.Add(converted); } List<UserAssignedDTO> assignedUsers = new List<UserAssignedDTO>(); List<User> users = project.ProjectUsers.Where(x => x.ProjectId == project.Id).ToList().Select(x => x.User).ToList(); foreach (var user in users) { //convert model user to assigned user dto var converted = ConvertToAssignedUserDTO(user); assignedUsers.Add(converted); } //add converted users and tasks to project dto projectDto.Users = assignedUsers; projectDto.Tasks = taskDtos; return projectDto; }
public static Project ConvertToProject(CreateProjectDTO dto) { Project project = new Project(); project.Title = dto.Title; project.Description = dto.Description; project.DueDate = dto.DueDate; project.DateCreated = DateTime.Now; return project; }