public async Task <UserProject> AddAsync(UserProjectPostDto entity) { UserProjectPostDtoValidator validator = new UserProjectPostDtoValidator(); ValidationResult results = validator.Validate(entity); if (!results.IsValid) { throw new ValidationException("UserProjectPostDTO", string.Join(". ", results.Errors)); } var userExists = await userService.GetByIdAsync(entity.UserID); if (userExists == null) { throw new BadRequestException("User not found."); } var projectExists = await projectService.GetByIdAsync(entity.ProjectID); if (projectExists == null) { throw new BadRequestException("Project not found."); } var projectRoleExists = await projectRoleService.GetByIdAsync(entity.ProjectRoleID); if (projectRoleExists == null) { throw new BadRequestException("Project role not found."); } return(await userProjectRepository.AddAsync(mapper.Map <UserProject>(entity))); }
public async Task <IActionResult> GetProjectRoleById(Guid id) { var projectRole = await projectRoleService.GetByIdAsync(id); if (projectRole == null) { return(NotFound()); } return(Ok(mapper.Map <ProjectRoleResponseDto>(projectRole))); }